Festlegen von Audioaufnahmeeigenschaften
Jeder Eingabepin im Audioaufnahmefilter macht die IAMAudioInputMixer-Schnittstelle verfügbar. Verwenden Sie diese Schnittstelle, um eine bestimmte Eingabe zu aktivieren oder zu deaktivieren, indem Sie die IAMAudioInputMixer::p ut _ Enable-Methode für den Pin aufrufen. Verwenden Sie diese Schnittstelle auch zum Festlegen von Eigenschaften einer Eingabe, z. B. der Pegel "1", "Treble" und "Volume". Wenn Sie mehrere Eingaben gleichzeitig erfassen, können Sie über die IAMAudioInputMixer-Schnittstelle für den Filter selbst die Gesamtebenen "3" und "Treble" steuern.
Die verfügbaren Samplingraten und Audioformate für die Erfassung werden vom Treiber bestimmt. Verwenden Sie die IAMStreamConfig-Schnittstelle auf dem Ausgabepin des Audioaufnahmefilters, um die verfügbaren Samplingraten und -formate aufzählen und das gewünschte Format festlegen. Der Filter kann eine Downstream-Verbindung mit jedem Filter herstellen, der den Medientyp des Ausgabepins akzeptiert.
Der Audioaufnahmefilter macht auch die IAMBufferNegotiation-Schnittstelle verfügbar. Diese Schnittstelle ist nützlich, um die Latenz in der Audiovorschau zu steuern. Standardmäßig verwendet der Audioaufnahmefilter eine Puffergröße von einer halben Sekunde. Diese Puffergröße ist für die Erfassung optimal, verursacht jedoch eine Vorschauverzögerung von einer Halben Sekunde. Um die Latenz zu reduzieren, rufen Sie die IAMBufferNegotiation::SuggestAllocatorProperties-Methode auf, bevor Sie den Ausgabepin des Audioerfassungsfilters verbinden. Diese Methode verwendet einen Zeiger auf die ALLOCATOR _ PROPERTIES-Struktur. Verwenden Sie den cbBuffer-Member, um die Puffergröße in Bytes anzugeben. Ein Puffer von 80 Millisekunden ist im Allgemeinen sicher, aber Puffer von 30 oder 40 Millisekunden können ausreichend sein. Wenn die Puffer zu klein sind, wird die Soundqualität beeinträchtigt.