USB-Mikrofon Raspberry Pi


10

Ich verwende Raspberry Pi 3. Ich versuche, mein USB-Mikrofon zu testen. Ich tippe zuerst ein, um lsusbzu sehen, ob der Himbeer-Pi mein Gerät erkennt. Das tut es und das Ergebnis ist folgendes:

BUS 001 Gerät oo8: ID 0d8c: 013c C-Media Electronics, Inc. CM108-Audiocontroller

Ich tippe dann den Befehl ein alsamixer, um mein Gerät auszuwählen und die Lautstärke zu erhöhen. Danach arecord -ltippe ich den Befehl ein , um eine Liste der CAPTURE-Hardwaregeräte zu erhalten:

  • Karte 1: Gerät [USB PnP Sound Device],
  • Gerät 0: USB Audio [USB Audio]
  • Untergeräte: 1/1 Untergerät # 0: Untergerät # 0 ".

Ich kann sehen, dass mein Mikrofon Ton aufzeichnet, aber ich kann ihn nicht hören, wenn ich meine Kopfhörer anschließe.


Versuchen Sie, diesen Befehl zu verwenden, um Ihr Audio in eine Datei aufzunehmen und später arecord -f cd -D plughw:0 -d 10 a.wav
Mohammad Ali

Das könnte helfen?
Sparhawk

Dies hat mir geholfen, das gleiche Problem zu lösen: Ich habe ein Standard-Schaltnetzteil (5 V, 2,4 A) verwendet und dann mit einem LM350 mit Kappen bei 5 V auf ein benutzerdefiniertes Netzteil umgestellt. Ich hatte vorher und nachher kein PWM-Hooey an irgendwelchen Pins. Auf allen meinen USB-Soundkarten ist jetzt nur noch kristallklarer Sound zu hören, selbst auf der billigsten chinesischen. Ich bin sicher, dass der Linearregler den Unterschied gemacht hat.
user2497

Antworten:


1

Ich habe mich vor einiger Zeit auch mit diesem Problem befasst, daher veröffentliche ich zwei Lösungen, die für mich funktioniert haben.

Die erste Lösung ist, wenn Sie nur Audio-Streaming möchten.

  • Schritt 1: Installieren von ffmpeg.
    Verwenden Sie nicht das Paket ffmpeg aus dem Raspbian-Repository apt-get, da es veraltet ist.

Der richtige Weg:

cd /usr/src
sudo git clone git://source.ffmpeg.org/ffmpeg.git
cd ffmpeg
  • Schritt 2: Kompilieren von ffmpeg.

Jetzt,

sudo ./configure && sudo make && sudo make install

Machen Sie eine Pause, es wird einige Zeit dauern!

  • Schritt 3: Starten Sie die Aufnahme.

Sie können auch einige andere Codecs verwenden. Ich habe mp2 verwendet, da dies die CPU-Auslastung um einen guten Betrag reduziert.

arecord -f cd -D plughw:1,0 | ffmpeg -re -i - -acodec mp2 -ab 32k -ac 1 -f rtp rtp://224.1.2.3:7000

Hinweis : Diese IP-Adresse ist eine Art Multicast-Adresse ([224-239] .xyz). Richten Sie es also nicht auf ein bestimmtes Netzwerkgerät in Ihrem LAN.

  • Schritt 4: Hörausgabe.

Öffnen Sie VLC auf einem Computer, der mit demselben Netzwerk verbunden ist.

Gehen Sie zu Medien -> Netzwerk-Stream -> geben Sie die IP ein, hier rtp: //224.1.2.3: 7000

Die zweite Lösung ist, wenn Sie gleichzeitig Audio- und Videoaufnahmen wünschen.

  • Befolgen Sie die Schritte 1 und 2. (Denken Sie daran, sich im richtigen Verzeichnis zu befinden.)
  • Schritt 3: Starten Sie die Aufnahme.

Dies wird geändert, da ffmpeg vollständiges Multimedia-Streaming bietet.

ffmpeg -f alsa -ac 1 -i hw:1 -ar 44100 -f mpegts udp://10.10.0.96:1234
  • Schritt 4: Hörausgabe.

Öffnen Sie VLC auf einem Computer, der mit demselben Netzwerk verbunden ist.

Gehen Sie zu Medien -> Netzwerk-Stream -> geben Sie die IP ein, hier udp: // @: 1234


0

Der Mikrofoneingang geht nicht zum Audioausgang, es sei denn, Sie schreiben (oder verwenden) ein Programm, das ihn dazu auffordert.


0

Es gibt einige Soundkarten mit Audioeingang und -ausgang. Wenn Sie hören möchten, was gleichzeitig vom Audioeingang kommt, und aufnehmen können, gibt es einige Optionen, z.

  • Verwenden Sie eine Soundkarte, mit der Sie aufnehmen können (möglicherweise mit eingebautem Mikrofon), und aktivieren Sie die Bypass-Option, um direkt zu hören, was eingegeben wird, während Sie gleichzeitig aufnehmen. Diese Option wird normalerweise als "Bypass" bezeichnet und kann mit alsamixer aktiviert werden. Eine nicht umfassende Liste von GPIO-basierten Soundkarten finden Sie hier . Diese Option ist am besten geeignet, wenn Sie eine extrem niedrige Latenz wünschen, dh um zu hören, was Sie über die Kopfhörer mit einer Verzögerung von nahezu Null aufgenommen haben.

  • Sie können auch versuchen, herauszufinden, wie Arecord in eine Datei eingefügt wird, und ein separates Arecord | erstellen aplay Befehl vom selben Gerät. Mit dem dmix alsa Geräte-Plugin können Sie von einem Gerät aufnehmen, das bereits verwendet wird. Probleme bei diesem Ansatz bestehen darin, dass es zu einer erheblichen Latenz (3 bis 6 ms) kommt - insbesondere bei USB-Soundkarten, die bei Verwendung einer GPIO-Header-basierten Soundkarte viel geringer sein kann. Dies ist sehr abstoßend, wenn Sie versuchen, gleichzeitig aufzutreten und zuzuhören.

Matt

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.