XAudio2-Beispielratenkonvertierungen

XAudio2-Stimmen können automatische Konvertierungen der Abtastrate durchführen, wenn sich ihre Eingabe-Abtastrate von der Eingabe-Abtastrate ihrer Ausgabestimmchen unterscheidet.

Für Konvertierungen der Abtastrate gelten die folgenden Regeln:

  • Die VoIP-Abtastrate wurde festgelegt.

    Stimmen können nur die Eingabe-Samplerate verarbeiten, die bei ihrer Erstellung angegeben wurde. Zum Mastern von Stimmen und Submixstimme wird die Eingabe-Samplerate mit dem InputSampleRate-Argument für die Funktionen IXAudio2::CreateMasteringVoice und IXAudio2::CreateSubmixVoice angegeben. Für Quellstimme wird die Eingabe-Samplerate der Stimme durch das pSourceFormat-Argument für die IXAudio2::CreateSourceVoice-Funktion angegeben.

  • Alle Ausgabestimme einer Stimme müssen die gleiche Eingabe-Samplerate aufweisen.

    Stimmen können von ihrer Eingabe-Abtastrate in eine beliebige Ausgabe-Abtastrate konvertieren, aber alle Ausgabestimme der Stimme müssen die gleiche Eingabe-Abtastrate aufweisen. Beispielsweise kann eine Stimme eine beliebige Anzahl von Stimmen mit einer Eingabe-Abtastrate von 22 kHz ausgeben. Wenn dieselbe Stimme jedoch mehrere Ausgabestimmen hatte, von denen jede eine unterschiedliche Eingabe-Samplerate hatte, wäre das Audiodiagramm ungültig.

  • Die Verarbeitung der Abtastratekonvertierung erfolgt nur bei Bedarf.

    Beim Konvertieren von Audiodaten in eine andere Abtastrate entsteht mehr Verarbeitungsaufwand, der vermieden werden sollte. Wenn die Eingabe-Abtastrate einer Stimme mit der Eingabe-Samplerate ihrer Ausgabestimme übereinstimmt, wird diese Konvertierung nicht durchgeführt, und die Verarbeitungszeit wird verkürzt.

  • Die Ausgabe-Abtastrate kann über die Lebensdauer einer Stimme variieren.

    Die Ausgabe-Abtastrate einer Stimme ist nicht festgelegt. Solange alle ausgabestimmten Stimmen die gleiche Eingabe-Abtastrate aufweisen, ist das Audiodiagramm gültig. Wenn eine Stimme so geändert wird, dass sie in neue Stimmen mit einer anderen Eingabe-Abtastrate ausgegeben wird, wird die Stimme in die Eingabe-Samplerate der neuen Stimmen konvertiert.

Es gibt einige Szenarien, in denen es erforderlich ist, eine Submixstimme hinzuzufügen, um eine Konvertierung der Abtastrate zwischen Stimmen durchzuführen. Wenn eine Stimme in Stimmen mit verschiedenen Eingabe-Sampleraten ausgegeben werden muss, kann nur eine der Stimmen eine direkte Ausgabe der ursprünglichen Stimme sein. Da alle Ausgabestimme einer Stimme die gleiche Eingabe-Samplerate aufweisen müssen, werden die anderen Stimmen indirekt ausgegeben. Es muss eine Submixstimme mit der richtigen Eingabe-Samplerate zwischen der ursprünglichen Stimme und der beabsichtigten Ausgabestimme vorhanden sein.

Betrachten Sie beispielsweise eine Quellstimme mit einer Eingabe-Abtastrate von 22 kHz, die an eine Submixstimme mit einer Eingabe-Abtastrate von 11 kHz und eine Masterstimme mit einer Eingabe-Abtastrate von 44,1 kHz ausgegeben werden muss. Da die beiden Ausgabestimme unterschiedliche Eingabe-Sampleraten aufweisen, müssen Sie weitere Submixstimme zwischen der ursprünglichen Stimme und den beabsichtigten Ausgabestimme einfügen. Um die Genauigkeit der Quellstimme zu erhalten und unnötige teure Konvertierungen in höhere Abtastraten zu vermeiden, müssen Sie zwei Submixstimme mit 22 khz Sample-Eingaberaten in das Diagramm einfügen. Eine Submixstimme gibt mit 11 kHz an die Submixstimme mit dem Halleffekt aus, und die andere Submixstimme gibt bei 44,1 kHz an die Masterstimme aus.

Beispiele für die Konvertierung der Samplerate in Audiographen

Alle Stimmen haben die gleiche Stichprobeneingaberate; im Audiodiagramm wird keine Konvertierung der Samplerate durchgeführt. im Audiodiagramm wird keine Konvertierung der Samplerate durchgeführt.

Alle Stimmen haben die gleiche Beispieleingaberate mit Ausnahme der Masterstimme. Die Abtastratekonvertierung wird nur für Daten ausgeführt, die an die Masterstimme gehen. Die Abtastratekonvertierung wird nur für Daten ausgeführt, die an die Masterstimme gehen.

Stimmen haben unterschiedliche Beispieleingaberaten und benötigen mehr Submixstimmstimden, um Abtastratekonvertierungen durchzuführen. Die Konvertierung der Samplerate wird an mehreren Stellen im Audiodiagramm ausgeführt. Die Konvertierung der Samplerate wird an mehreren Stellen im Audiodiagramm ausgeführt.

Stimmen

XAudio2-Programmieranleitung