Log in

View Full Version : eac3to says “Superfluous zero bytes detected”


maldon
6th May 2020, 16:50
What does this mean?

[a02] Superfluous zero bytes detected, will be stripped in 2nd pass.
[a02] Reducing depth from 24 to 16 bits...

amichaelt
6th May 2020, 17:41
It means it's removing extraneous zero-byte padding. For some reason some audio tracks like that are actually 16-bit but have an extra 8-bits of padding of zeros. eac3to is removing it because it's unnecessary to keep them and just wastes space.

SeeMoreDigital
6th May 2020, 17:56
It means that whoever encoded the audio file, ran the original lossless 16-bit PCM audio stream through some software to pad it out to a 24-bit PCM audio stream.

I came across the very same thing a few weeks ago with the lossless PCM and DTS-HD MA audio streams from a Blu-ray audio disc (Alan Parsons Project - Ammonia Avenue).


Cheers

Asmodian
7th May 2020, 01:21
They are surprisingly common. The workflow uses 24 bit audio on the disc but lots of master audio tracks are/were 16 bit so there are a bunch of 0s. This is better than doing some extra processing that would generate non-zero values in the least significant bits so I don't hold it against them, I am just happy eac3to detects it to save space in the FLAC.

maldon
7th May 2020, 12:01
Very interesting! As I understand, it’s the same as when you extract DTS Core from DTS-HDMA and eac3to shows:

Patching bitdepth to 24 bit

Or am I wrong?. I know we can write -dontpatchdts to avoid it but if we forget to use it and we have deleted the original DTS-HDMA (so our DTS Core is now 24 bit instead of 16), I wonder one thing. If eac3to reduces depth from 24 to 16 bits, how can we return that extracted DTS Core to the original 16 bits?

SeeMoreDigital
7th May 2020, 14:02
Very interesting! As I understand, it’s the same as when you extract DTS Core from DTS-HDMA and eac3to shows:

Patching bitdepth to 24 bit

Or am I wrong?. I know we can write -dontpatchdts to avoid it but if we forget to use it and we have deleted the original DTS-HDMA (so our DTS Core is now 24 bit instead of 16), I wonder one thing. If eac3to reduces depth from 24 to 16 bits, how can we return that extracted DTS Core to the original 16 bits?Technically, lossy audio streams (MP3, AAC, WMA, AC-3, DTS, etc) don't have a 'bit-depth'...

tebasuna51
7th May 2020, 17:59
Only DTS-MA (lossless) have bitdepth, the DTS Core is not 16 or 24 bitdepth, lossy encodes can't recover exactly 16 bits, we don't know how much bits are exactly the same than the source.

When decode a lossy audio we obtain 32 bits float, to avoid conversion to 16 int lossing precission is recommended at least convert to 24 bits int before a new recode.
For that: "Patching bitdepth to 24 bit"

But of course not all 24 bits are the same than the original source, is only a best aproach than 16 bits.

maldon
9th May 2020, 15:43
Thank you very much.