android mediacodec 实时播放h264

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

你可能感兴趣的:(android mediacodec 实时播放h264)