音视频同步介绍.pptVIP

  • 5
  • 0
  • 约1.61千字
  • 约 18页
  • 2017-08-09 发布于云南
  • 举报
音视频同步介绍 徐祥DTS(Decode timestamp 解码时间戳) PTS(Presentation timestamp显示时间戳) SCR (System Clock Reference) STC(System time clock ) 一个视频序列 stream: I P B B DTS : I P B B PTS : I B B P 在编码的时候,PTS,DTS和SCR都是由STC生成的,在解码时,STC会再生,并通过锁相环路(PLL-phase lock loop),用本地SCR相位与输入的瞬时SCR相位锁相比较,以确定解码过程是否同步,若不同步,则用这个瞬时SCR调整27MHz的本地时钟频率。最 后,PTS,DTS和SCR一起配合,解决视音频同步播放的问题。 TS的解码分两步进行,其一,是从PID为0 的TS包里,解析出PAT表,然后从PAT表里找到各个节目源的PID,一般此类节目源都由若干个ES流组成,并描述在PMT表里面,然后通过节目源的 PID,就可以在PMT表里检索到各个ES的PID。其二,解码器根据PMT表里的ES流的PID,将TS流上的包进行区分,并按不同的ES流进行解码。所以,TS是经过节目复用和传输复用两层完成的,即在节目复用时,加入了PMT,在传输复用时,加入了PAT。同样在节目解复用时,可以得到PMT,在传输解复用时,可以得到PAT。 数字庭审系统 功能模块介绍 前端处理:包括视频矩阵切换,画面合成,升频以及混音设置等功能。 编码板:主要完成音视频的采集,压缩,以及发送。 MPS:主要完成音视频格式的分装,保存,以及直播。 EWEB:主要是整个流程的控制,以及内容管理。 编码板通过RTP协议发送音视频到MPS主机。 音视频在两个不同的线程里进行处理,发送时没有进行同步处理。 编码板和MPS是点对点通信。 当视频帧的大小超过某个固定值时,就需要拆包,进行多次传输。 RTP格式 RTP时间戳设置 对于音频来讲,时间戳是封包间隔和采样速率的乘积的递增的,比如,如果封包时间是20ms,而采样率是8000Hz,则每一块的时间戳递增是160。 对于视频来说,时间戳的生成依赖于其帧数。时间戳可以使用一个固定的速率增加,如对于30f/s的视频,时间戳就每一帧增加3000,而对于25f/s的视频就增加3600(以90K采样率计算) 。 发送每包音频时在扩展字段添加当前系统时间, 发送每帧视频最后一包的时候同样在扩展字段加上当前系统时间。 虽然MPS和编码板是两套系统,但是它们的系统时间基准是一致的,开机后MPS更新编码板时间。 在MPS端我们的策略是通过简单计算前一帧和现在这一帧的时间戳来预测出下一个时间戳的时间。 在测试过程中,虽然音视频能同步,但是,发现画面比较卡,音频很完整,而视频跳帧。 这是因为播放器一般会进行音视频同步处理,我们的音视频采样间隔不能做得很均匀,发送的时间戳就不均匀。 同步有三种选择:同步音频到视频,同步视频到音频,或者音视频都同步到外部时钟。 一般采用同步视频到音频,因为人对声音尤其的敏感。 有的播放器如果视频时间戳太落后于音频时间戳,会加快播放,如果视频时间戳太领先于音频时间戳,会放慢播放。 有的播放器会丢弃视频帧。 MPS设置分别设置两个缓存区,分别保存几帧视频数据和音频数据。取出起始点和终止点视频的时间戳,然后将视频的时间戳平均,重新设置时间戳。将音频数据重新分块,使之尽量与视频1V1.这样,音视频的时间戳就均衡很多,播放起来也很流畅。 谢谢! * * 编码板 MPS EWEB 前端处理 流媒体服务器 player YUV PC HD SD Header + payload + Extension *

文档评论(0)

1亿VIP精品文档

相关文档