赞
踩
Android的流媒体协议支持不太好,标准只支持RTSP和MP4 over HTTP。因为MP4头部大,启动会比较慢,另外MP4也不适合做直播。当然基于Android的开放性,完全可以自己做一个播放器,难点是要做解码和显示的适配,Android机型太多,这个适配工作量比较大。Android升级到4.0版本应该支持HLS,目前也有一些设备厂商在2.x版本上支持的HLS。但是要做统一的产品,还是只能用RTSP,毕竟2.x的设备仍然是市场的主流。
现象:播放器打开后,缓冲一段时间,弹出播放失败
范围:所有Android设备,但是vlc player可以播放
原因:H.264视频的SPS、PPS没有发送。虽然在DESCRIBE的sdp应答里面已经通过config字段返回了SPS、PPS,但是Android上的播放器忽略了这个,还是需要在RTP流中增加冗余数据。
方案:RTP流中增加冗余的SPS、PPS数据
备注:实现完RTSP服务端后,在VLC上测试可以播放,但是在所有Android设备都不能播,寻找各种原因都没有结果,一度都觉得干脆放弃算了。这件事告诉了我们:永不放弃,在一次次失败后,你离成功就只有一步了。
现象:播放器打开后,有声音无图像
范围:部分影片,部分设备
原因:通过分析影片,发现不能播放的都是H.264 High Profile,设备硬件不支持。
方案
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。