1)rtsp和mp4播放的格式大多都是planar yuv420的,所以android系统的mediacodec解码实时播放时一定要注意选对视频数据格式。yuv420格式一般有这三种:
/** @deprecated Use {@link #COLOR_FormatYUV420Flexible}. */
public static final int COLOR_FormatYUV420Planar = 19;
/** @deprecated Use {@link #COLOR_FormatYUV420Flexible}. */
public static final int COLOR_FormatYUV420PackedPlanar = 20;
/** @deprecated Use {@link #COLOR_FormatYUV420Flexible}. */
public static final int COLOR_FormatYUV420SemiPlanar = 21;
2)实时播放的h264数据每一帧前面要加0x00000001,包括sps和pps都要加上才能解码成功,不然mediacodec就会报-11的错误。
3)实时播放url:
1. RTMP协议直播源香港卫视:rtmp://live.hkstv.hk.lxdns.com/live/hks
2. RTSP协议直播源
大熊兔(VOD):rtsp://184.72.239.149/vod/mp4://BigBuckBunny_175k.mov
国外电视台:rtsp://rtsp-v3-spbtv.msk.spbtv.com/spbtv_v3_1/214_110.sdp
3. HTTP协议直播源
香港卫视:http://live.hkstv.hk.lxdns.com/live/hks/playlist.m3u8
嘟嘟熊:http://file.xjkb.com/group1/M00/00/1A/eEzdEFh8Z-mAQdc6AcR3DvBgTPU994.mp4