Чи можна налаштувати аудіопристрій з циклічним зворотом?


16

Якщо я можу надсилати аудіо на пристрої виводу, я можу записувати той самий звук, що і хвиля. За допомогою файлових систем ви можете просто налаштувати файлову систему із зворотним зв'язком та записувати бінарні дані у файл замість пристрою.

Моє запитання: чи можу я надіслати звуковий сигнал (наприклад, WAV-файл) замість аудіопристроїв? Як?


Відео представило чотири режими зворотного звуку на картці. youtu.be/pqV3P9zRyYc

Відповіді:


11

Так.

Насправді існує маса способів. Ви можете налаштувати звуковий пристрій звукової карти, який дозволяє просто вилучати дані з пристрою ... однак це не дуже корисний формат.

Більш корисним для вас є щось на зразок arecordутиліти, яка дозволяє вам підкреслити вихідний потік alsa і зберегти його в декількох відомих форматах. В основному все, що можна отримати для відтворення через звукову систему alsa, можна скопіювати у стандартний звуковий файл.

Подібні інструменти існують для імпульсного звуку .


8

Якщо ваша система або просто програма, яку ви хочете записати, направляє свій вихід на звуковий сервер , вивчіть можливості запису цього звукового сервера. Наприклад, на Ubuntu офіційним звуковим сервером є PulseAudio , який поставляється з parecкомандою (з pulseaudio-utilsпакета Install pulseaudio-utils http://bit.ly/software-small ). Можливо, вам доведеться перетворити вихідний файлparec у щось корисне з SoX (Ubuntu: Встановити sox http://bit.ly/software-small ).sox

parec -r --rate=44100 | sox --type raw --rate 44100 - --type ogg recording.ogg

це не працювало для мене, але ця варіація на тему зробила: askubuntu.com/questions/60837/…
ixtmixilix

4

Вона повинна бути можливість записувати безпосередньо в Audacity, але я не міг отримати , що працювати на моїй системі (Ubuntu 10.10). Отже, дотримуючись тут інструкцій з вікі Audacity, я використовую ALSAпристрій відтворення для переадресації звуку у файл.

Для цього використовується .asoundrcфайл (у вашому домашньому каталозі):

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

Для запису із спалаху (на firefox) я використовую

FLASH_ALSA_DEVICE=teeraw firefox

Отриманий файл /tmp/out.rawзнаходиться в сирому форматі, тому для його перетворення потрібно знати, які саме параметри є. Як не дивно, lameздається, це вдається розробити для себе, але це soxпотрібно чітко знати. Тож, здається, працює все наступне:

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

Посилання з вікі Audacity мертве.
Сузана

0

У дереві ALSA є драйвер зворотного зв'язку, aloop-kernel.c ( тут ); який вам доведеться створити самостійно (і з'ясувати його використання як пристрою через аудіо програми, як aplay/ arecord) ...

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.