Руководство: создание базовой схемы обработки звука
Минимальное требование, позволяющее 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;
Используйте функцию Start для запуска исходного голоса.
if ( FAILED(hr = pSourceVoice->Start( 0, XAUDIO2_COMMIT_NOW ) ) ) return hr;
Связанные темы