博客
关于我
opus时间间隔
阅读量:263 次
发布时间:2019-03-01

本文共 459 字,大约阅读时间需要 1 分钟。

RTP和OPUS编码参数优化

RTP协议的封包格式通常遵循RFC7587标准,这种封包格式本身没有特殊性,主要需要注意的是时间戳的处理。以下是关于OPUS编码的具体参数配置和计算方法。

OPUS编码的包间隔时间范围通常在20ms到120ms之间。考虑到视频会议对实时性要求较高的应用场景,我们选择了20ms的包间隔时间。这意味着每个OPUS包的时间戳(ts)递增值为960ms(48000Hz采样率×20ms)。

根据公式:nb_samples = (sampling_rate * kOpusPacketMs) / 1000

代入数据:48000 * 20 / 1000 = 960
这表示每个OPUS包对应的采样点数量为960个。

计算每个视频帧的大小:

帧大小 = nb_samples * 2 * channels
代入数据:960 * 2 * 2 = 3840
因此,每个视频帧的大小为3840。

在实际编码过程中,使用opus_encode函数进行编码,传入相应的参数后,编码结果显示输出大小为243字节。

转载地址:http://yexa.baihongyu.com/

你可能感兴趣的文章
python两组变量的相关关系散点图_变量是什么?变量间的两种关系——函数关系和相关关系(小学版)...
查看>>
Python中 pass语句的作用
查看>>
python中 urllib, urllib2, httplib, httplib2 几个库的区别
查看>>
python中 yaml库 & json库 & xmltodict库使用
查看>>
python中 将你的名字转化成为二进制并输出
查看>>
Python中*args 和**kwargs的用法
查看>>
Python中*args 和**kwargs的用法
查看>>
Python中*args和**kwargs的使用
查看>>
python中0、1、True、False、if条件
查看>>
python中argparse模块关于 parse_args() 函数详解(全)
查看>>
python中base64编码与解码
查看>>
python中break怎么用_详解Python中break语句的用法
查看>>
python中del函数的垃圾回收
查看>>
Python中DrissionPage的详细解析与实战
查看>>
python中enumerate、变量类型转换
查看>>
python中execute是啥_python – 为什么“c.execute(…)”打破循环?
查看>>
python中exit和break区别_Python中exit()和sys.exit()之间的区别
查看>>
python中h5的用法
查看>>