Linux - Without hardware soundcard, capture audio playback, and record it to file

二次信任 提交于 2021-02-18 22:10:32

问题


Is such a thing even possible?

Is there a possibility to create a virtual sound card and then use for example PyAudio to listen to its output and save it to a file? NOTE that there is no hardware soundcard present on the machine.

I have tried a lot of things, especially snd-dummy ALSA module, but I am starting to doubt if I am looking for the right tools. I would be grateful if someone could point me towards at least high-level solution. Preferably something that would work on Ubuntu server.


回答1:


Thanks to both @mjy and @Matthias I have finally managed to figure out the minimal steps to take in order to make the recording work:

sudo apt-get install pulseaudio jackd2 alsa-utils dbus-x11

No need to play with snd-dummy, no need to create any additional config files... All these things only caused me to lose few hours :( After installing these packages on a clean Ubuntu server installation, I was able to run Python script and capture output audio to a file using PyAudio...




回答2:


If the application producing the sound supports JACK, this should be easy. Then you only need to select the dummy driver for JACK and you can route the audio signal to any sound recording program you want (as long as it also supports JACK).

You'll need the package jackd, which has a command line interface for starting the JACK daemon. The package qjackctl provides a nice GUI for experimenting with different settings and for making audio connections between programs. For recording, you can try the program jack_rec which is part of jackd, but there are many other recording application for JACK available as well.

If you want to use Python for recording, you can try the sounddevice and soundfile modules. If you need some JACK-specific functionality, you should try jackclient-python.




回答3:


Install the PulseAudio.

sudo apt install pulseaudio

PulseAudio has emulation for ALSA.



来源:https://stackoverflow.com/questions/40061291/linux-without-hardware-soundcard-capture-audio-playback-and-record-it-to-fil

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!