Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > General > Audio encoding

Reply
 
Thread Tools Search this Thread Display Modes
Old 7th May 2003, 14:53   #21  |  Link
daphy
Miles Freak
 
daphy's Avatar
 
Join Date: Apr 2003
Location: Europe
Posts: 652
Quote:
anyone interested in "DTS to DTS/WAV" tool ?
Yes for shure

Will check this DS Filter this evening

do I really have to place the ax-file in the system32 folder, i always thought that ds-filter can be placed everywhere

CYA Daphy
daphy is offline   Reply With Quote
Old 7th May 2003, 15:09   #22  |  Link
hypercube
Hypercube Author
 
hypercube's Avatar
 
Join Date: Sep 2002
Location: France
Posts: 176
Quote:
I have another WAV file that works fine with your filter
so I don't want to download it.

Quote:
No the file I uploaded is a different file that couldn't be read by your filter, nor by BeSplit. But it worked fine when I recorded it on a CD and played with WinDVD3/4
you rip it in the same way as the working file ?

if yes, then we have a new challenge here !
Challenge is: fix these data to be played from disk.

If some one can found the right DirectShow Graph to play your CDR
with WinDVD filters, it will be possible to detect the right format
(using stuff like DirectShow Spy Filter) sent to Intervideo Audio decoder...

CDR => filter => Spy Filter => Intervideo Audio decoder => audio renderer

May be there is another solution.
do you know if you WAV file contain 48Khz dts data in 5.1 mode ?
I can build a DTS parser and launch it under your file, and skip
somes bits until the parser detect the right format.
My hypothesis: only sync word are missing. I took a look at first
byte of DTS data (in WAV format and in regular format), and they
not seem to be sync word (no regular repeating)

another idea:
you WAV file contain encrypted DTS stream.
does anyone know if it possible for LaserDisc ?
hypercube is offline   Reply With Quote
Old 7th May 2003, 15:13   #23  |  Link
hypercube
Hypercube Author
 
hypercube's Avatar
 
Join Date: Sep 2002
Location: France
Posts: 176
Quote:
do I really have to place the ax-file in the system32 folder
dear daphy, I said that not to have to respond questions like
"where I put the .ax file"
sure, you can put it everywhere on your hard disk...
hypercube is offline   Reply With Quote
Old 7th May 2003, 19:26   #24  |  Link
hypercube
Hypercube Author
 
hypercube's Avatar
 
Join Date: Sep 2002
Location: France
Posts: 176
DTSWAVSource filter v1.0.0.2 is out

I removed .WAV association due to conflict with
"File Source (Async.)" filter. So, I propose to
use .DTSWAV file extension, then Windows Media Player,
Graphedit and HT3 will be able to render the file.

note:
DTSWAVSource can handle regular .DTS files like DTSSource if you
force loading such file. I don't want to change .dts association
with DTSSource in respect to its author.
__________________
http://hypercube.is.dreaming.org
hypercube is offline   Reply With Quote
Old 7th May 2003, 19:30   #25  |  Link
Maxiuca
Registered User
 
Join Date: Dec 2002
Location: Los Angeles
Posts: 92
Quote:
so I don't want to download it.
Oh I think you do want ) to see the difference between them?

Quote:
you rip it in the same way as the working file ?
if yes, then we have a new challenge here !
Challenge is: fix these data to be played from disk.

May be there is another solution.
do you know if you WAV file contain 48Khz dts data in 5.1 mode ?

I can build a DTS parser and launch it under your file, and skip
somes bits until the parser detect the right format.
My hypothesis: only sync word are missing. I took a look at first
byte of DTS data (in WAV format and in regular format), and they
not seem to be sync word (no regular repeating)
Ok, so let me explain:
I have a DTS Laserdisc "Last Man Standing". I've recorded two waves from this disc. First is the one i made avaialble (lms.wav). Second one (lms2.wav) is a 20 MB one, that works (but your filter doesn't stop after the end of file and outputs some noise after it should stop).
I did two things with the second one. I've cut & pasted first 43 seconds of this wave into new file (lms4.wav). Then I've cut & pasted 37 second from the middle into new file (lms3.wav)

The results:
lms4.wav played fine (only the eof bug is still there)
lms3.wav didn't play at all.

Then I wrote a very simple app that cuts some bytes from a wave file.
And... yes you probably already know the answer
I've cut 4 fist bytes and it works fine now.

So I went back to the lms.wav that I uploaded for you guys and started cutting. And again after I've cut 4 bytes it started to work.

So my guess was that the data has to start with a full sample (packet of data, whatever it is called in dts).

So I started to wonder: how big is this saple and started cutting more and more and it worked for 12 and for 20, so my guess is that this sample is 8 bytes long.

Now: Could anyone smarter than me, with better programming skills (Hypercupe, DSPguru ) use this information and write dts/wav to dts converter?

The file is of course a 44.1 kHz dts data in 5.1 mode.


[QUOTE][B] another idea:
you WAV file contain encrypted DTS stream.
does anyone know if it possible for LaserDisc ? [QUOTE][B]

No, not possible

--
Maxiuca

Last edited by Maxiuca; 7th May 2003 at 19:34.
Maxiuca is offline   Reply With Quote
Old 7th May 2003, 19:32   #26  |  Link
Maxiuca
Registered User
 
Join Date: Dec 2002
Location: Los Angeles
Posts: 92
Oh, I forgot:

I made the two other files also avaiable:
http://akson.sgh.waw.pl/~wj23277/lms3.zip
http://akson.sgh.waw.pl/~wj23277/lms4.zip

--
Maxiuca
Maxiuca is offline   Reply With Quote
Old 7th May 2003, 20:38   #27  |  Link
kempfand
Registered User
 
kempfand's Avatar
 
Join Date: Oct 2001
Location: Switzerland
Posts: 225
DTS_WAV 44.1 kHz demuxed: working solution ?

OK: I think I found a working solution to demux a 44.1 kHz DTS_WAV into the 6 channels. It looks a bit strange, but it works on 2 test I've done.

As an example, I took the Test-DTS_WAV from http://www.minnetonkaaudio.com/Soundfiles/Fire__VooDoo_Studio_30_sec.wav.

Then fix and convert to DTS with BeSplit v0.9b4:
besplit -core ( -logfile m:\besplit.log -input Fire.wav -fix -output m:\Fire.dts -type dtswav )

------------------------------------------------
Logging start : 05/07/03 , 21:14:18.

besplit -core ( -logfile m:\besplit.log -input Fire.wav -fix -output m:\Fire.dts -type dtswav )

[00:00:00:000] +------- BeSplit -----
[00:00:00:000] | Input : Fire.wav
[00:00:00:000] | Source Sample-Rate: 44.1KHz
[00:00:00:000] | Channels Count: 5.1, Bitrate: 1411.2kbps
[00:00:00:000] | Output : m:\Fire.dts
[00:00:00:000] +---------------------
[00:00:29:233] | Writing m:\Fire.dts
[00:00:29:233] +---------------------
[00:00:29:233] Operation Completed !
[00:00:00:000] <-- Process Duration
Logging ends : 05/07/03 , 21:14:18.
------------------------------------------------

Then run the DTS through HyperCube 3.0.1, with PCM Engine (i.e. demux to PCM) and Intervideo Audio Decoder in 6 speaker mode.

This will then run over 100% (to 104.9% here); Just let it finish.

Then batch-convert the 6 PCM's (I use CoolEdit Pro): with 'Open Raw PCM, sample rate 44100, Mono, 16-bit Intel PCM.

The 6 WAV's then have exactly the same duration as the original DTS_WAV (30 sec with the Minnetonka example).

If someone could reproduce, please let us know.

Regards,
Andreas
kempfand is offline   Reply With Quote
Old 7th May 2003, 21:53   #28  |  Link
Maxiuca
Registered User
 
Join Date: Dec 2002
Location: Los Angeles
Posts: 92
I know an easier way

Set Graphedit like this:

DTSSource [File.dts] or DTSWAVSource[File.wavdts} -> Intervideo Audio Decoder [5.1 Output] -> WAV Dest -> File writer [output.wav]

Press play and wait

DL my splitting program:

http://tommers.w.interia.pl/wav2wav6.zip (all needed filters are also included)

and run it like this (or simply drag and drop - if your input dts was 48 kHz

wav2wav6 output.wav [-44 if your input dts was 44.1]

you'll get 6 mono waves

--
Maxiuca
Maxiuca is offline   Reply With Quote
Old 7th May 2003, 22:07   #29  |  Link
hypercube
Hypercube Author
 
hypercube's Avatar
 
Join Date: Sep 2002
Location: France
Posts: 176
I found the problem

this is simple. In fact you started the recording via SPDIF
without frame synchronization.
DTSWAV sync word is FF1F00E8, the first part of your file is
in the middle of a frame. So If a DTSWAV decoder, like mine or
besplit, try to decode from start of your file: every bit produced
will be related to...shit.

1 frame in DTSWAV format = 4096 bytes

this is true in your file and in Surcode DTS files.

BUT:

I patch dts2wav to start at the first DTSWAV sync word
(2836 DTS bytes skipped).
Then I put the .DTS file in my DTS parser:

sync: 7FFE8001
SFREQ: 8 = 44.1 Khz regarding DTS spec
RATE: 1D = "open" ! regardning spec
AMODE: 9 = C L R SL SR

next frame is... trashed. (my parser work fine on Surcode Files)

sync: FE8001FC
SFREQ: 8
RATE: 0 = 32 kbits/s
AMODE: E = unrealistic configuration

I restart dts2wav at position 2836+4096
then I put again the .DTS file in my DTS parser:

sync: 7FFE8001
SFREQ: 8
RATE: 1D
AMODE: 9

next frame is also trashed:

sync: FE8001FC
SFREQ: 8
RATE: 0
AMODE: E


I have tried to play theses .dts files and it work fine with
DTSSource until my PC hang definitively.
May be this due to the NEXT frame: it was trashed, regarding the
result of my parser.

technically the "Frame Size" field of DTS file is not correct when
"frame rate" field is "open" (0x1D) And may be this is why Intervideo
Audio decoder crash/hang.

does it crash for you ?
__________________
http://hypercube.is.dreaming.org
hypercube is offline   Reply With Quote
Old 7th May 2003, 22:13   #30  |  Link
hypercube
Hypercube Author
 
hypercube's Avatar
 
Join Date: Sep 2002
Location: France
Posts: 176
correction: DTSSource does not work (crash) with these .DTS file,
you have to use Graphedit and my DTSWAVSource filter.

As I said, it can handle regular .dts : it send data directly to
Intervideo Audio Decoder without applying DTS/WAV => DTS convertion
if the file extension is .dts
__________________
http://hypercube.is.dreaming.org
hypercube is offline   Reply With Quote
Old 7th May 2003, 22:52   #31  |  Link
hypercube
Hypercube Author
 
hypercube's Avatar
 
Join Date: Sep 2002
Location: France
Posts: 176
I patch my DTS parser to not use "Frame Size" field.

surcode files produce 3584 bytes per DTS frames

your file contain 17864 bytes per DTS frames

the 2 final frames are strange, but coherent:
frame n-1 = 22704 bytes
frame n = 25928 bytes => may be truncated

I think my PC crash during play because last frame is truncated.

The mysterious DTS LaserDisc Format is gone.
your DTS Laserdisc format seems to be 5.1 44.1Khz VBR !

I'm going to sleep a little bit...
__________________
http://hypercube.is.dreaming.org
hypercube is offline   Reply With Quote
Old 7th May 2003, 23:04   #32  |  Link
kempfand
Registered User
 
kempfand's Avatar
 
Join Date: Oct 2001
Location: Switzerland
Posts: 225
@ Maxiuca:

Your tool works great !! -->

A great short DTS_WAV -44 to test-run it is "SR 5.1" - Test Canaux - VERSION DTS 5.1

A few comments:

- You might want to add 'cc3260mt.dll', as I had to put it into the same directory as 'wav2wav6.exe' (it was not on my PC).

- REGDROP.EXE did not work for me (maybe it's just my machine), so I used something like:
--------------------
@echo off

SET codec=iviaudio3.ax

if "%OS%"=="Windows_NT" goto WINNT

:WIN9X
copy %codec% %windir%\system
%windir%\system\regsvr32.exe /s %windir%\system\%codec%
goto FIN

:WINNT
copy %codec% %windir%\system32
%windir%\system32\regsvr32.exe /s %windir%\system32\%codec%

:FIN
echo iviaudio3.ax [enabled]
pause
--------------------

Big thanks for this one. Hopefully, we'll see it integrated into BeSure v1.3

Kind regards,
Andreas
kempfand is offline   Reply With Quote
Old 7th May 2003, 23:22   #33  |  Link
Maxiuca
Registered User
 
Join Date: Dec 2002
Location: Los Angeles
Posts: 92
Quote:
Originally posted by kempfand
Your tool works great !! -->

A great short DTS_WAV -44 to test-run it is "SR 5.1" - Test Canaux - VERSION DTS 5.1

A few comments:

- You might want to add 'cc3260mt.dll', as I had to put it into the same directory as 'wav2wav6.exe' (it was not on my PC).

Thanks. This is a very early alpha release. I actually wrote it for myself, but as I saw it might be usefull for someone I decided to make if available to the public

I've just added the dll to the archive. I simply forgot about it... But I'll try to make it a standalone app in the future.

Quote:
- REGDROP.EXE did not work for me (maybe it's just my machine), so I used something like:
Strange... I found it somewhere on the net and thougt it might be usefull. Works on three of my OSes just fine (98 and 2xXP)

Quote:
Big thanks for this one. Hopefully, we'll see it integrated into BeSure v1.3
Actually BeSweet can also do it, you just have to use right switches (it's what DSPguru wrote) but i dunno which ones
But now you have a choice

Regards,
Maxiuca
Maxiuca is offline   Reply With Quote
Old 8th May 2003, 08:17   #34  |  Link
hypercube
Hypercube Author
 
hypercube's Avatar
 
Join Date: Sep 2002
Location: France
Posts: 176
more about DTS

I read the DTS spec it was clear now: the "open" bitrate does not
mean VBR. It is simply a way to say: "birate is fixed but not
specified"

my DTS parser was buggy, here is real result:

all frame are 3584 byte long, like Surcode files
regarding DTS spec, fsize field must be equal to "frame size-1",
and in your file: IT WAS NOT ! fsize = "frame size" !!

last frame is truncated: 2086 bytes

that's all.

@Maxiuca

you should make a tiny DTS/WAV patcher, to remove first and last
truncated frames. I hope HT3 will not produce noise if last frame
is not truncated.
__________________
http://hypercube.is.dreaming.org
hypercube is offline   Reply With Quote
Old 8th May 2003, 13:40   #35  |  Link
Maxiuca
Registered User
 
Join Date: Dec 2002
Location: Los Angeles
Posts: 92
@Hypercube:

what is exactly this fsize field? Where can I find this value. Can you give me a link to that DTS specification file you are talking about?

So if I fix the first and last frame simply by removing them, then this file should work fine? Or should I maybe also alter the fsize value?

Also what do you mean saying "your DTS parser"? You mean the DTSWASSource or the WAV2DTS program?

@DSPguru (if he's still with us )
are you going to use those information for BeSplit? Because I dunno if there is any sense for us in coding the solution to the same problem.

Best Regards,

Maxiuca

Last edited by Maxiuca; 8th May 2003 at 14:25.
Maxiuca is offline   Reply With Quote
Old 8th May 2003, 15:08   #36  |  Link
DSPguru
BeSweet Author
 
DSPguru's Avatar
 
Join Date: Oct 2001
Location: On top of a supercompact cardinal
Posts: 3,506
Quote:
Originally posted by Maxiuca
@DSPguru (if he's still with us )
are you going to use those information for BeSplit? Because I dunno if there is any sense for us in coding the solution to the same problem.
1. i'm attaching a BeSplit version that managed to convert your dtswav into dts that works perfectly with PowerDVD as player.

2. spec
Quote:
Originally posted by DSPguru
a direct link can be found on one of the threads in this forum. i would strongly advise new members to use the search function!


3. am i away ?
i hardly have time to visit the forum, and as soon as i'll be releasing BeSweet v1.5 stable, i'll be truely gone.

@hc (hypercube)
please please please, join forces with gabest to have a single filter that supports dts&dtswav with seek support and everything.
we don't need two different source filters for two different (but pretty similar) tasks.

@kempfand
1. BeSweet -core( -6ch ) will split the 6channel wave into six mono waves.
you can also normalize and resample if needed. you can learn the switches by reading the manuals or by playing with BeSweetGUI.

2. BeSure v1.3 isn't ready yet, as i'm still waiting for its author (dvd2svcd) to have some free time to work on it.

3. with all my respect to the tools and methods offered in here, my current method of transcoding 48khz 5.1dts into 44.1khz, normalized, 5.1dts-wav is Graphedit->BeSweet->Surcode.
with BeSure v1.3, this process would be shorter and automated for multiple inputs.
Attached Files
File Type: zip besplit.zip (14.6 KB, 294 views)

Last edited by DSPguru; 8th May 2003 at 15:16.
DSPguru is offline   Reply With Quote
Old 8th May 2003, 15:27   #37  |  Link
Maxiuca
Registered User
 
Join Date: Dec 2002
Location: Los Angeles
Posts: 92
Quote:
Originally posted by DSPguru
1. i'm attaching a BeSplit version that managed to convert your dtswav into dts that works perfectly with PowerDVD as player.
Thanks ) It does work fine! It was alsa playable in Graphedit via DTSWAVSource but crashed DTSSource.

Quote:
Originally posted by DSPguru 3. am i away ?
i hardly have time to visit the forum, and as soon as i'll be releasing BeSweet v1.5 stable, i'll be truely gone
Gone? like forever? No new releases? or just you won't post anything to the forum?

Best Regards,

Maxiuca
Maxiuca is offline   Reply With Quote
Old 8th May 2003, 15:32   #38  |  Link
Maxiuca
Registered User
 
Join Date: Dec 2002
Location: Los Angeles
Posts: 92
Quote:
Originally posted by DSPguru
11. BeSweet -core( -6ch ) will split the 6channel wave into six mono waves.
And what if this wave's header says that it's 48 kHz but in fact it's a 44.1 kHz (WAV Dest and File writer somehow always produce a wave with 48 kHz header...)? Can you force BeSweet to treat this file as it was a 44.1 kHz?

--
Maxiuca
Maxiuca is offline   Reply With Quote
Old 8th May 2003, 15:39   #39  |  Link
DSPguru
BeSweet Author
 
DSPguru's Avatar
 
Join Date: Oct 2001
Location: On top of a supercompact cardinal
Posts: 3,506
1. -ota( -fs 44100 ) will force an input samplerate. (supported by the GUI as well).
2. gone until i'm needed again and have free time. (i don't think there's anything missing in v1.5 features-list. the only thing that missing is to find a way to help people learn about the existence of all those features)

Last edited by DSPguru; 8th May 2003 at 15:42.
DSPguru is offline   Reply With Quote
Old 8th May 2003, 21:43   #40  |  Link
hypercube
Hypercube Author
 
hypercube's Avatar
 
Join Date: Sep 2002
Location: France
Posts: 176
Quote:
what is exactly this fsize field? Where can I find this value. Can you give me a link to that DTS specification file you are talking about?
DTS spec say:

Primary Frame Byte Size V FSIZE 14 bits
(FSIZE+1) is the total byte size of the current frame including primary audio data as well as any extension audio data.
Valid range for FSIZE: 95 to 16 383. Invalid range for FSIZE: 0 to 94.

Quote:
So if I fix the first and last frame simply by removing them, then this file should work fine? Or should I maybe also alter the fsize value?
forget fsize, this is usefull only if you want to parse DTS data.
You have simply to search the DTSWAV sync word (not DTS sync word!!)
in the DATA chunc. cut all bytes before the first occurence of this
sync word. then jump DTSWAV frame after DTSWAV frame, and remove the
last frame (certainly truncated)
it should be not diffcult to do.

Quote:
Also what do you mean saying "your DTS parser"? You mean the DTSWASSource or the WAV2DTS program?
no,no. I build a DTS parser for my pleasure
this is very simple with DTS spec and with my BitStreamReader API.
I will publish this API one day... may be in one or two week.
and may be in 4 week, I will publish my DirectShow API.

Quote:
please please please, join forces with gabest to have a single filter that supports dts&dtswav with seek support and everything.
I will implement seeking when I will be motivated. For instance,
I'm not in "coding period". I prefer to go in the nature with my
girl friend. watching bird, flowers and so on...
__________________
http://hypercube.is.dreaming.org
hypercube is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 21:11.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.