VOIP对接总结(3)媒体对接

媒体对接关系着通话质量的问题,很多时候出现会议连接建立之后黑屏,或者入会之后被挂断,多是媒体对接造成的。下面就以h264格式为例来说一下媒体在对接中的问题。

媒体格式 分辨率帧率

在sdp的profile-level中,写明了h264的类别,中间两位为42表示baseline,为66表示highprofile,这个是比较直观的。

sdp中有点类似于参数重载,如果对某一参数有特别说明,就用说明的值,否则就用默认值,听起来像废话,但很重要。以max-fs为例,若过sdp中没有max-fs,该payload type帧率就用profile-level-id中对应的级别中的max-fs,否则就用sdp中的max-fs。max-fs是和分辨率相关的,代表了所支持的分辨率,一般来说,符合关系式:

                                                                               分辨率/256<=max-fs

才代表具有该分辨率的支持能力。

现在视频高清能力通常需要授权才能得到,对接时一定要注意sdp中分辨率的能力,往不支持高清能力的设备上发送高清视频,一般会黑屏。

帧率一般符合关系

                                                                             帧率=max-bps/max-fs

如果出现延迟,需要检查一下这个参数。

QOS

QOS是一个复杂的问题,我们可以采用一些简单的策略来满足一定的通话质量。

  • 缓存 udp在传输中不可避免会有乱序,使用缓存队列来纠正乱序包,循环列表是一个比较好的方案,不会引入多线程锁。
  • 多slice 视频编码尽量使用多slice,减小零星丢包对视频效果的影响。
  • 重传请求 使用rtcp来建立丢包重传,这是比较简便的,但是这种方式需要缓存一些数据,带来延迟,而且使用了丢包率也需要重新计算。
  • svc 利用带宽换时间的一种方案,视场景而用。

I帧请求

有些视频发送I帧在请求的时候才会发送,请求I帧时有sip和rtcp两种方式,建议尽量使用rtcp,主要因为:

  1. 带宽 rtcp协议占用的带宽比用sip更小,尤其是在网络带宽紧张的时候,缓解的资源还是可观的。
  2. 某些IM系统可能不会转发sip的info消息,无法请求到关键帧。
  3. sip消息往往要经过多级节点,消息有一定的延迟。

rtp通道

在一个会议未结束前,尽量不要关闭rtp通道,尤其是在结束演示流的时候。有些网络的防火墙在重新连接时会重新映射端口,每次开启会重新映射端口,而如果另一端如果未关闭端口,此时重新打洞是不通的。因为防火墙两端的设备所使用的数据传输路径已经不一致了。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值