播放器中使用共享内存进行数据缓冲
qq:9611153 微信lgs9611153
时间:2009-06-18
背景原因:
这是一个很久之前的设计,今天拿出来,整理个图形。
使用rtsp进行接收,使用ffmpeg进行解码,使用directdraw进行显示,使用asf进行保存。
实时播放数据流程:
可能影响播放的因素:
rtsp重连
网络稳定性
共享内存同步访问
音视频播放同步
媒体帧的播放间隔:
实时播放的播放时间:
1、按播放时间戳播放,时间戳包含在媒体数据中,取出之后计算当前帧的播放时间,然后按时间播放。
2、定时播放,根据缓冲区大小动态计算帧率,按照计算后的时间间隔播放。
没有实时要求的播放:
直接按照时间戳,或者固定帧率播放即可。