我正在开发媒体播放器应用程序:播放ISDB-T音频和视频。 我正在使用GStreamer进行解码和放大渲染。
为了让AV Sync完美运行,我应该规范文件读取:这样数据就不会被推送到Gstreamer既不太快也不太慢。
If I know the duration of TS file before hand, then I can regulate my reads. But how to calculate the TS file duration ?
因为,我需要使用多个TS文件验证应用程序,无法使用某个实用程序计算持续时间并不断更改文件读取 - 如何在程序中实现?
谢谢,
Kranti
答案 0 :(得分:2)
如果您对传输流中的编码和PES层有足够的了解,那么您可以读取TS中的时间戳并自行计算。 它需要搜索文件的末尾,搜索最后的时间戳,并在文件的开头减去同一程序的第一个时间戳。
答案 1 :(得分:0)
在大多数情况下,每个PES头包含一个PTS和/或DTS,它以90kHz频率测量。所以步骤可能包括: