View Full Version : 2496 PCM Ripping not possible actualy

PCM Ripper
15th January 2002, 17:30
Hi. I'm posting this here because i think this is the place where this could interest someone.
I tried to convert a raw PCM 24 bit 96 Khz from a musical video DVD without succes. I always get the left channel ok but right channel only noise. I used sound forge and cool edit with the same result. (settings : raw PCM, 24 bits integer, big indian, 96 Khz, 2 channel, no header). So i think there is 3 issues :

1) there is a scrambling, a protection, or a different coding for the right channel in the pcm stream (why not but seem strange).

2) there is a bug in all the different rippers.

3) i miss somthing.

If someone could help me...

second part :

Here is the news i have about the decoding tests i did today :

(copy of message sent to the vstrip maker)

I found today one problem in Vstrip after analysing the VOB with VOB Edit 2.0. The lenght of the 24/96 audio frame in the VOB is 2010 bytes and you only take the 2004 last bytes of each frame. we should have 2010 Bytes of audio for each LBA Pack. In my stream the first PCM Pack has no padding stream and a different header than the other ones. For the other there is a paddind stream at the end after the audio frame. the lenght of this paddind is 9 bytes ( 00 00 01 BE 00 03 FF FF FF) but Vstrip seem to deal correctly with this.

If you want you can add the following information i found in my vob : the audio attribute for the samplerate 96 Khz is 1. (0 is for 48 Khz).
(I saw ??? for this information in Vstrip gui)

I found if we check PCM header befor to demux, vstrip give the 6 missing bytes, but it give a byte more, the stream ID, so it give 2011 bytes. here i'm sure you have a bug. the stream ID has nothing to do in the audio pcm.

I tryed to anderstand why i have noise on the right channel because the 6 missing bytes are a multiple of 3 (3 bytes for each left or right sample) so we should just miss 2 samples each frame, one left, one right, so every 3.4 ms. We should have music on the two channels.

I think the problem is elsewhere. I think we have to focus on the PCM header. Perhaps he has a different lenght for left and right channels, this could explain the noise of the right channel. But i just made a test on one frame. i can't get the right channel ok even if i shift the decoding from one or two bytes. always noise on right channel.

So i think there is a coding on the right channel to protect the data, or perhaps it is a simple code 2's complement for example or something like this just to get a raw stream more readable when the audio is level 0 ?

Let me know if you have an idea !

Third Part :
Hello. it seems there is a small bug in the hex editor. when we open an audio frame, we have 3 bytes at the end who should not be here.

There is no support for the PCM 96 K audio attribute in VTSM_VOBS. the missing info is : offset 0104 : Byte 1, bit 4 = 1 (0 is for 48 Khz).

For the 2496 PCM ripping, i think there is perhaps a specific codding for compatibility with 48 Khz player. If somebody wants to find the code i join a small vob file with 2496 PCM audio.

Thanks for your attention.

15th January 2002, 18:19
vStrips can strip or unstrip PCM IDENT BYTES.
btw, here's a link to your attach (http://rilanparty.com/vbb/attachment.php?s=&attachmentid=299).

PCM Ripper
15th January 2002, 19:45
Yes i know but there is a bug in vstrip. when you choose to export PCM Header, you have an extra Byte (sub stream ID) at the beginnning of each audio frame who should not be here. In my case 0A hex.

15th January 2002, 21:07
Why do you think the data represents 24-bit audio? From looking at the dump of it, I'd say it was 16-bit data. This would also explain why one channel is noise (swapped bytes - ch1 Lu:Ll:Ru, ch2 Rl:Lu:Ll, etc)
Also, there is a 3-byte header in each pack following the substream ID

10th August 2003, 06:37
This might be of interest for you guys. (re: weirdness in 24bit LPCM audio)