Если я могу отправить звук на устройства вывода, то я могу записать тот же звук, что и волна. С помощью файловых систем вы можете просто установить петлевую файловую систему и записать двоичные данные в файл вместо устройства.
У меня вопрос: могу ли я отправить аудиосигнал в (например) WAV-файл вместо моих аудиоустройств? Как?
Ответы:
Да.
На самом деле есть много способов. Вы можете настроить звуковую карту-заглушку, чтобы вы могли просто извлекать данные из устройства ... однако это не очень полезный формат.
Более полезной для вас является
arecord
утилита, которая позволяет перехватить поток вывода alsa и сохранить его в нескольких известных форматах. По сути, все, что вы можете воспроизвести через звуковую систему Alsa, можно скопировать в звуковой файл стандартного формата.Подобные инструменты существуют для импульсного звука .
источник
Если ваша система или просто приложение, которое вы хотите записать, направляет свой вывод на звуковой сервер , изучите возможности записи для этого звукового сервера. Например, в Ubuntu официальным звуковым сервером является PulseAudio , который поставляется с
parec
командой (изpulseaudio-utils
пакета Install pulseaudio-utils http://bit.ly/software-small ). Вам может потребоваться преобразовать выводparec
в нечто, пригодное для использования с SoX (Ubuntu: установите sox http://bit.ly/software-small ).sox
источник
Она должна быть возможность записывать непосредственно в Audacity, но я не мог получить , что работать на моей системе (Ubuntu 10.10). Следуя приведенным здесь инструкциям из вики Audacity, я использую
ALSA
устройство воспроизведения, чтобы перевести звук в файл.Это использует
.asoundrc
файл (в вашем домашнем каталоге):Для записи со вспышки (на firefox) я использую
Полученный файл
/tmp/out.raw
находится в необработанном формате, поэтому для его преобразования необходимо знать правильные параметры. Странно,lame
кажется, может решить это для себя, ноsox
должен знать это явно. Таким образом, кажется, что следующие все работают:источник
В дереве ALSA есть драйвер обратной петли, aloop-kernel.c ( здесь ); который вы должны построить сами (и выяснить, как его использовать в качестве устройства с помощью аудио приложений, таких как
aplay
/arecord
) ...источник