- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试用 C++ 实现 Opus 转码器,但我有一些概念性问题。至于useinbandfec这个参数,不太明白“unidirectional receive-only parameter”的意思,写在RFC7587, section 7.1 :
The "useinbandfec" parameter is a unidirectional receive-onlyparameter.
例如,Alice 正在调用 Bob。 Alice 使用 useinbandfec=1 的 Opus 编解码器,而 Bob 不使用 Opus。因此,两者之间应该有一个Opus转码器。如果是这样,我该如何配置 Opus 编码器和解码器的设置?
对于Alice->Bob,需要opus_decode()
,第5个参数(fecFlag)应该传什么值?至于需要 Opus 编码器的 Bob->Alice,应该在 opus_encoder_ctl()
中用 OPUS_SET_INBAND_FEC()
发送什么值?
谢谢!
最佳答案
参数useinbandfec
此参数表示编码器将附加信息添加到流中以恢复丢失的数据包。它是如何工作的,当编码器对第 N+1 个数据包进行编码时,它会添加一些关于数据包 N 的信息,如果解码器支持恢复,这些信息对解码器很有用。
如果解码器不支持恢复,则此信息无用且浪费带宽。
单向只接收参数含义
这意味着如果您在 session 描述符 (SDP) 中指定它,那么此参数描述接收方的能力并建议发送方使用或不使用入站 FEC
问题:
1
For example, Alice is calling Bob. Alice uses Opus codec with useinbandfec=1, while Bob doesn't use Opus. Therefore, there should be a Opus transcoder between the two. If so, how can I configure the settings of Opus encoder and decoder?
在此配置中,您需要 Alice 和 Bob 之间的转码器。如果转码器支持 FEC,您可能更愿意将 useinbandfec=1 包含到 SDP fmtp 属性中。如果编码器(Alice 设备上的发送者)也在您的控制之下,您可以设置要求编码器在以下条件下将 FEC 添加到流中:
2
As for Alice->Bob where opus_decode() is needed, what value should be sent as the 5th parameter (fecFlag)?
opus_decode FEcflags用于检测数据包丢失(例如通过 RTP 序列号)。假设您收到数据包 N 并且丢失了 N-1 个数据包。然后你可以通过将 fecFlag 设置为 true 调用 opus_decode 来恢复数据包 N-1,然后解码数据包 N:
packets[N-1] = decode_opus(pktN, fecFlag=true)
packets[N] = decode_opus(pktN, fecFlag=false)
3
And as for Bob->Alice where a Opus encoder is needed, what value should be sent with OPUS_SET_INBAND_FEC() in opus_encoder_ctl()?
OPUS_SET_INBAND_FEC 最好通过从 Alice SDP 检索到的 useinbandfec 参数来设置。另请注意,除非您不设置 OPUS_SET_PACKET_LOSS_PERC,否则 FEC 不会包含在编码流中。
关于c++ - Opus 中的 "useinbandfec is a unidirectional receive-only parameter"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46819965/
我正在尝试用 C++ 实现 Opus 转码器,但我有一些概念性问题。至于useinbandfec这个参数,不太明白“unidirectional receive-only parameter”的意思,
我是一名优秀的程序员,十分优秀!