博客
关于我
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/

你可能感兴趣的文章
Objective-C实现生产者消费者问题(附完整源码)
查看>>
Objective-C实现生成 Mandelbrot 曼德勃罗集图像算法 (附完整源码)
查看>>
Objective-C实现生成崩溃dump文件 (附完整源码)
查看>>
Objective-C实现生成数组的所有不同排列算法(附完整源码)
查看>>
Objective-C实现生成正态分布数据(附完整源码)
查看>>
Objective-C实现生成随机高斯分布(附完整源码)
查看>>
Objective-C实现用 PIL 改变对比度算法(附完整源码)
查看>>
Objective-C实现用二维数组实现矩阵的转置(附完整源码)
查看>>
Objective-C实现用半正弦公式计算两个坐标之间的距离算法 (附完整源码)
查看>>
Objective-C实现用卡方解密凯撒算法(附完整源码)
查看>>
Objective-C实现用蒙特卡洛方法计算圆周率PI算法(附完整源码)
查看>>
Objective-C实现用递归计算给定数的幂算法(附完整源码)
查看>>