Czy mogę skonfigurować urządzenie audio z pętlą zwrotną?

16

Jeśli mogę wysłać dźwięk do urządzeń wyjściowych, to mogę nagrać ten sam dźwięk jak fala. W systemach plików można po prostu skonfigurować system plików z pętlą zwrotną i zapisywać dane binarne w pliku zamiast w urządzeniu.

Moje pytanie brzmi: czy mogę wysłać sygnał audio do (na przykład) pliku WAV zamiast do moich urządzeń audio? W jaki sposób?

D4RIO
źródło
Film wprowadził cztery tryby sprzężenia zwrotnego karty dźwiękowej. youtu.be/pqV3P9zRyYc

Odpowiedzi:

11

Tak.

W rzeczywistości istnieje wiele sposobów. Możesz skonfigurować fałszywą kartę dźwiękową, aby po prostu zgrać dane z urządzenia ... jednak nie jest to zbyt przydatny format.

Bardziej przydatne dla ciebie jest coś w rodzaju arecordnarzędzia, które pozwala ci wyrzucić strumień wyjściowy alsa i zapisać go w kilku znanych formatach. Zasadniczo wszystko, co można odtwarzać przez system dźwiękowy alsa, można skopiować do pliku dźwiękowego w standardowym formacie.

Podobne narzędzia istnieją dla pulsacyjnego audio .

Caleb
źródło
8

Jeśli Twój system lub tylko aplikacja, którą chcesz nagrać, kieruje wyjście do serwera dźwięku , sprawdź możliwości nagrywania dla tego serwera dźwięku. Na przykład na Ubuntu oficjalnym serwerem dźwięku jest PulseAudio , który jest dostarczany z parecpoleceniem (z pulseaudio-utilspakietu Instaluj pulseaudio-utils http://bit.ly/software-small ). Może być konieczne przekonwertowanie danych wyjściowych parecna coś użytecznego w SoX (Ubuntu: Install sox http://bit.ly/software-small ).sox

parec -r --rate=44100 | sox --type raw --rate 44100 - --type ogg recording.ogg
Gilles „SO- przestań być zły”
źródło
to nie działało dla mnie, ale ta odmiana na temat działała
ixtmixilix
4

To miało być możliwe nagrywanie bezpośrednio do Audacity, ale nie mogłem, że do pracy w moim systemie (Ubuntu 10.10). Więc postępując zgodnie z instrukcjami tutaj z wiki Audacity, używam ALSAurządzenia odtwarzającego do przekierowania dźwięku do pliku.

Używa to .asoundrcpliku (w twoim katalogu domowym):

pcm.teeraw {
   type empty
   slave.pcm "tee:default,'/tmp/out.raw',raw"
   # 48000 S16_LE 2ch (aplay -t raw -f dat)
}

Używam do nagrywania z lampy błyskowej (na Firefox)

FLASH_ALSA_DEVICE=teeraw firefox

Plik wynikowy /tmp/out.rawma format surowy, więc jego konwersja wymaga znajomości właściwych parametrów. Dziwnie, lamewydaje się , że jest w stanie samodzielnie to rozwiązać, ale soxmusi to wyraźnie wiedzieć. Wydaje się, że wszystkie działają:

aplay -t raw -f dat -r 44100 /tmp/out.raw # to play
sox -r 44100 -b 16 -e signed -c 2 /tmp/out.raw /tmp/out.wav # to convert to wav
lame /tmp/out.raw # to convert to mp3
Loop Space
źródło
Link z wiki Audacity nie działa.
Suzana
0

W drzewie ALSA znajduje się sterownik sprzężenia zwrotnego, aloop-kernel.c ( tutaj ); którą musiałbyś sam zbudować (i dowiedzieć się o jej wykorzystaniu jako urządzenia dzięki aplikacjom audio, takim jak aplay/ arecord) ...

sdaau
źródło