[opus] VOIP: FEC and NARROWBAND
Jean-Marc Valin
jmvalin at mozilla.com
Fri Feb 6 04:57:55 PST 2015
At this bitrate the encoder likely decides that it's better to put all
the bits in the normal packet than use FEC. When you enable FEC it
steals a lot of bits from the non-FEC content. Also, the use of FEC
depends on the reported percentage of packet loss. The more loss there
is, the lower the threshold for enabling FEC. Overall, the encoder
attempt to make the best decision on a packet-per-packet basis as to
whether FEC is useful considering the bit-rate, percentage of loss, and
the exact audio content.
Cheers,
Jean-Marc
On 05/02/15 11:46 AM, Dragos Oancea wrote:
> Hello,
>
> Is FEC supposed to work in NARROWBAND mode (with
> maxaveragebitrate=12000; maxplaybackrate=8000 ) ?
> I am having some confusing results, it appears that FEC is enabled in
> the encoder, but the decoder cannot find any packet with FEC.
>
> I am also wondering if this piece of code is correct (webrtc):
>
> /* The following is to parse the LBRR flags. */
> if (opus_packet_parse(payload, payload_length_bytes, NULL, frame_data,
> frame_sizes, NULL) < 0) {
> return 0;
> }
>
> if (frame_sizes[0] <= 1) {
> return 0;
> }
>
> for (n = 0; n < channels; n++) {
> if (frame_data[0][0] & (0x80 >> ((n + 1) * (frames + 1) - 1)))
> return 1;
> }
>
> Is this the way to detect is an Opus-encoded packet has FEC info about
> the previous packet ?
>
> Does Opus support FEC n+2 too, like SILK ?
>
> Thank you for this great codec!
>
> Regards,
> Dragos Oancea
>
>
>
>
>
>
>
> _______________________________________________
> opus mailing list
> opus at xiph.org
> http://lists.xiph.org/mailman/listinfo/opus
>
More information about the opus
mailing list