0

以下管道(将 .mp4 转换为 .ts)在 GStreamer 0.10 中运行良好:

gst-launch-0.10 filesrc location=/tmp/temp.mp4 ! qtdemux  ! h264parse !  mpegtsmux name=mux ! filesink location=/tmp/output.ts

但是与 GStreamer 1.0.2 相同的管道会产生一个无法播放的 output.ts。据我在 TS 输出中看到的,似乎没有任何 SPS/PPS 起始码(它们存在于 0.10 的输出中)。

h264parse 元素的输出在两个版本之间似乎是相同的。

我查看了最新 mpegtsmux 的源代码,并且在任何地方都不再提及 SPS/PPS。事实上,整个文件 mpegtsmux_h264.c 似乎已经消失了。

new mpegtsmux 在这方面是如何工作的?我需要在管道上游添加额外的东西吗?或者向 mpegtsmux 添加属性?

4

1 回答 1

0

原来是 h264parse 中的一个错误,已在最新的 GStreamer 代码中修复。

于 2012-11-14T17:21:47.390 回答