播放MPEG-TS文件时的Android音频滞后

问题描述:

我最近一直在为Android应用程序内的视频播放苦苦挣扎。有问题的视频是一个M3U8文件,该文件又链接到一系列辅助M3U8,每个辅助M3U8具有一个组件MPEG-TS视频文件列表,以及一个包含AAC格式音频组件的M3U8文件。我在M3U8合作方面遇到了一些麻烦,但现在看起来工作正常。播放MPEG-TS文件时的Android音频滞后

不幸的是,音频落后于视频背后大约一秒钟。这种滞后现象既出现在我自己的包含MediaPlayer的Activity中,也只是启动指向流的Android默认视频播放器。播放中还频繁出现视觉口吃或腐败现象。在使用VLC Beta或者iPhone版本的应用程序时,这两个问题都不存在,因此它不是视频文件本身的问题。我尝试了维塔米奥图书馆,这个情况更糟糕(更频繁的腐败现象,根本没有音频)。遗憾的是,改变视频格式不是一种选择。

在我看来,这个问题可能是由于Android对MPEG-TS的有限支持 - 支持的媒体格式列表指定它使用AAC音频(而我认为iOS版本只是简单地播放视频和音频来自.ts文件)。任何建议/解决方案来解决这个滞后?

你可以尝试Gstreamer,这似乎在Android上运行良好(http://gstreamer.com/),Vitamio也是