Language

AudioTrack クラス

定義

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

[Android.Runtime.Register("android/media/AudioTrack", DoNotGenerateAcw=true)]
public class AudioTrack : Java.Lang.Object, Android.Media.IAudioRouting, Android.Media.IVolumeAutomation, IDisposable
[<Android.Runtime.Register("android/media/AudioTrack", DoNotGenerateAcw=true)>]
type AudioTrack = class
    inherit Object
    interface IAudioRouting
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface IVolumeAutomation
継承
AudioTrack
属性
実装

注釈

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。 PCM オーディオ バッファーをオーディオ シンクにストリーミングして再生できるようにします。 これは、 #write(byte[], int, int)、 #write(short[], int, int)、および #write(float[], int, int, int) のいずれかのメソッドを使用して、AudioTrack オブジェクトにデータを "プッシュ" することによって実現されます。

AudioTrack インスタンスは、静的モードと streaming.< モードの 2 つのモードで動作できます。br> ストリーミング モードでは、アプリケーションは、 write() のいずれかの方法を使用して、データの連続ストリームを AudioTrack に書き込みます。 これらはブロックされ、データが Java レイヤーからネイティブ レイヤーに転送され、再生のためにキューに入れられたときに返されます。 ストリーミング モードは、たとえば次のオーディオ データのブロックを再生する場合に最も便利です。

<ul><li>再生する音の継続時間のためにメモリに収まるように大きく、</li><li>オーディオデータの特性(高サンプリングレート、サンプルあたりのビット数...)の特性のためにメモリに収まるように大きくなっています...)</li><li>以前にキューに登録されたオーディオの再生中に取得または生成されます。</li></ul>

メモリに収まり、可能な限り短い待機時間で再生する必要がある短いサウンドを処理する場合は、静的モードを選択する必要があります。 したがって、静的モードは、頻繁に再生される UI とゲーム サウンドに適しており、オーバーヘッドはできるだけ小さくなります。

作成すると、AudioTrack オブジェクトは、関連付けられているオーディオ バッファーを初期化します。 このバッファーのサイズは、構築中に指定され、Data が不足するまでの AudioTrack の再生時間を決定します。<br> 静的モードを使用する AudioTrack の場合、このサイズは、そこから再生できるサウンドの最大サイズです。<br> ストリーミング モードの場合、データは合計バッファー サイズ以下のサイズのチャンク単位でオーディオ シンクに書き込まれます。

AudioTrack は最終的なものではなく、サブクラスを許可しますが、そのような使用はお勧めしません。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

コンストラクター

名前 説明
AudioTrack(AudioAttributes, AudioFormat, Int32, AudioTrackMode, Int32)

AudioAttributesとAudioFormatを持つクラス コンストラクター。

AudioTrack(IntPtr, JniHandleOwnership)

JNI オブジェクトのマネージド表現を作成するときに使用されるコンストラクター。ランタイムによって呼び出されます。

AudioTrack(Stream, Int32, ChannelConfiguration, Encoding, Int32, AudioTrackMode, Int32)
古い.

オーディオ セッションを含むクラス コンストラクター。

AudioTrack(Stream, Int32, ChannelConfiguration, Encoding, Int32, AudioTrackMode)
古い.

クラス コンストラクター。

AudioTrack(Stream, Int32, ChannelOut, Encoding, Int32, AudioTrackMode, Int32)

オーディオ セッションを含むクラス コンストラクター。

AudioTrack(Stream, Int32, ChannelOut, Encoding, Int32, AudioTrackMode)

クラス コンストラクター。

フィールド

名前 説明
DualMonoModeLl
古い.

このモードは、ステレオ ストリームに、右側のオーディオ チャネルにレプリケートされた左側のオーディオ チャネルを表示する必要があることを示します。

DualMonoModeLr
古い.

このモードは、ステレオ ストリームに左右のオーディオ チャネルをブレンドし、両方のチャネルに配信する必要があることを示します。

DualMonoModeOff
古い.

このモードでは、デュアル Mono プレゼンテーション効果が無効になります。

DualMonoModeRr
古い.

このモードは、ステレオ ストリームに、左側のオーディオ チャネルにレプリケートされた適切なオーディオ チャネルを表示する必要があることを示します。

EncapsulationMetadataTypeDvbAdDescriptor
古い.

DVB AD 記述子のカプセル化メタデータ型。

EncapsulationMetadataTypeFrameworkTuner
古い.

フレームワーク のチューナ情報のカプセル化メタデータの種類。

EncapsulationMetadataTypeSupplementaryAudioPlacement
古い.

補足オーディオを配置するためのカプセル化メタデータ型。

EncapsulationModeElementaryStream
古い.

このモードは、基本ストリーム ペイロードを使用したメタデータカプセル化を示します。

EncapsulationModeNone
古い.

このモードは、メタデータカプセル化がないことを示します。これは、 AudioTrack経由でオーディオ データを送信するための既定のモードです。

Error
古い.

一般的な操作の失敗を示します。

ErrorBadValue
古い.

無効な値の使用によるエラーを示します。

ErrorDeadObject
古い.

レポートするオブジェクトが無効になり、再作成する必要があることを示すエラー コード。

ErrorInvalidOperation
古い.

メソッドの不適切な使用によるエラーを示します。

FlushFromAccuracyBestEffort
古い.

フレームワークが可能な限り近い (以下ではない) データを要求された位置にフラッシュすることを示す #flushWrittenFramesFromPosition(long, int) の精度モード。

FlushFromAccuracyExact
古い.

AudioTrack を要求された位置からフラッシュする必要があることを示す #flushWrittenFramesFromPosition(long, int) の精度モード。

FlushWrittenFramesSupported
古い.

#flushWrittenFramesFromPosition(long, int)がサポートされていることを示す定数フラグ値。

Success
古い.

成功した操作を示します。

SupplementaryAudioPlacementLeft
古い.

オーディオの補助配置を左に配置します。

SupplementaryAudioPlacementNormal
古い.

補助オーディオの配置は通常です。

SupplementaryAudioPlacementRight
古い.

補助オーディオの配置権限。

プロパティ

名前 説明
AudioAttributes

構成で使用される AudioAttributes を返します。

AudioDescriptionMixLeveldB

dB のオーディオ説明ミックス レベルを返します。

AudioFormat

構成済みのオーディオ データ エンコードを返します。

AudioSessionId

オーディオ セッション ID を返します。

BufferCapacityInFrames

フレーム単位の AudioTrack バッファーの最大サイズを返します。

BufferSizeInFrames

アプリケーションが書き込む AudioTrack バッファーの有効なサイズを返します。

ChannelConfiguration

構成されたチャネル位置マスクを返します。

ChannelCount

構成されたチャネル数を返します。

Class

この Objectのランタイム クラスを返します。

(継承元 Object)
CodecProvenance

構成時に指定された AudioTrack のコーデックの実績を返します。

DualMonoMode

デュアル モノラル モードのプレゼンテーション設定を返します。

Format

構成された AudioTrack 形式を返します。

Handle

基になる Android インスタンスへのハンドル。

(継承元 Object)
IsOffloadedPlayback

Builder#setOffloadedPlayback(boolean)が true に設定された状態でトラックがビルドされたかどうかを返します。

JniIdentityHashCode

相互運用ランタイムによってこのJava ピアに割り当てられた ID ハッシュ コードを取得します。

(継承元 Object)
JniManagedPeerState

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

(継承元 JavaObject)
JniPeerMembers

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

LogSessionId

LogSessionId を返します。 または、 LogSessionId インスタンスをメトリック収集のためにこの AudioTrack に設定します。

MaxVolume

最大ゲイン値 (1 以上) を返します。

Metrics

現在の AudioTrack インスタンスに関するメトリック データを返します。

MinVolume

最小ゲイン値 (定数 0) を返します。

NativeFrameCount
古い.

ネイティブ AudioTrack バッファーのフレーム数を返します。

NotificationMarkerPosition

フレームで表されるマーカー位置を返します。

OffloadDelay

以前に #setOffloadDelayPadding(int, int)で設定したオフロード トラックのデコーダー遅延をフレームで表し、変更されなかった場合は 0 を返します。

OffloadPadding

以前に #setOffloadDelayPadding(int, int)で設定したオフロード トラックのデコーダーパディングをフレームで表し、変更されていない場合は 0 を返します。

PeerReference

このJava ピアの JNI オブジェクト参照を取得します。

(継承元 Object)
PerformanceMode

AudioTrackの現在のパフォーマンス モードを返します。

PlaybackHeadPosition

フレームで表された再生ヘッド位置を返します。

PlaybackParams

現在の再生パラメーターを返します。 または、再生パラメーターを設定します。

PlaybackRate

現在の再生サンプル レートを Hz 単位で返します。

PlayState

AudioTrack インスタンスの再生状態を返します。

PositionNotificationPeriod

フレームで表された通知更新期間を返します。

PreferredDevice

#setPreferredDeviceで指定された選択した出力を返します。

RoutedDevice

この AudioTrack の現在のルーティングを識別する AudioDeviceInfo を返します。

RoutedDevices

この AudioTrack の現在のルーティングを識別する AudioDeviceInfo のリストを返します。

SampleRate

構成されたオーディオ ソースのサンプル レート (Hz) を返します。

StartThresholdInFrames

AudioTrackのストリーミング開始しきい値を返します。

State

AudioTrack インスタンスの状態を返します。

StreamType

この AudioTrack のボリューム ストリームの種類を返します。

ThresholdClass

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

ThresholdType

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

UnderrunCount

AudioTrack が作成されてからのアプリケーション レベルの書き込みバッファー内のアンダーランの発生回数を返します。

WrittenFramesCount

#MODE_STREAM AudioTrackに書き込まれたオーディオ フレームの数を返します。

メソッド

名前 説明
AddOnCodecFormatChangedListener(IExecutor, AudioTrack+IOnCodecFormatChangedListener)

このOnCodecFormatChangedListenerでコーデック形式の変更イベントの通知を受信するAudioTrackを追加します。

AddOnRoutingChangedListener(AudioTrack+IOnRoutingChangedListener, Handler)
古い.

この AudioTrack でルーティング変更の通知を受け取る AudioRouting.OnRoutingChangedListener を追加します。

AddOnRoutingChangedListener(IAudioRoutingOnRoutingChangedListener, Handler)

この AudioTrack でルーティング変更の通知を受け取る AudioRouting.OnRoutingChangedListener を追加します。

AttachAuxEffect(Int32)

オーディオ トラックに補助効果をアタッチします。

Clone()

このオブジェクトのコピーを作成して返します。

(継承元 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

(継承元 JavaObject)
CreateVolumeShaper(VolumeShaper+Configuration)

プレーヤーまたはトラックのボリューム エンベロープを変更するために使用できる VolumeShaper オブジェクトを返します。

Dispose()

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
Dispose(Boolean)

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
DisposeUnlessReferenced()

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

(継承元 JavaObject)
Equals(Object)

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

(継承元 JavaObject)
Equals(Object)

他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。

(継承元 Object)
Flush()

再生のために現在キューに入っているオーディオ データをフラッシュします。

FlushWrittenFramesFromPosition(Int64, Int32)

指定された位置からすべてのデータをフラッシュします。

GetFlushWrittenFramesFromPositionSupport(AudioFormat, AudioAttributes)

指定されたAudioFormatとAudioAttributesで作成されるオフロード モードでの AudioTrack の#flushWrittenFramesFromPosition(long, int)の現在の機能サポートを表すビット マスクを返します。

GetHashCode()

オブジェクトのハッシュ コード値を返します。

(継承元 Object)
GetMinBufferSize(Int32, ChannelOut, Encoding)

#MODE_STREAM モードで AudioTrack オブジェクトを作成するために必要な最小バッファー サイズの見積もりを返します。

GetNativeOutputSampleRate(Stream)

指定したストリームの種類の出力サンプル レート (Hz) を返します。

GetTimestamp(AudioTimestamp)

必要に応じてタイムスタンプをポーリングします。

IsDirectPlaybackSupported(AudioFormat, AudioAttributes)

指定された属性を持つオーディオ形式の直接再生が現在システムでサポートされているかどうかを返します。

JavaFinalize()
古い.

オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。

(継承元 Object)
Notify()

このオブジェクトのモニターで待機している 1 つのスレッドを起動します。

(継承元 Object)
NotifyAll()

このオブジェクトのモニターで待機しているすべてのスレッドを起動します。

(継承元 Object)
Pause()

オーディオ データの再生を一時停止します。

Play()

AudioTrack の再生を開始します。

RegisterStreamEventCallback(IExecutor, AudioTrack+StreamEventCallback)

ストリーム イベントの通知のコールバックを登録します。

Release()

ネイティブ AudioTrack リソースを解放します。

ReloadStaticData()

静的バッファー内の再生ヘッド位置を 0 に設定します。つまり、静的バッファーの開始位置に戻します。

RemoveOnCodecFormatChangedListener(AudioTrack+IOnCodecFormatChangedListener)

コーデック形式の変更イベントを受信するために以前に追加された OnCodecFormatChangedListener を削除します。

RemoveOnRoutingChangedListener(AudioTrack+IOnRoutingChangedListener)
古い.

再ルーティング通知を受信するために以前に追加された AudioRouting.OnRoutingChangedListener を削除します。

RemoveOnRoutingChangedListener(IAudioRoutingOnRoutingChangedListener)

再ルーティング通知を受信するために以前に追加された AudioRouting.OnRoutingChangedListener を削除します。

SetAudioDescriptionMixLeveldB(Single)

オーディオ説明のミックス レベルを dB 単位で設定します。

SetAuxEffectSendLevel(Single)

オーディオ トラックの送信レベルを、付属の補助効果 #attachAuxEffect(int)に設定します。

SetBufferSizeInFrames(Int32)

アプリケーションが書き込む AudioTrack バッファーの有効サイズを制限します。

SetDualMonoMode(Int32)

出力デバイスのデュアル モノラル モードプレゼンテーションを設定します。

SetHandle(IntPtr, JniHandleOwnership)

Handle プロパティを設定します。

(継承元 Object)
SetLoopPoints(Int32, Int32, Int32)

ループ ポイントとループ数を設定します。

SetNotificationMarkerPosition(Int32)

通知マーカーの位置を設定します。

SetOffloadDelayPadding(Int32, Int32)

オフロード モードで再生されている現在の圧縮ストリームの遅延値とパディング値を構成します。

SetOffloadEndOfStream()

このトラックの最後の write() 操作がこのストリームの最後のバッファーを提供したことを宣言します。

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

(継承元 JavaObject)
SetPlaybackHeadPosition(Int32)

静的バッファー内の再生ヘッド位置を設定します。

SetPlaybackPositionUpdateListener(AudioTrack+IOnPlaybackPositionUpdateListener, Handler)

以前に設定したマーカーに達したとき、または定期的な再生ヘッド位置の更新ごとに AudioTrack が通知するリスナーを設定します。

SetPlaybackPositionUpdateListener(AudioTrack+IOnPlaybackPositionUpdateListener)

以前に設定したマーカーに達したとき、または定期的な再生ヘッド位置の更新ごとに AudioTrack が通知するリスナーを設定します。

SetPlaybackRate(Int32)

このトラックの再生サンプル レートを設定します。

SetPositionNotificationPeriod(Int32)

定期的な通知イベントの期間を設定します。

SetPreferredDevice(AudioDeviceInfo)

この AudioTrack からの出力をルーティングするオーディオ デバイス ( AudioDeviceInfo オブジェクト経由) を指定します。

SetPresentation(AudioPresentation)

オーディオ プレゼンテーションを設定します。

SetStartThresholdInFrames(Int32)

AudioTrackのストリーミング開始しきい値を設定します。

SetState(Int32)
古い.

インスタンスの初期化状態を設定します。

SetStereoVolume(Single, Single)
古い.

AudioTrack で指定した左右の出力ゲイン値を設定します。

SetVolume(Single)

このトラックのすべてのチャンネルで、指定された出力ゲイン値を設定します。

Stop()

オーディオ データの再生を停止します。

ToArray<T>()

このJava配列ラッパーからマネージド配列を作成します。

(継承元 Object)
ToString()

オブジェクトの文字列形式を返します。

(継承元 Object)
UnregisterFromRuntime()

相互運用ランタイムからこのJava ピアの登録を解除します。

(継承元 Object)
UnregisterStreamEventCallback(AudioTrack+StreamEventCallback)

以前に #registerStreamEventCallback(Executor, StreamEventCallback)に登録されたストリーム イベントの通知のコールバックの登録を解除します。

Wait()

現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。

(継承元 Object)
Wait(Int64, Int32)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)
Wait(Int64)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)
Write(Byte[], Int32, Int32, WriteMode)

オーディオ データを再生用のオーディオ シンク (ストリーミング モード) に書き込むか、後で再生するためにオーディオ データをコピーします (静的バッファー モード)。

Write(Byte[], Int32, Int32)

オーディオ データを再生用のオーディオ シンク (ストリーミング モード) に書き込むか、後で再生するためにオーディオ データをコピーします (静的バッファー モード)。

Write(ByteBuffer, Int32, WriteMode, Int64)

HW_AV_SYNC トラックのストリーミング モードで再生するために、オーディオ データをオーディオ シンクに書き込みます。

Write(ByteBuffer, Int32, WriteMode)

オーディオ データを再生用のオーディオ シンク (ストリーミング モード) に書き込むか、後で再生するためにオーディオ データをコピーします (静的バッファー モード)。

Write(Int16[], Int32, Int32, WriteMode)

オーディオ データを再生用のオーディオ シンク (ストリーミング モード) に書き込むか、後で再生するためにオーディオ データをコピーします (静的バッファー モード)。

Write(Int16[], Int32, Int32)

オーディオ データを再生用のオーディオ シンク (ストリーミング モード) に書き込むか、後で再生するためにオーディオ データをコピーします (静的バッファー モード)。

Write(Single[], Int32, Int32, WriteMode)

オーディオ データを再生用のオーディオ シンク (ストリーミング モード) に書き込むか、後で再生するためにオーディオ データをコピーします (静的バッファー モード)。

WriteAsync(Byte[], Int32, Int32, WriteMode)

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

WriteAsync(Byte[], Int32, Int32)

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

WriteAsync(ByteBuffer, Int32, WriteMode, Int64)

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

WriteAsync(ByteBuffer, Int32, WriteMode)

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

WriteAsync(Int16[], Int32, Int32, WriteMode)

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

WriteAsync(Int16[], Int32, Int32)

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

WriteAsync(Single[], Int32, Int32, WriteMode)

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

イベント

名前 説明
MarkerReached

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

PeriodicNotification

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

RoutingChanged

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

明示的なインターフェイスの実装

名前 説明
IJavaPeerable.Disposed()

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

(継承元 JavaObject)
IJavaPeerable.Finalized()

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

(継承元 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

(継承元 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

(継承元 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

(継承元 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

(継承元 JavaObject)
IJavaPeerable.UnregisterFromRuntime()

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

インスタンス selfの型の JNI 名を取得します。

JavaAs<TResult>(IJavaPeerable)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

AudioTrack クラスは、Java アプリケーションの単一のオーディオ リソースを管理および再生します。

TryJavaCast<TResult>(IJavaPeerable, TResult)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

適用対象