2016-03-21 5 views
0

Ich benutze Windows Audio Core API, um Loopback-Capture zu machen und dann die Daten zu verarbeiten. Auf meinem Rechner bekomme ich 48000 Samplingrate mit 32 Bit Floats für das Format. Wird Windows intern verwendet? Ich frage mich, ob ich die Ausgabe vor einer hardwarespezifischen Konvertierung antippen, so dass das Format immer gleich ist, oder wenn ich 16-Bit-Ints auf einer anderen Maschine bekomme?Ist das Format einer Windows-Audio-Loopback-Aufnahme festgelegt? Oder ist es abhängig von der Soundkarte?

Antwort

0

Es gibt einige Unterschiede zwischen den Rechnern, zumindest in Bezug auf die Abtastrate, da WASAPI auf meiner Maschine 32-Bit-Floats bei 44100Hz liefert. Die documentation for GetMixFormat (Anmerkung Abschnitt, Absätze 2 und 3) schlägt vor, dass das mitgelieferte Format das interne Format für das Mischen ist, und dass es möglicherweise von der tatsächlichen Annahme der Soundkarte als Eingabe abweichen kann, aber nicht genau angibt, welche Formate möglicherweise verwendet werden. Ich vermute, dass dies absichtlich vage ist, um Entwickler zu ermutigen, mehrere Formate zu handhaben, falls sie irgendwo verwendet werden. Da sie jedoch das Mischformat von der Soundkarte abstrahieren, würde ich mich wundern, wenn sie verschiedene interne Formate auf verschiedenen Rechnern verwenden würden.

+0

Ich erwarte, dass sie float intern verwenden, um Quantisierung von der Skalierung zu vermeiden, möglicherweise zu Ints auf dem Ausgang zu konvertieren, wenn die Soundkarte es erfordert. Aber es scheint wahrscheinlich, dass die Sampling-Frequenz der Soundkarte passt. Danke für die Information. –