0

我有一个由 Silicondust hdhomerun 调谐器编码的 mpegts 视频文件。我目前拥有的管道:

gst-launch-0.10 filesrc location=filename.mpg ! decodebin name=decoder decoder. ! queue ! audioconvert ! audioresample ! alsasink device=front decoder. ! deinterlace ! ffmpegcolorspace ! glimagesink

效果很好,只是它不能捕获所有的音频通道。今晚我在录制一场季前赛足球比赛时发现了这一点,而当裁判和人群嘈杂声响起时,播音员听不见。这个文件在 xine 中的所有音频通道上都可以正常播放。

这是 ffmpeg 的输出,它描述了流:

Stream #0:0[0x31]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 14950 kb/s, 64.96 fps, 59.94 tbr, 90k tbn, 119.88 tbc
Stream #0:1[0x34](eng): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 5.1(side), s16, 448 kb/s
Stream #0:2[0x35](spa): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, stereo, s16, 192 kb/s (visual impaired)

如何让所有音频通道从 gstreamer 中的环绕声 mpeg 播放?

额外信息:

  • 操作系统

  • 阿尔萨音响系统

更新:

这个问题其实很奇怪。随机播放所需的所有通道,我认为我已经找到了解决方案,但是新找到的解决方案停止工作,并且一些音频通道再次丢失。

甚至 playbin2 也随机包含和排除这些频道:

gst-launch-0.10 -v playbin2 uri=file:filename.mpg

在确定使用 playbin2 也存在间歇性行为后,我刚刚在 bugzilla.gnome.org 上提交了一份错误报告。

4

0 回答 0