当前位置: 代码迷 >> 多媒体/流媒体开发 >> 使用Dshow播放从网络接收音视频数据的时戳有关问题
  详细解决方案

使用Dshow播放从网络接收音视频数据的时戳有关问题

热度:2342   发布时间:2013-02-26 00:00:00.0
使用Dshow播放从网络接收音视频数据的时戳问题
用udp接收rtp数据,组帧后播放,但是rtp包的时戳会过一段时间重置,使得后面的时戳小于前面的时戳导致视频阻塞,dshow的source filter检测到时戳被重置应该如何处理,才能使音视频正常播放?

------解决方案--------------------------------------------------------
你可以自己重新打时间戳
------解决方案--------------------------------------------------------
一般在source filter都需要打时间戳,就是为音频、视频流找一个共同的时间基点,再rtp包中的时间戳进行累加!
------解决方案--------------------------------------------------------
把rtp的时间戳累加就可以了。比如rtp是1~5循环的话,你累加就是0~5(5+1)(5+2)
------解决方案--------------------------------------------------------
rtp从1000开始。

static int64 startime = 0;
if(startime == 0) 
startime = rtpfirsttime;
startime += rtptime;