XAudio2 移行ガイド
既存の XAudio コードは、以下の説明に従って変更を加えることで、XAudio2 を使用するように簡単に更新できます。
ヘッダー
XAudio のヘッダー | XAudio2 のヘッダー |
---|---|
XAudio.h | XAudio2.h |
ライブラリ
XAudio のライブラリ | XAudio2 のライブラリ |
---|---|
XAudio.lib | XAudio2.lib。さらに XAudio2.lib は xmcore.lib に依存しています。 |
XAudiod.lib | XAudiod2.lib。さらに XAudiod2.lib は xmcored.lib に依存しています。 |
インターフェイス
XAudio のインターフェイス | XAudio2 のインターフェイス |
---|---|
IXAudioVoice | IXAudio2Voice |
IXAudioSourceVoice | IXAudio2SourceVoice |
IXAudioSubmixVoice | IXAudio2SubmixVoice |
IXAudioMasteringVoice | IXAudio2MasteringVoice |
メソッド
XAudio のメソッド | XAudio2 のメソッド |
---|---|
IXAudioVoice::AddRef | 相当するメソッドはありません。 |
IXAudioVoice::Release | 相当するメソッドはありません。 |
IXAudioVoice::GetEffectState | IXAudio2Voice::GetEffectState |
IXAudioVoice::SetEffectState | IXAudio2Voice::DisableEffect または IXAudio2Voice::EnableEffect |
IXAudioVoice::GetEffectParam | IXAudio2Voice::GetEffectParameters |
IXAudioVoice::SetEffectParam | IXAudio2Voice::SetEffectParameters |
IXAudioVoice::SetVoiceOutput | IXAudio2Voice::SetOutputVoices |
IXAudioVoice::SetVoiceOutputVolume | IXAudio2Voice::SetChannelVolumes (すべての送信に影響を与えるチャンネル レベル) または IXAudio2Voice::SetOutputMatrix (送信ごとのレベルの行列)。 |
IXAudioVoice::GetVoiceContext | クライアントは、渡したボイス コンテキストをキャッシュすると想定されています。 |
IXAudioVoice::GetVoiceState | IXAudio2SourceVoice::GetState |
IXAudioVoice::GetVoiceType | クライアントは、作成されたボイス タイプをキャッシュすると想定されています。 |
IXAudioVoice::GetVoiceFormat | クライアントは、ボイスを作成するために使用されたフォーマットをキャッシュすると想定されています。 |
IXAudioSourceVoice::SetVoiceFormat | ボイスが作成された後にフォーマットを変更することはできません。 |
IXAudioSourceVoice::SubmitPacket | IXAudio2SourceVoice::SubmitSourceBuffer |
IXAudioSourceVoice::SubmitSourceBuffer | IXAudio2SourceVoice::SubmitSourceBuffer |
IXAudioSourceVoice::Start | IXAudio2SourceVoice::Start |
IXAudioSourceVoice::Stop | IXAudio2SourceVoice::Stop |
IXAudioSourceVoice::FlushPackets | XAUDIO2_FLUSH_BUFFERS フラグ付きの IXAudio2SourceVoice::Stop |
IXAudioSourceVoice::FlushSourceBuffers | XAUDIO2_FLUSH_BUFFERS フラグ付きの IXAudio2SourceVoice::Stop |
IXAudioSourceVoice::Discontinuity | オーディオ ストリーム内の最後のバッファーを XAUDIO2_END_OF_STREAM フラグでタグ付けします。 |
IXAudioSourceVoice::GetPacketPosition | IXAudio2SourceVoice::GetState |
IXAudioSourceVoice::SetPacketPosition | サポートされていません。希望の再生開始位置を指す新しいパケットを代わりに送信します。 |
IXAudioSourceVoice::GetStreamPosition | IXAudio2SourceVoice::GetState |
IXAudioSourceVoice::GetPacketLoopCount | 相当するメソッドはありません。 |
IXAudioSourceVoice::SetPacketLoopCount | ループ回数はパケットを送信する際にのみ設定できます。 |
IXAudioSourceVoice::GetPacketContext | クライアントは、使用したパケット コンテキストをキャッシュすると想定されています。 |
IXAudioSourceVoice::GetVolume | IXAudio2Voice::GetVolume |
IXAudioSourceVoice::SetVolume | IXAudio2Voice::SetVolume |
IXAudioSourceVoice::GetPitch | IXAudio2SourceVoice::SetFrequencyRatio |
IXAudioSourceVoice::SetPitch | IXAudio2SourceVoice::GetFrequencyRatio |
IXAudioSourceVoice::GetFrequencyScale | ピッチを表現するための単位が変更されたため、このメソッドは不要になりました。 |
IXAudioSourceVoice::SetFrequencyScale | ピッチを表現するための単位が変更されたため、このメソッドは不要になりました。 |
関数
XAudio の関数 | XAudio2 の関数 |
---|---|
XAudioInitialize | XAudio2Create |
XAudioShutdown | IXAudio2::Release |
XAudioLock | 相当するメソッドはありません。 |
XAudioCreateSourceVoice | IXAudio2::CreateSourceVoice |
XAudioCreateSubmixVoice | IXAudio2::CreateSubmixVoice |
XAudioGetMasteringVoice | IXAudio2::CreateMasteringVoice |
XAudioRegisterEngineCallback | XAudio2 は、コールバック ポインターを必要に応じて随時変更することはサポートしていません。コールバックは、ボイスの作成時に pCallback 引数を使用して指定します。 |
XAudioUnregisterEngineCallback | XAudio2 は、コールバック ポインターを必要に応じて随時変更することはサポートしていません。コールバックは、ボイスの作成時に pCallback 引数を使用して指定します。 |
XAudioRegisterEffects | XAudio2 では、使用可能なエフェクトの静的テーブルは必要ありません。クライアントは、使用する任意のエフェクトを作成して、これらへのポインターを XAudio2 に渡します。 |
XAudioUnregisterEffects | XAudio2 では、使用可能なエフェクトの静的テーブルは必要ありません。クライアントは、使用する任意のエフェクトを作成して、これらへのポインターを XAudio2 に渡します。 |
XAudioSynchStart | OperationSet 引数を持つ複数の XAudio2 メソッドをグループ化するには、同じセット番号を指定してから IXAudio2::CommitChanges を呼び出します。詳細については、「XAudio2 操作セット」を参照してください。 |
XAudioQueryPerformance | IXAudio2::GetPerformanceData |
XAudioQueryPIXCounters | IXAudio2::GetPerformanceData |
XAudioGetSpeakerConfig | IXAudio2::GetDeviceDetails が最も近い機能を提供します。Windows では、複数のオーディオ デバイスが存在する可能性があり、これらのデバイスの出力フォーマットは、スピーカー構成以外の点についても異なる可能性があるため、この関数は、デバイスごとの詳細な出力フォーマット データを返します。 |
XAudioDecibelsToVolume | XAudio2DecibelsToAmplitudeRatio |
XAudioMillibelsToVolume | XAudio2DecibelsToAmplitudeRatio |
XAudioVolumeToDecibels | XAudio2AmplitudeRatioToDecibels |
XAudioVolumeToMillibels | XAudio2AmplitudeRatioToDecibels |
XAudioPitchToSampleRate | XAudio2SemitonesToFrequencyRatio |
XAudioSampleRateToPitch | XAudio2FrequencyRatioToSemitones |
XAudioDumpMemoryUsage | 相当するメソッドはありません。XMem ライブラリは、XAudio2 のメモリー使用に関する最高レベルの統計情報を提供します。 |
XAudioGetXMAPacketPosition | xma2defs.h 内の GetXmaDecodePositionForSample。 |
XAudioSetDebugBreakLevel | Windows 上のレジストリを使用して制御されるか、Windows または Xbox 上の実行可能ファイルのディレクトリ内の xaudio2.ini ファイルを使用して制御されます。 |
XAudioSetDebugFlags | Windows 上のレジストリを使用して制御されるか、Windows または Xbox 上の実行可能ファイルのディレクトリ内の xaudio2.ini ファイルを使用して制御されます。 |
XAudioSetDebugPrintLevel | Windows 上のレジストリを使用して制御されるか、Windows または Xbox 上の実行可能ファイルのディレクトリ内の xaudio2.ini ファイルを使用して制御されます。 |
XAudioCreateEvent | 相当するメソッドはありません。 |
XAudioFreeEvent | 相当するメソッドはありません。 |
XAudioSetEvent | 相当するメソッドはありません。 |
XAudioResetEvent | 相当するメソッドはありません。 |
XAudioPulseEvent | 相当するメソッドはありません。 |
XAudioWaitForSingleObject | 相当するメソッドはありません。 |
XAudioWaitForMultipleObjects | 相当するメソッドはありません。 |
構造体
XAudio の構造体 | XAudio2 の構造体 |
---|---|
PCMWAVEFORMAT | WAVEFORMATEX |
WAVEFORMAT | WAVEFORMATEX |
XAudio の廃止によって影響を受ける API
次の API は XAudio の廃止によって影響を受けるため、XAudio2 に移行するためには、これらの API を一部変更する必要があります。
API | 移行ガイド |
---|---|
XACT | XACT3 への移行ガイド |
Xbox 360 | ||||||||
---|---|---|---|---|---|---|---|---|
|
関連トピック
- XAudio2 のリファレンス
XAudio2 リファレンス セクション内の各トピックへのリンクが記載されています。