我需要在 Ubuntu 16.04 机器上创建虚拟网络摄像头和虚拟麦克风,以便通过我的网络浏览器使用 WebRTC 在网络应用程序中使用。
我需要从 IP 摄像机(RTSP 流)向这两个虚拟设备提供视频和音频。
直接在 VLC 中播放 RTSP 流适用于视频和音频。
为此,我创建了一个带有 video4linux2 的/dev/video1。
我可以将 IP 摄像机馈送到/dev/video1。
ffmpeg -i rtsp://ip_address:554/streaming/channels/101/ -f v4l2 /dev/video1
如果我查看 VLC 播放器,我可以选择/dev/video1 作为视频设备,但我只有“hw:0,0”作为音频设备,这是我的内置麦克风。
如何正确地将此类 RTSP 流馈送到虚拟网络摄像头和虚拟麦克风?
最佳答案
您需要某种环回音频驱动程序。如果您想在 Alsa 级别执行此操作,您可能会丢失 snd-aloop
模块。 https://www.alsa-project.org/main/index.php/Matrix:Module-aloop#aloop_driver
如果您的目标目的地支持 Pulseaudio,您可以添加一个空接收器并使用它的监视器源来记录它。
pactl load-module module-null-sink sink_name=video1
然后将监视器源命名为
video1.source
.https://wiki.archlinux.org/index.php/PulseAudio/Examples
然后,您需要从 FFmpeg 添加一个额外的输出。这可能就像添加
-f pulse "video1"
之类的东西一样简单到你现在所拥有的为止。
关于ubuntu - 创建一个虚拟麦克风 Ubuntu 16.04 并将音频从 RTSP IP 摄像机流式传输到其中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43559297/