MPEG-TS,Android和FFMPEG

我正在接收带有多路复用H.264视频和AAC音频流的MPEG-TS(MPEG传输流)数据包.我需要能够在Android手机上显示音频和视频.我的假设是我需要:

> MPEG-TS解复用器
> AAC解码器
> H.264解码器
>同步音频和视频播放

假设当时我是对的(在Android 2.x中)MPEG-TS多路分解器不是操作系统的一部分,必须移植,所以AAC和H.264解码器都是Android操作系统的一部分,但是我不确定是否它们具有接口,该接口允许在缓冲区中传递数据以及它们是否允许相互定时同步.在最坏的情况下,这些组件也必须移植到这里.

您能给我一些从哪里开始的建议吗?我在考虑FFMPEG的移植.还有其他方法吗?

问候,

解决方法:

Android 4.x具有可与H264和AAC一起播放TS的OpenMAX.您甚至不必担心音频和视频的同步.

查看NDK中的nativemedia示例.

如果要支持早期版本的Android,则ffmpeg可能是一个不错的选择,但它可以提供的最大好处是RGB或任何其他格式的已解码视频帧以及PCM的已解码音频.然后,您将必须自己实现渲染器和音频回放.我建议阅读本教程-http://dranger.com/ffmpeg/.它不是特定于Android的,但可以使您了解视频播放的工作原理.

上一篇:数字图像-概述


下一篇:H.264 视频格式