CXAPOBase::P rocessThru-Methode (xapobase.h)
Wird von einer IXAPO::P rocess-Implementierung aufgerufen, wenn ein XAPO für die Verarbeitung deaktiviert ist.
Syntax
void ProcessThru(
const void *pInputBuffer,
FLOAT32 *pOutputBuffer,
UINT32 FrameCount,
UINT32 InputChannelCount,
UINT32 OutputChannelCount,
BOOL MixWithOutput
);
Parameter
pInputBuffer
Zeiger auf einen Puffer, der die Eingabeaudiodaten enthält.
pOutputBuffer
Zeiger auf einen Puffer, der die verarbeiteten Audiodaten enthält.
FrameCount
Anzahl der Frames der zu verarbeitenden Audiodaten, wobei ein Frame ein Block von Beispielen ist, 1 pro Kanal von Audiodaten.
InputChannelCount
Anzahl der Kanäle im Eingabedatenpuffer.
OutputChannelCount
Anzahl der Kanäle im Ausgabedatenpuffer.
MixWithOutput
TRUE, um mit dem Zielpuffer zu mischen, FALSE, um den Zielpuffer zu überschreiben.
Rückgabewert
Keine
Bemerkungen
ProcessThru kopiert/mischt Daten von der Quelle zum Ziel und ändert so wenig wie möglich an den Audiodaten. ProcessThru kann jedoch upmix/downmix kanalieren und verwendet dazu die gleiche Matrixkoeffiziententabelle, die von Windows Vista verwendet wird.
Diese Funktion kann aufgerufen werden, wenn:
- Das XAPO ist gesperrt und deaktiviert.
- Die Anzahl der Quellframes entspricht der Anzahl der Zielframes.
- Das Ausgabeformat ist FLOAT32.
- Das Eingabeformat ist INT8, INT16, INT20 (in 24 oder 32 Bit enthalten), INT24 (enthalten in 24 oder 32 Bit), INT32 oder FLOAT32.
Beim Schreiben einer ProcessThru-Methode ist es wichtig zu beachten, dass XAudio2-Audiodaten überlappen, daten aus jedem Kanal für eine bestimmte Beispielnummer nebeneinander stehen. Wenn beispielsweise eine 4-Kanal-Welle in eine XAudio2-Quellstimme wiedergegeben wird, sind die Audiodaten ein Beispiel von Kanal 0, ein Beispiel von Kanal 1, ein Beispiel von Kanal 2, ein Beispiel von Kanal 3 und dann das nächste Beispiel der Kanäle 0, 1, 2, 3 usw.
Plattformanforderungen
Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); DirectX SDK (XAudio 2.7)Requirements (Anforderungen)
Zielplattform | Windows |
Kopfzeile | xapobase.h |
Bibliothek | XAPOBase.lib |