ChannelMFC

DG5MK                                                                                                                           08.2011

ChannelMFC – Programm zum Wechsel der Audiokanäle für Software Defined Radio

Je nach SDR-HW und -SW kann es erforderlich sein, den linken und rechten Audiokanal (I- und Q-Signale) zu vertauschen.

Aktuelle SDR-HW hat zum Teil eine integrierte Soundkarte, die letztendlich über USB angeschlossen ist. Daher ist ein einfaches Vertauschen der Kabel nicht möglich. Leider bietet auch nicht alle SDR-SW die Möglichkeit eines Kanaltausches.

Die Lösung ist ein kleines Programm, welches die Audioströme des linken und rechten Kanals innerhalb des Computers tauscht.

ChannelMFC ist ein C++ Programm auf MFC Basis und sollte daher auf jedem Windows PC, ohne erforderliches .Net Framework, lauffähig sein. Es nutzt das Portaudio-API, um auf die Windows-Soundschnittstellen zuzugreifen. Eine Installation ist nicht erforderlich, es reicht die ChannelMFC.exe aufzurufen. Die beigefügte Portaudio portaudio_x86.dll ist in das Programmverzeichnis zu kopieren, oder aber in ein Windows Verzeichnis mit etabliertem Suchpfad, z. B. c:\windows\system32.

Bild 1 zeigt das geöffnete Programm.

Bild 1: ChannelMFC Fenster

Im linken Bereich werden nach Auswahl des HostAPI die zur Verfügung stehenden Devices des API enumeriert und sind über DeviceIn und DeviceOut selektierbar. Hiermit wird der Datenpfad festgelegt. Beispielsweise wäre somit auch ein Vertauschen der Kanäle eines Stereomikrofons zu den Stereolautsprechern möglich.

Im SDR-Umfeld steht in der Regel die Soundkarte der HW zwar als Device zur Verfügung (DeviceIn), jedoch kann die SDR-SW so nicht eingebunden werden. In dieser lässt sich lediglich ebenfalls ein Device als Eingang selektieren. Daher muss eine Umsetzung des ChannelMFC DeviceOut auf die SDR-SW erfolgenden.

Für diesen Anwendungsfall wird ein weiteres Programm wie Virtual Audio Cable (VAC) benötigt. Ein hiermit definiertes virtuelles Audiokabel wird unter DeviceOut selektiert und in der SDR-SW als Eingangssignal eingebunden. Der Gesamtkanal ist somit USB Soundkarte, ChannelMFC, VAC und SDR-SW. VAC ist bei SDR-Anwendern in der Regel vorhanden, da es für die Auswertung digitaler Modulationsarten benötigt wird.

Im rechten Bereich von ChannelMFC kann ein Audioformat selektiert werden. Die Samplerate kann zwar unabhängig von den anderen Anwendungen gewählt werden, sollte jedoch dem gewünschten Format der SDR-SW entsprechen (48 kHz, 96 kHz etc.).

Die Puffergröße ist so klein wie möglich (keine Verzerrungen) zu wählen, um zusätzliche Latenz zu vermeiden. Man kann mit hohen Puffergrößen auch mal mit einer Verzögerung spielen.

Die Latenz ist die durch das Subsystem rückgemeldete Latenz in Sekunden. Gleichzeitig kann dieses Feld aber auch als Eingabe verwendet werden, um eine Ziellatenz vorzugeben. Ob dies funktioniert, hängt vom Audiosubsystem ab. Ausprobieren!

Mit Hilfe der Channelmap kann letztlich der Audiomix verändert werden. Optionen sind keine Änderung, Vertauschung von linkem und rechtem Kanal, oder aber ein Eingangskanal auf beide Ausgangskanäle.

Mit der letzten Option kann bei SDR simuliert werden, was wäre wenn nur ein Signal zur Verfügung stehen würde (I oder Q).

Mittels Apply werden die gewählten Optionen in Aktion gebracht. Nach Start des Programms werden im Übrigen die unter Windows voreingestellten Systeme und Devices aktiviert (default).

Viel Erfolg wünscht Michael, DG5MK

 

Noch ein Hinweis: Das Programm wird ‚As Is’ zur privaten, nichtkommerziellen Nutzung zur Verfügung gestellt. Kein Support, Haftung, Gewährleistung etc. Weitergabe ist erlaubt, sofern keine Änderungen am Programm durchgeführt werden.