Hi Opus list, Please forgive me if this has been asked before. I find that Opus encoder created in mode OPUS_APPLICATION_AUDIO (as opposed to _VOIP) is using a lot of bits to encode silent periods of speech. This is relevant to a voip application for which good quality music is desirable, and in which I add a minimal comfort noise (order of few bits loud, e.g. MLS signal of amplitude 1 or 2) to outgoing frames (towards opus encoder) if the frame would otherwise have been all zero-valued samples. I like to avoid switching noise, for people listening on headphones. If one encodes 10s of all zeros, you get about equal bitrates out of _AUDIO and _VOIP mode. If you encode 10s of loud noise, you get similar bitrates. As you encode quieter and quieter noise, the extra cost of using _AUDIO mode vs _VOIP goes up. At the extreme, a 10s signal of white noise with amplitude of only 2 (16bit, 16kHz), I see a near doubling. The _VOIP encoded file is size 46KB, the _AUDIO encoded file is 69K. Now this does make sense -- in an audio mode, you want faithful reproduction of very quiet signals (reverb tails, etc). However, I wanted to ask the list if this is expected/known behaviour. I wonder if it is possible to engineer a scenario (using existing apis) that would give one the benefits of _AUDIO mode (low delay, great fidelity, avoid voice-EQ) without this particular sensitivity that gives high bitrate for nearly inaudible noise floor. It's a lot to pay for near subliminal comfort noise. I'm prepared to hear that the answer is: choose VOIP mode ;) Thank you! Warm regards, KevinC
Timothy B. Terriberry
2016-May-10 21:55 UTC
[opus] Opus encoding rate for very quiet noisefloor
Kevin Connor wrote:> However, I wanted to ask the list if this is expected/known behaviour. I wonder if it is possible to engineer a scenario (using existing apis) that would give one the benefits of _AUDIO mode (low delay, great fidelity, avoid voice-EQ) without this particular sensitivity that gives high bitrate for nearly inaudible noise floor. It's a lot to pay for near subliminal comfort noise. I'm prepared to hear that the answer is: choose VOIP mode ;) Thank you!libopus doesn't know what your volume knob is set to, so it can't tell if that's "near silence" or important signal that should be preserved. You can help it out using OPUS_SET_LSB_DEPTH [1]. If you're injecting noise at a level of +/- 2 in 16-bit input, try setting it to 14. [1] https://www.opus-codec.org/docs/opus_api-1.1.2/group__opus__encoderctls.html#gaa23940eb477ff617edc14b8d66e104c0
Kevin Connor
2016-Jun-03 16:48 UTC
[opus] Opus application_mode==AUDIO, 20ms framing issue?
Hi Opus list, I'm noticing a discontinuity in the quality between use of 10ms and 20ms framesize for mode=AUDIO at a bitrate of about 28000. Quality drops audibly for voice signals when encoded at 20ms framesize, versus quality at 10ms. This effect is mode=AUDIO only. Using mode==VOIP shows no sig. difference between 10 and 20ms framing at this bitrate. Pesq totally overreacts, as it is wont to do :) However, I do hear a slight drop. Admittedly, 28kbps is a low bitrate to be running in mode=AUDIO. Is this effect known? Is there a difference in processing with audio mode between 10ms and (other framesizes)? I reckon it will go away if I throw some more bitrate at it, but wanted to understand it a bit better. Thanks very much, KevinC
Jean-Marc Valin
2016-Jun-03 17:12 UTC
[opus] Opus application_mode==AUDIO, 20ms framing issue?
Hi Kevin, Are you saying that the quality is good at 20 ms and bad at 10 ms, or the reverse? Also, is this speech or music? What tool, what options? In general, it helps a lot if you post the sample (input and output). Cheers, Jean-Marc On 06/03/2016 12:48 PM, Kevin Connor wrote:> Hi Opus list, > > I'm noticing a discontinuity in the quality between use of 10ms and > 20ms framesize for mode=AUDIO at a bitrate of about 28000. > Quality drops audibly for voice signals when encoded at 20ms > framesize, versus quality at 10ms. This effect is mode=AUDIO only. > Using mode==VOIP shows no sig. difference between 10 and 20ms framing > at this bitrate. Pesq totally overreacts, as it is wont to do :) > However, I do hear a slight drop. Admittedly, 28kbps is a low bitrate > to be running in mode=AUDIO. Is this effect known? Is there a > difference in processing with audio mode between 10ms and (other > framesizes)? I reckon it will go away if I throw some more bitrate > at it, but wanted to understand it a bit better. > > Thanks very much, KevinC > _______________________________________________ opus mailing list > opus at xiph.org http://lists.xiph.org/mailman/listinfo/opus >