Mikrofon USB Raspberry Pi

11

Używam Raspberry Pi 3. Próbuję przetestować mikrofon USB. Najpierw piszę, lsusbaby sprawdzić, czy raspberry pi wykryje moje urządzenie. Tak, a wynik jest następujący:

BUS 001 Urządzenie oo8: ID 0d8c: 013c C-Media Electronics, Inc. Kontroler dźwięku CM108

Następnie wpisuję polecenie, alsamixeraby wybrać urządzenie i zwiększyć głośność. Następnie wpisuję polecenie, arecord -laby uzyskać listę urządzeń przechwytujących:

  • karta 1: Urządzenie [USB PnP Sound Device],
  • urządzenie 0: USB Audio [USB Audio]
  • Urządzenia podrzędne: 1/1 Urządzenie podrzędne # 0: urządzenie podrzędne # 0 ".

Widzę, że mój mikrofon nagrywa dźwięk, ale nie słyszę go po podłączeniu słuchawek.

Nie
źródło
Spróbuj użyć tego polecenia, aby nagrać dźwięk do pliku, a następnie odtworzyć go później:arecord -f cd -D plughw:0 -d 10 a.wav
Mohammad Ali
To może pomóc?
Sparhawk
Pomogło mi to rozwiązać ten sam problem: użyłem standardowego zasilacza impulsowego (5 V, 2,4 A), a następnie przełączyłem się na niestandardowy zasilacz za pomocą LM350 z czapkami przy 5 V. Nie miałem hooey PWM na żadnych pinach przed i po. Na wszystkich moich „kartach dźwiękowych” USB, nawet najtańszej chińskiej, jest teraz tylko krystalicznie czysty dźwięk. Jestem pewien, że liniowy regulator zrobił różnicę.
user2497

Odpowiedzi:

2

Już dawno temu zmierzyłem się z tym problemem, dlatego zamieszczam dwa rozwiązania, które dla mnie zadziałały.

Pierwszym rozwiązaniem jest, jeśli chcesz tylko strumieniowe przesyłanie dźwięku.

  • Krok 1: Instalowanie ffmpeg.
    Nie używaj pakietu ffmpeg z repozytorium Raspbian apt-get, ponieważ jest on przestarzały.

Właściwy sposób:

cd /usr/src
sudo git clone git://source.ffmpeg.org/ffmpeg.git
cd ffmpeg
  • Krok 2: Kompilacja ffmpeg.

Teraz,

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

Idź na przerwę, to zajmie trochę czasu!

  • Krok 3: Rozpocznij nagrywanie.

Możesz także użyć innych kodeków, użyłem mp2, ponieważ znacznie zmniejsza użycie procesora.

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

Uwaga : Ten adres IP jest rodzajem adresu multiemisji ([224-239] .xyz). Nie kieruj go więc na określone urządzenie sieciowe w sieci LAN.

  • Krok 4: Wyniki słuchania.

Otwórz VLC na komputerze podłączonym do tej samej sieci.

Idź do mediów -> strumień sieci -> wpisz adres IP, tutaj rtp: //224.1.2.3: 7000

Drugie rozwiązanie dotyczy jednoczesnego nagrywania dźwięku i obrazu.

  • Wykonaj kroki 1 i 2. (Pamiętaj, aby znaleźć się we właściwym katalogu)
  • Krok 3: Rozpocznij nagrywanie.

Zmienia się to, ponieważ ffmpeg zapewnia pełne strumieniowanie multimediów.

ffmpeg -f alsa -ac 1 -i hw:1 -ar 44100 -f mpegts udp://10.10.0.96:1234
  • Krok 4: Wyniki słuchania.

Otwórz VLC na komputerze podłączonym do tej samej sieci.

Idź do mediów -> strumień sieci -> wpisz adres ip, tutaj udp: // @: 1234

Shreyansh Agarwal
źródło
0

Wejście mikrofonu nie przechodzi do wyjścia audio, chyba że napiszesz (lub użyjesz) program, który powie to zrobić.

Rebroad
źródło
0

Niektóre karty dźwiękowe mają wejście i wyjście audio. Jeśli chcesz usłyszeć, co dochodzi z wejścia audio i jednocześnie nagrywać, istnieje kilka opcji, takich jak;

  • Użyj karty dźwiękowej, która pozwala nagrywać (prawdopodobnie z wbudowanym mikrofonem) i włącz opcję bypass, aby usłyszeć bezpośrednio, co jest na wejściu, jednocześnie nagrywając. Ta opcja jest zwykle nazywana „obejściem” i można ją aktywować za pomocą alsamixer. Nie wyczerpująca lista kart dźwiękowych opartych na GPIO jest dostępna tutaj . Ta opcja jest najlepsza, jeśli chcesz uzyskać wyjątkowo małe opóźnienia, tj. Słyszeć to, co nagrałeś przez słuchawki z opóźnieniem bliskim zeru.

  • Możesz także spróbować dowiedzieć się, jak zarejestrować plik arecord i zrobić osobny plik arecord | polecenie aplay z tego samego urządzenia. Wtyczka urządzenia dmix alsa umożliwia nagrywanie z urządzenia, które jest już w użyciu. Problemy z tym podejściem polegają na tym, że wystąpi znaczne opóźnienie (3 do 6 ms) - szczególnie w przypadku kart dźwiękowych USB, może być znacznie niższe przy użyciu karty dźwiękowej opartej na nagłówku GPIO. To bardzo odrażające, jeśli próbujesz występować i słuchać jednocześnie.

Matt

Matt
źródło