Поделиться через


Метод 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.

Эта функция может вызываться, если:

  1. XAPO заблокирован и отключен.
  2. Число исходных кадров равно количеству конечных кадров.
  3. Формат выходных данных FLOAT32.
  4. формат ввода: 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

См. также раздел

CXAPOBase

IXAPO