Практическое руководство. Создание базового графа обработки звука
Минимальное требование для включения XAudio2 для воспроизведения звуковых данных — это граф обработки звука, созданный на основе одного эталонного голоса и одного исходного голоса.
Создание базового графа обработки звука
Инициализируйте движок XAudio2, выполнив шаги, описанные в разделе Как инициализировать XAudio2.
Заполните структуру WAVEFORMATEX и XAUDIO2_BUFFER, выполнив действия, описанные в разделе "Как загрузить аудиофайлы данных в XAudio2".
Создайте исходный голос с помощью функции CreateSourceVoice.
При указании NULL для аргумента pSendList CreateSourceVoiceвыходные данные исходящего сигнала переходят к главному сигналу, созданному на шаге 1.
IXAudio2SourceVoice* pSourceVoice; if( FAILED(hr = pXAudio2->CreateSourceVoice( &pSourceVoice, (WAVEFORMATEX*)&wfx, 0, XAUDIO2_DEFAULT_FREQ_RATIO, NULL, NULL, NULL ) ) ) return hr;
После завершения этого шага существует простой звуковой граф, состоящий из исходного голоса, эталонного голоса и звукового устройства. Остальные действия, описанные в этом руководстве, показывают, как начать передачу звуковых данных через граф.
Простой звуковой граф
Используйте функцию SubmitSourceBuffer для отправки XAUDIO2_BUFFER в исходный голос.
if( FAILED(hr = pSourceVoice->SubmitSourceBuffer( &buffer ) ) ) return hr;
Используйте функцию запускадля запуска исходного голоса.
if ( FAILED(hr = pSourceVoice->Start( 0, XAUDIO2_COMMIT_NOW ) ) ) return hr;
Связанные разделы
-
Руководство по программированию XAudio2