[Vorbis] What's the value range of float samples?

Gregory Maxwell gmaxwell at gmail.com
Fri Jan 11 15:09:45 PST 2013


On Fri, Jan 11, 2013 at 6:02 PM, Nikos Chantziaras <realnc at gmail.com> wrote:
> On 11/01/13 23:55, Paul Martin wrote:
>> On Fri, Jan 11, 2013 at 08:11:23PM +0200, Nikos Chantziaras wrote:
>>
>>> The general method of encoding seems to be ripping from the CD into a
>>> WAV file, and then "oggenc mytrack.wav".  At something like -q5, one
>>> would expect transparent results.
>>>
>>> So what you're saying is that this is *not* good enough?
>>
>> As a result of the CD loudness wars, sadly no.  Once again, Garbage In
>> Garbage Out.
>
> Then how can Vorbis achieve transparency?  If the input is garbage, the
> output should also sound like the garbage that went in, not like *worse*
> garbage.

±1 on the rails signals can actually clip in the DAC as well— usually
if the actual samples are at 0dBFS then there are intersample peaks
above it, there is basically no getting it right if the signal is
already at the rails.

This isn't a vorbis question. No frequency selective lossy processing
(including things as simple as equalization) can happen without
sometimes increasing the waveform peaks.  Attenuate the output if you
like, or run it through a limiter.  Vorbis preserves the data above
0dBFS so— if you like— it can be handled in the decoder. The decoder
doesn't attenuate by itself as that would make the signal noticeable
different for all signals— including the vast majority which  weren't
already clipping.


Ov_read does not have a limiter— if it did we likely wouldn't be
having this discussion. :)


More information about the Vorbis mailing list