Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/145.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么是;useinbandfec是一个单向仅接收参数;在作品中是什么意思? 我试图在C++中实现一个OPU代码转换器,并且我有一些概念性的问题。 至于useinbandfec参数,我不太理解“单向仅接收参数”的含义,如中所述:_C++_Audio_Codec_Opus - Fatal编程技术网

什么是;useinbandfec是一个单向仅接收参数;在作品中是什么意思? 我试图在C++中实现一个OPU代码转换器,并且我有一些概念性的问题。 至于useinbandfec参数,我不太理解“单向仅接收参数”的含义,如中所述:

什么是;useinbandfec是一个单向仅接收参数;在作品中是什么意思? 我试图在C++中实现一个OPU代码转换器,并且我有一些概念性的问题。 至于useinbandfec参数,我不太理解“单向仅接收参数”的含义,如中所述:,c++,audio,codec,opus,C++,Audio,Codec,Opus,“useinbandfec”参数仅为单向接收 参数 例如,爱丽丝正在给鲍勃打电话。Alice使用useinbandfec=1的Opus编解码器,而Bob不使用Opus。因此,两者之间应该有一个Opus转码器。如果是,如何配置Opus编码器和解码器的设置 对于Alice->Bob,其中需要opus\u decode(),第五个参数(fecFlag)应该发送什么值?对于需要Opus编码器的Bob->Alice,在Opus\u encoder\u ctl()中的Opus\u SET\u INBAND\

“useinbandfec”参数仅为单向接收 参数

例如,爱丽丝正在给鲍勃打电话。Alice使用useinbandfec=1的Opus编解码器,而Bob不使用Opus。因此,两者之间应该有一个Opus转码器。如果是,如何配置Opus编码器和解码器的设置

对于Alice->Bob,其中需要
opus\u decode()
,第五个参数(fecFlag)应该发送什么值?对于需要Opus编码器的Bob->Alice,在
Opus\u encoder\u ctl()中的
Opus\u SET\u INBAND\u FEC()
应该发送什么值


谢谢大家!

在BANDFEC中使用的参数

此参数意味着编码器将附加信息放入流以恢复丢失的数据包。它是如何工作的,当编码器对数字N+1数据包进行编码时,它会在那个里添加一些关于数据包N的信息,若它支持恢复,那个么这些信息对解码器是有用的

若解码器不支持恢复,那个么这些信息是无用的,浪费带宽

单向仅接收参数含义

这意味着,若您在会话描述符(SDP)中指定它,那个么该参数描述了接收方的能力,并建议发送方使用或不使用入站FEC

问题:

1

例如,爱丽丝正在给鲍勃打电话。Alice使用Opus编解码器和 useinbandfec=1,而Bob不使用Opus。因此,应该有 两者之间的作品转码器。如果是,我如何配置 Opus编码器和解码器的设置

在这种配置中,您需要Alice和Bob之间的转码器。如果转码器支持FEC,您可能更愿意将useinbandfec=1包含到SDP fmtp属性中。如果编码器(Alice设备上的发送方)也在您的控制之下,您可以在以下条件下设置ask encoder以向流添加FEC:

  • 网络损失(可由RTCP检测)
  • 转码器对其进行解码的能力(可从SDP参数得知)
2

对于Alice->Bob,其中需要opus_decode(),应该是什么值 是否作为第五个参数(fecFlag)发送

当检测到数据包丢失时(例如通过RTP序列号),使用opus_解码FEC标志。假设您接收到数据包N,并且N-1数据包丢失。然后,您可以通过调用opus_decode(FECSFLAG设置为true)恢复数据包N-1,然后对数据包N进行解码:

packets[N-1] = decode_opus(pktN, fecFlag=true)
packets[N]   = decode_opus(pktN, fecFlag=false)
3

至于Bob->Alice,需要Opus编码器的地方,值多少 是否应与OPUS_编码器中的OPUS_SET_INBAND_FEC()一起发送


OPUS\u SET\u INBAND\u FEC最好设置从Alice SDP检索的useinbandfec参数。还要注意,除非您未设置BandFEC中使用的参数,否则FEC不会包括在编码流中

此参数意味着编码器将附加信息放入流以恢复丢失的数据包。它是如何工作的,当编码器对数字N+1数据包进行编码时,它会在那个里添加一些关于数据包N的信息,若它支持恢复,那个么这些信息对解码器是有用的

若解码器不支持恢复,那个么这些信息是无用的,浪费带宽

单向仅接收参数含义

这意味着,若您在会话描述符(SDP)中指定它,那个么该参数描述了接收方的能力,并建议发送方使用或不使用入站FEC

问题:

1

例如,爱丽丝正在给鲍勃打电话。Alice使用Opus编解码器和 useinbandfec=1,而Bob不使用Opus。因此,应该有 两者之间的作品转码器。如果是,我如何配置 Opus编码器和解码器的设置

在这种配置中,您需要Alice和Bob之间的转码器。如果转码器支持FEC,您可能更愿意将useinbandfec=1包含到SDP fmtp属性中。如果编码器(Alice设备上的发送方)也在您的控制之下,您可以在以下条件下设置ask encoder以向流添加FEC:

  • 网络损失(可由RTCP检测)
  • 转码器对其进行解码的能力(可从SDP参数得知)
2

对于Alice->Bob,其中需要opus_decode(),应该是什么值 是否作为第五个参数(fecFlag)发送

当检测到数据包丢失时(例如通过RTP序列号),使用opus_解码FEC标志。假设您接收到数据包N,并且N-1数据包丢失。然后,您可以通过调用opus_decode(FECSFLAG设置为true)恢复数据包N-1,然后对数据包N进行解码:

packets[N-1] = decode_opus(pktN, fecFlag=true)
packets[N]   = decode_opus(pktN, fecFlag=false)
3

至于Bob->Alice,需要Opus编码器的地方,值多少 是否应与OPUS_编码器中的OPUS_SET_INBAND_FEC()一起发送


OPUS\u SET\u INBAND\u FEC最好设置从Alice SDP检索的useinbandfec参数。另外,请注意,除非您未设置FEC,否则FEC不会包含在编码流中。

如果启用了FEC,问题2中的FEC标志不应该反过来吗?当解码pktN-1时,我们经过785行,当解码pktN时,我们经过781行?opus_的演示代码非常混乱。我认为,将FEC添加到后续数据包中的说法很好地证明了您需要数据包N FEC数据来恢复数据包N-1:但如果您不相信您可以向OPUS demo添加一些打印内容,并检查它在启用FEC时的工作方式,那么问题2中的FEC标志不应该反过来吗?当解码pktN-1时,我们经过785行,当解码pktN时,我们经过781行?opus_的演示代码非常混乱。我认为将FEC添加到后续数据包的声明是您需要的一个很好的证明