Hi guys, I'm using Opus for speech in wide-band mode (sampling rate 16000) and 20ms frames with signal type set to SIGNAL_VOICE. I have a few questions here: 1. When I choose VBR mode, the codec seems to choose the bitrate on its own. However, that seems to be an issue on mobile devices. In some cases, when I configure the bitrate to say 20kbps, I see that the outgoing codec bitrate at runtime is sometimes far less (11-12kbps even). That leads to a lower received audio quality. When I choose CBR mode however, the outgoing bitrate is fixed at 20kbps and produces better audio quality. Is there a way to bias the VBR mode to use a value closer to the configured target bitrate or fix this low bitrate issue in any other way? 2. When using CBR mode, there seems to be an issue when I use frame sizes>20ms. On the receiving end, there appears to be a distortion (a cracklingnoise) that does not happen when using VBR mode on the encoding side (all else the same). Has anyone experienced this and/or can suggest a fix/workaround for this issue? 3. Overall, is using VBR vs CBR mode noticeably better or worse in terms of quality/bitrate? Any recommendations here? Thank you! -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.xiph.org/pipermail/opus/attachments/20150121/93f37164/attachment.htm
On 01/21/2015 07:51 PM, Daniel K wrote:> Hi guys, > > I'm using Opus for speech in wide-band mode (sampling rate 16000) and > 20ms frames with signal type set to SIGNAL_VOICE. > > I have a few questions here: > > 1. > When I choose VBR mode, the codec seems to choose the bitrate on its own. > However, that seems to be an issue on mobile devices. In some cases, > when I configure the bitrate to say 20kbps, I see that the outgoing > codec bitrate at runtime is sometimes far less (11-12kbps even). That > leads to a lower received audio quality. > When I choose CBR mode however, the outgoing bitrate is fixed at 20kbps > and produces better audio quality. > > Is there a way to bias the VBR mode to use a value closer to the > configured target bitrate or fix this low bitrate issue in any other way? > > 2. > When using CBR mode, there seems to be an issue when I use frame sizes > >20ms. On the receiving end, there appears to be a distortion (a > crackling noise) that does not happen when using VBR mode on the > encoding side (all else the same). > Has anyone experienced this and/or can suggest a fix/workaround for this > issue? > > 3. > Overall, is using VBR vs CBR mode noticeably better or worse in terms of > quality/bitrate? Any recommendations here? > > Thank you!Daniel, When you say, "lower perceived quality" at the lower rates, did you actually do a comparison, or are you assuming it must be lower quality because it's fewer bits? If the quality is lower when the bitrate the rate controller chooses drops, then that's a bug, because the default, VBR mode should maintain a consistent quality even if the bitrate fluctuates. In fact, the bitrate should vary because different segments of audio, voice or otherwise, do not require the same bits for the same quality. -- Libre Video http://librevideo.org
Hello Basil, Yes I actually did a comparison and the quality was lower with VBR. If I use CBR and set the bitrate to 20kbps, the quality was better than VBR+20kbps (actually uses a lower bitrate). But I should mention that this is device specific. On some devices, VBR+20kbps uses around 17-18kbps with active speech and the quality is good. On others, it ends up using 11-13kbps and the audio isn't as good. But forcing CBR at 20bkps sounds much better in the latter case. That is why I ask what determines the choice of bitrate when using VBR and if it can be influenced to use a value closer to the target bitrate. Thanks! On Thu, Jan 22, 2015 at 6:20 PM, Basil Mohamed Gohar < basilgohar at librevideo.org> wrote:> On 01/21/2015 07:51 PM, Daniel K wrote: > > Hi guys, > > > > I'm using Opus for speech in wide-band mode (sampling rate 16000) and > > 20ms frames with signal type set to SIGNAL_VOICE. > > > > I have a few questions here: > > > > 1. > > When I choose VBR mode, the codec seems to choose the bitrate on its own. > > However, that seems to be an issue on mobile devices. In some cases, > > when I configure the bitrate to say 20kbps, I see that the outgoing > > codec bitrate at runtime is sometimes far less (11-12kbps even). That > > leads to a lower received audio quality. > > When I choose CBR mode however, the outgoing bitrate is fixed at 20kbps > > and produces better audio quality. > > > > Is there a way to bias the VBR mode to use a value closer to the > > configured target bitrate or fix this low bitrate issue in any other way? > > > > 2. > > When using CBR mode, there seems to be an issue when I use frame sizes > > >20ms. On the receiving end, there appears to be a distortion (a > > crackling noise) that does not happen when using VBR mode on the > > encoding side (all else the same). > > Has anyone experienced this and/or can suggest a fix/workaround for this > > issue? > > > > 3. > > Overall, is using VBR vs CBR mode noticeably better or worse in terms of > > quality/bitrate? Any recommendations here? > > > > Thank you! > Daniel, > > When you say, "lower perceived quality" at the lower rates, did you > actually do a comparison, or are you assuming it must be lower quality > because it's fewer bits? If the quality is lower when the bitrate the rate > controller chooses drops, then that's a bug, because the default, VBR mode > should maintain a consistent quality even if the bitrate fluctuates. In > fact, the bitrate should vary because different segments of audio, voice or > otherwise, do not require the same bits for the same quality. > -- > Libre Video > http://librevideo.org > _______________________________________________ > opus mailing list > opus at xiph.org > http://lists.xiph.org/mailman/listinfo/opus >-------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.xiph.org/pipermail/opus/attachments/20150126/162734ac/attachment.htm