视频会议传输系统(2)

时间:2025-04-21

[4]。该方案实现较复杂,而且采用非标准的RTP 实现方式,会给不同厂商H.323 产品间的互通带来困难。

3 一种新的音视频同步方法

本方法基本思路是:在音视频数据的采样、编码、打包、发送、网络传输、接收、网络异常处理、拆包、解码、播放这十个处理过程中,采集、编码、打包、拆包和解码的时间基本上固定,不会因为网络环境差异造成时延的差异,而发送、网络传输、接收、网络异常处理四个过程则具有较大的随机性,其处理时间会随着网络性能的不同有较大的差异,进而造成播放时音视频的不同步。因此唇音同步处理的重点就在于保证发送、网络传输、接收、网络异常处理这四个过程中音视频的同步,即图1 中发送同步到组帧同步之间的部分。

图1 唇音同步实现全过程

其他处理过程引起的时间差,只要在系统稳定后给音频加上固定的延时即可,因为一般情况下,音频处理所花的时间比视频处理少,具体的差值可多次实验统计得到。

RTP 协议规定每个RTP 包中所承载的有效载荷类型(PT)是唯一的,但是如果将音视频通过同一个通道传输,并且保证同一时刻采集到的音视频帧顺次交错发送,则既能保证音视频在传输中的同步,又遵守了RTP 协议。音频数据量较小,一个RTP 包即能承载一帧,一个视频帧则需要多个RTP 包承载,帧结束标志采用RTP 包头中的Mark 字段,该字段为1,则说明当前包是一帧的结束包。 依据上述思想,方案具体实现过程设计如下:

(1) 发送端分别独立的对音视频信息进行采样,组帧和打包,然后放到各自的缓冲队列中等待发送(2) 数据发送模块从发送缓冲中取数据,1) 从音频缓冲队列中取一个包(一帧);2) 从视频缓冲队列中取数据,每取一个包,都判断RTP 包头的Mark 字段是否为1,如果为1,说明当前视频帧已经取完,转1),如果Mark 字段为0,说明当前视频帧还未取完,转2);(3) 音视频数据通过同一个通道发送到网络;(4) 接收端收到数据,根据包头中的PT 字段区分音视频,放到各自的接收缓冲队列中进行请求丢包重传、乱序重排等网络异常处理[5,6],然后进入组帧缓冲等待解码器取走数据,进入组帧缓冲的数据没有乱序包和重包,偶有丢包;(5) 音视频各自拆包组帧,实现过程如图2 所示:

视频会议传输系统(2).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219