我已经用我的appsrc创建了一个gstreamer管道; 管道是这样的
appsrc name=src ! video/x-h264 ! decodebin ! queue ! autovideosink
我编写了运行此管道的代码;
我将在我的appsrc中获得h264帧,我将其推送到decodebin。我的appsrc中没有收到任何时间戳。所以我在考虑提供时间戳值(这样fps将是30fps)。
GstBuffer结构中有两个领域,timestamp
领域和PTS
领域,
我应该用时间戳设置哪一个。并且在参考渲染和解码器将检查这些时间戳的时钟时?
目前我正在做的是从系统时间创建一个baseclock参考,并且关于那个时候我正在递增我的时间戳,它不起作用,如果我只设置持续时间它可以正常播放,但我想要实现时间戳逻辑,以便解码器可以丢弃一些帧,如果有些迟到..我对时间戳知之甚少,所以我想了解更多关于时间戳的信息
答案 0 :(得分:0)
您使用GST 1.0或GST 0.10吗? 在GST 1.0中没有“时间戳”,而在0.10中没有PTS / DTS。