PDA

View Full Version : Not-So-Lossless (Arcsoft dtshd-MA decoder)


filler56789
23rd June 2013, 15:21
Just for testing and learning purposes, I created a fake 0.5-second mono WAV file (16-bits, 48kHz) and compressed it to DTS-HD Master Audio. Then I decoded this latter through eac3to, and compared the decoded WAV to the original uncompressed source. And in fact, the Arcsoft DLL does add some "garbage" (null bytes) at the beginning and at the end of the output. :confused:

So now my question is, why the devil the DLL does that? :confused: :confused: :confused:

LoRd_MuldeR
23rd June 2013, 15:45
I'm not an expert on the DTS format, but many compressed audio formats divide the audio data into fixed-size "frames". Then each frame is processed separately, e.g. transformed into the frequency domain.

Now, in order to avoid artifacts at the frame boundaries, the frames are usually overlapping. Also some "windowing" function is applied to the frame, so we have same "fade-in" and "fade-out" at the beginning and the end of the frame.

This means we need some "extra" samples at the beginning/end of the frame. But at the very beginning (or the very end) of the file audio we obviously do not have those. That's why some "silent" (NULL) samples are padded by the encoder.

If the decoder doesn't cut away those "padding" samples (this feature is often referred to as "gapless playback"), then the decompressed output is slightly longer and slightly shifted, as compared to the original...

(The length of the input being not an exact multiple of the frame size is another possible reason for padding additional samples)

nevcairiel
23rd June 2013, 16:06
I agree, if its just null bytes that are added front and back, its just the usual padding to fit frame sizes.

filler56789
23rd June 2013, 18:19
^ Thanks to you both for the explanations :thanks: I had forgotten about the frame sizes in lossless audio compression :o :o :o , and I thought DTSdecoderdll was decoding only the lossy core in many/most cases :mad:

Now and IMNSHO, Arcsoft really should fire :p some of their very-lazy programmers :D

Sparktank
23rd June 2013, 20:56
What version of ArcSoft are you using? Is it consistent with other versions?

filler56789
23rd June 2013, 21:51
I'm using 1.1.0.1, for both eac3to and LAV Audio, BTW please see the posts below:

http://forum.doom9.org/showthread.php?p=1508578#post1508578

and

http://forum.doom9.org/showthread.php?p=1508746#post1508746