Bisakah saya mengatur perangkat audio loopback?

16

Jika saya dapat mengirim audio ke perangkat output, maka saya dapat merekam audio yang sama dengan gelombang. Dengan filesystems, Anda hanya dapat mengatur filesystem loopback dan menulis data biner pada file alih-alih perangkat.

Pertanyaan saya adalah: Dapatkah saya mengirim sinyal audio ke file WAV (misalnya) daripada perangkat audio saya? Bagaimana?

D4RIO
sumber
Video ini memperkenalkan empat mode loopback kartu suara. youtu.be/pqV3P9zRyYc

Jawaban:

11

Iya.

Sebenarnya ada banyak cara. Anda dapat mengatur perangkat kartu suara boneka suara yang hanya dapat Anda ambil data dari perangkat ... namun ini bukan format yang sangat berguna.

Lebih berguna bagi Anda adalah sesuatu seperti arecordutilitas yang memungkinkan Anda untuk menjatuhkan pada aliran output alsa dan menyimpannya ke beberapa format yang dikenal. Pada dasarnya apa pun yang bisa Anda peroleh melalui sistem suara alsa dapat disalin ke file suara format standar.

Alat serupa ada untuk audio pulsa .

Caleb
sumber
8

Jika sistem Anda, atau hanya aplikasi yang ingin Anda rekam, mengarahkan outputnya ke server suara , lihat kemungkinan perekaman untuk server suara itu. Sebagai contoh, di Ubuntu, server suara resmi adalah PulseAudio , yang datang dengan parecperintah (dari pulseaudio-utilspaket Instal pulseaudio-utils http://bit.ly/software-small ). Anda mungkin perlu mengubah output dari parecmenjadi sesuatu yang dapat digunakan dengan SoX (Ubuntu: Instal sox http://bit.ly/software-small ).sox

parec -r --rate=44100 | sox --type raw --rate 44100 - --type ogg recording.ogg
Gilles 'SO- berhenti menjadi jahat'
sumber
itu tidak berhasil untuk saya, tetapi variasi pada tema ini berhasil: askubuntu.com/questions/60837/…
ixtmixilix
4

Hal ini seharusnya menjadi mungkin untuk merekam langsung ke Audacity, tapi aku tidak bisa mendapatkan yang bekerja pada sistem saya (Ubuntu 10.10). Jadi mengikuti petunjuk di sini dari wiki Audacity, saya menggunakan ALSAperangkat pemutaran untuk mengalihkan audio ke file.

Ini menggunakan .asoundrcfile (di direktori home Anda):

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

Untuk merekam dari flash (di firefox), saya gunakan

FLASH_ALSA_DEVICE=teeraw firefox

File yang dihasilkan, /tmp/out.rawberada dalam format mentah sehingga mengonversinya perlu mengetahui parameter apa yang tepat. Anehnya, lametampaknya bisa menyelesaikannya sendiri tetapi soxperlu mengetahuinya secara eksplisit. Jadi, semua yang berikut tampaknya berhasil:

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
sumber
Tautan dari wiki Audacity sudah mati.
Suzana
0

Ada pengandar loopback di pohon ALSA, aloop-kernel.c (via sini ); yang Anda harus membangun sendiri (dan mencari tahu pemanfaatannya sebagai perangkat melalui aplikasi audio seperti aplay/ arecord) ...

sdaau
sumber