【发布时间】:2019-03-06 23:06:51
【问题描述】:
我正在使用这个简单的管道在 Raspberry Pi 3 上播放硬件加速视频:
gst-launch-1.0 playbin uri=file:///test/test.mp4
视频一开始播放,任何使用 ALSA 并行播放的声音都会开始噼啪作响(使用 gstreamer 和 mplayer 测试)。这是一个简单的 WAV 文件,我使用的是 USB 音频接口。
在不播放音频文件的情况下听耳机插孔已经噼啪作响(但这个插孔质量非常低,我不知道这是不是不同的效果)。
在与视频相同的管道中播放音频没有帮助。 CPU仅在大约。 30% 的负载并且有足够的可用内存。我已经超频了 SD 卡。使用 omxplayer 并行播放两个视频没有任何影响,声音仍然播放良好。但只要我启动上面的管道,声音就开始噼啪作响。
我尝试使用“压力”来模拟高 CPU 负载。这也没有影响,所以 CPU 似乎不是问题(但也许是 GPU?)。
这是用于测试音频的 gstreamer 管道:
gst-launch-1.0 filesrc location=/test/test.wav ! wavparse ! audioconvert ! alsasink device=hw:1,0
GST_DEBUG=4 显示没有问题。
我尝试在不同的地方排队,但没有任何帮助。播放没有音轨的视频效果会好一些。但我不知道资源短缺可能在哪里,如果它甚至是一个。
gstreamer 似乎在干扰音频流。
高度赞赏任何可能存在问题的想法。
【问题讨论】:
-
如果你通过
autoaudiosink玩会怎样?我们对您的设置一无所知。也许主要的音频输出是通过pulseaudio完成的,直接通过alsa访问硬件会造成干扰。 -
Pulse 也使用 alsa 作为后端。我也尝试过脉搏,但没有改变。我怀疑 Raspberry 上的 USB 问题,正如在此线程中所怀疑的那样:github.com/raspberrypi/linux/issues/2215。我的音频接口也有一个binterval 1。
标签: raspberry-pi gstreamer alsa