android mediacodec 实时播放h264

本文介绍了使用Android的MediaCodec组件实现实时播放H264视频的关键点,包括选择正确的YUV420格式,如COLOR_FormatYUV420Planar、PackedPlanar和SemiPlanar。另外,强调了每帧数据前需添加0x00000001的标识以确保解码成功,否则可能导致解码失败的错误。
摘要由CSDN通过智能技术生成

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
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值