Метод CXAPOBase::P rocessThru (xapobase.h)
Вызывается реализацией IXAPO::P rocess , когда XAPO отключен для обработки через.
Синтаксис
void ProcessThru(
const void *pInputBuffer,
FLOAT32 *pOutputBuffer,
UINT32 FrameCount,
UINT32 InputChannelCount,
UINT32 OutputChannelCount,
BOOL MixWithOutput
);
Параметры
pInputBuffer
Указатель на буфер, содержащий входные звуковые данные.
pOutputBuffer
Указатель на буфер, который будет содержать обработанные звуковые данные.
FrameCount
Количество кадров звуковых данных для обработки, где кадр представляет собой блок выборок, по одному на канал звуковых данных.
InputChannelCount
Количество каналов во входном буфере данных.
OutputChannelCount
Количество каналов в буфере выходных данных.
MixWithOutput
Значение TRUE используется для смешивания с буфером назначения, значение FALSE для перезаписи конечного буфера.
Возвращаемое значение
None
Remarks
ProcessThru копирует или смешивает данные из источника в место назначения, внося как можно меньше изменений в звуковые данные. Тем не менее , ProcessThru поддерживает канал upmix/downmix и использует для этого ту же таблицу матричных коэффициентов, которая используется в Windows Vista.
Эта функция может вызываться, если:
- XAPO заблокирован и отключен.
- Число исходных кадров равно количеству конечных кадров.
- Формат выходных данных FLOAT32.
- формат ввода: INT8, INT16, INT20 (содержится в 24 или 32 бит), INT24 (содержится в 24 или 32 бита), INT32 или FLOAT32.
При написании метода ProcessThru важно отметить, что аудиоданные XAudio2 чередуются, данные из каждого канала находятся рядом для определенного номера выборки. Например, если в исходном голосе XAudio2 воспроизводится волна из 4 каналов, звуковые данные будут образцом канала 0, образцом канала 1, образцом канала 2, образцом канала 3, а затем следующей выборкой каналов 0, 1, 2, 3 и т. д.
Требования к платформе
Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); Пакет SDK для DirectX (XAudio 2.7)Требования
Целевая платформа | Windows |
Header | xapobase.h |
Библиотека | XAPOBase.lib |