Log in

View Full Version : EVOB De/Multiplexers


Pages : 1 2 3 4 5 6 7 8 9 10 [11] 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37

Pelican9
11th February 2007, 17:41
EVOdemux v0.6 (http://pel.hu/down/EVOdemux.exe) (based on drmpeg's version 0.6)

tomos
12th February 2007, 02:12
Sorry for the double post, I forgot mine was the last



Hi Tomos,

you seem to be one of the only people who has managed to get DD+ converting working properly. I have repeatedly tried emulating your process but with no success. Can you definately confirm your audio tracks really are DD+. Ron posted this a little while ago, pointing out that some plain Dolby Digital tracks are being mislabled as DD+



Another way of confirming true DD+ is by loading it into Scenarist. The info window will tell you the true nature of the file.

Is there any way you could host one of your DD+ files somewhere, so I can test it here and see if I get the same results?

Cheers

will give scenarist a go. trying it now.

i cant imagine them not being dd+ tho - some tracks (casino for example) are almost 2gig, couldnt play them until now and nothing recognised them as ac3 (assuming thats what you mean?) mkvmerge also wont recognise them - sees them as video for some reason.

this works (so far) for the audio for batman begins, superman returns, hulk, casino, superman 2 (donner cut), equilibrium, fast and furious 3, mission impossible 3, swordfish, the mummy, aeon flux, v for vendetta, pitch black and serenity.

no way they are all missing dd+

am trying scenarist now but sticks on 0% loading files

am uploading a 50meg sample now. taking a while but will update post once its up there. :)

ok, link here - http://www.savefile.com/files/484607

Pelican9
12th February 2007, 12:05
I'm sorry to report that it appears EVODemux is still not reporting the correct number of frames after all.

I used version 0.542 to demux my copy of Training Day.


Frame count in EVOdemux (based on drmpeg's demux.c):
procedure countframes(fr,len,track:integer);
var k: integer; parse: longword;
begin
parse:=0;
for k:=fr to fr+len-1 do begin
parse:=(parse shl 8)+buffer[k];
case video_stream_type of
MPEG2: if parse=$00000100 then frames[track]:=frames[track]+1;
H264: if parse=$00000109 then frames[track]:=frames[track]+1;
VC1: if parse=$0000010d then frames[track]:=frames[track]+1;
else log('Unidentified video stream type!');
end;
end;
end;

The counter counts special four bytes long sequences (e.g. 00 00 01 0d in VC-1 stream) in the video stream itself, but I think this algorythm isn't good enough, because it could be count more than the real frame starts if this four bytes sequence appears somewhere else in the video data.
drmpeg:
Could you specify more precisely how we can recognize the FRM_SC (frame start code) in the stream?

Clown shoes
12th February 2007, 12:54
am uploading a 50meg sample now. taking a while but will update post once its up there. :)

ok, link here - http://www.savefile.com/files/484607

Thanks Tomos, I will not get a chance to look at it until this evening as the Scenarist machine is currently in use and probably will be all day. I'm hoping I will have no luck with this file either, which will at least point towards your solution working. Then it will just be a case of working out the correct combination of filters you have running.

@Pelican9

I am genuinely sorry to be the bearer of such bad tidings :(

Congratulations on such great progress right now though. Things are moving forwards so quickly.

LOGiC
12th February 2007, 13:02
no probs.

i've so far, muxed equilibrium into mkv with re-encoded audio and finally finished re-encoding v for vendetta with x264 to fit on a dual layer dvd (with original audio)

for the audio, since it plays direct in mpc i re-encode it (only 2 ch for now. no need for more since i plan to keep original dd+ audio. this is for testing and so i can watch the movie now on my pc)

in graphedit btw, my filters work like this:

Quote:
ddp file > intervideo audio decoder > matrixmuxer > default directsound device

in vdub mod, i use an avs script like this

Quote:
v = directshowsource("PEVOB_1_2.rebuilt.VC-1.stream.0.vc1",fps=23.976,framecount=190414)
a = directshowsource("PEVOB_1_2.rebuilt.DD+.stream.02.ddp")


audiodub(a,v)

the demux happens via evodemux 541 of course.

that script lets me save the audio as an uncompressed wave file.

then i run it in belight to compress it to AAC.




@Tomos,

can you please help me with these things ? I tried a couple of times, but I can not get the audio file to be an uncompressed wave file. How did you to this, what do I have to do ? Do I have to use graphedit AND vdubmod ? I did not see in the script where a graph is being loaded into vdubmod. Sorry, I am a quite newbie but I am very interested to get the sound out of the file.

Thank you in advance.

Regards

tomos
12th February 2007, 13:14
i didnt have to use a grf file.

to the best of my knowledge, you only have to do this if your default filters dont work out as they should - like when i drop an evo file into graphedit, it connects to the elecard demultiplexer and thats it. nothing after. obviously this means i cant just play an evo direct. i would have to build a grf file and use that instead.

at the moment i am trying to get the windvd audio decoder to send out 5.1 audio instead of stereo. no joy so far, all settings results in matrix muxer getting basic stereo.

anyway, here's a screen grabby of my graphedit after dropping a ddp file in there. no changes apart from getting the properties of the filters in use.

http://img61.imageshack.us/img61/4183/grabbypk7.th.jpg (http://img61.imageshack.us/my.php?image=grabbypk7.jpg)

hope its useful :)

---------------

forgot the next bits.

anyway, think i included this before but i'll add it here as well. my avs file:

v = directshowsource("PEVOB_1_2.rebuilt.VC-1.stream.0.vc1",fps=23.976,framecount=179743)
a = directshowsource("PEVOB_1_2.rebuilt.DD+.stream.00.ddp")


audiodub(a,v)


#directshowsource("PEVOB_1.VC-1.stream.0.vc1",fps=23.976,framecount=179743)
#crop( 2, 140, -2, -140)
#ConvertToYV12()

the first part (without the #'s) is just to extract the audio. this was for v for vendetta. this loads in vritualdub with no probs. it might work in vdub but havent tried. would assume so.

go to streams > stream list and it shows in there. right click - change to full processing mode and make sure compression is set for PCM. after that, 'save wav' to save a 1.5-2gig wav file and thats it. encode to whatever you like.

thats worked for me now for everything i've tried. (list of movies tested a few posts earlier).

the #ed parts are of course to load the video only for re-encoding to AVC

Clown shoes
12th February 2007, 13:34
Hi Logic, could you try Tomos's DDP file that he was good enough to upload. If we are all working with the same test file it should slightly increase our speed in finding a workable solution. Good luck with the 5.1 Tomos. :)

Daodan
12th February 2007, 14:15
About Tomos' solution: to me it only gave upmixed 2.0 sound. Yes, the output is 5.1 channels, but except 2, the rest are empty. The ivi audio decoder seems to receive 2.0 only, and you only upmix by choosing 5.1 output.
Clown shoes: same training day gave 175322 framecount, which seems to the right value. Using the gui 0.542

Clown shoes
12th February 2007, 14:32
Clown shoes: same training day gave 175322 framecount, which seems to the right value. Using the gui 0.542

Well that's damn strange!! I used 0.542 and got a 175677 framecount. I did it several times as well! Can you tell me your method? Did you have all the Evodemux options selected? I'm wondering whether it has something to do with either the fast count or the joining procedure. Can you tell me what running time was reported?

Thanks :)

drmpeg
12th February 2007, 14:33
Frame count in EVOdemux (based on drmpeg's demux.c):

The counter counts special four bytes long sequences (e.g. 00 00 01 0d in VC-1 stream) in the video stream itself, but I think this algorythm isn't good enough, because it could be count more than the real frame starts if this four bytes sequence appears somewhere else in the video data.
drmpeg:
Could you specify more precisely how we can recognize the FRM_SC (frame start code) in the stream?
Should be okay. I believe start code emulation is avoided in all three codecs.

Ron

Daodan
12th February 2007, 14:49
Clown shoes, it might have been 541 (if you don't have it anymore pm me), but not sure. Options left to default, only thing demuxed was the video. Sorry, can't tell you more, as I don't have the space atm to repeat the demuxing.
drmpeg, do you happen to have some stashed away tool that can demux dts-hd from m2ts? Tried xport and all possible tools and none even see the dts being there (evodemux sees mlp, but demuxes 0 byte file). Thanks.

drmpeg
12th February 2007, 15:00
drmpeg, do you happen to have some stashed away tool that can demux dts-hd from m2ts? Tried xport and all possible tools and none even see the dts being there (evodemux sees mlp, but demuxes 0 byte file). Thanks.
I'm working on an update to xport for Blu-ray. If you could provide a short sample (100 Mbytes or so), that would make it easy.

Ron

Pelican9
12th February 2007, 16:04
Should be okay. I believe start code emulation is avoided in all three codecs.

Ron
Your code is OK.
I've found this:
"To prevent accidental emulation of the Start Code in the coded bit stream, SMPTE 421M defines an encapsulation mechanism that uses byte stuffing."

Clown shoes
12th February 2007, 16:09
Well that's very strange then! I definately had duplicated frames at the end of my video and what's even stranger is Daodan just reported demuxing the same film with an earlier (possibly) version of Evodemux and getting a different framecount which seems to be correct. Seems very odd.

Pelican9
12th February 2007, 23:04
EVOdemux 0.61 (http://pel.hu/down/EVOdemux.exe)

Change for v0.61

- Write 'traditional' format .sup files
- Display the duration of the video streams (calculating with 23.976 fps)
- Open VOB files (DVD)

Phluxed
12th February 2007, 23:55
Just out of curiousity, could someone update me where we stand in progress of demuxing properly and re-encoding?

Also, if we're making significant progress maybe put a guide up how to convert files after demuxing.

Congrats on the work so far guys!

Daodan
12th February 2007, 23:59
drmpeg, here's a 100 mb sample: http://www.filefactory.com/file/6e2163/

It has mpeg2, dts-hd and 4 ac3 streams.

TNHitokiRi
13th February 2007, 01:10
Just out of curiousity, could someone update me where we stand in progress of demuxing properly and re-encoding?

Also, if we're making significant progress maybe put a guide up how to convert files after demuxing.

Congrats on the work so far guys!


Ok, so far:

1.) Video can be demuxxed and decoded. There is success sticking it into avisynth, and it is possible to reencode to whatever format.

2.) Audio can be demuxxed, but cannot be decoded properly. There has been success decoding the audio to a 2ch upmix but no 5.1 yet.

3.) Subtitles can be demuxxed and Pelican9 has a program that will let you input the proper text for each subpicture. There is no OCR support like in subrip yet.

Pelican9
13th February 2007, 01:39
Well that's very strange then! I definately had duplicated frames at the end of my video and what's even stranger is Daodan just reported demuxing the same film with an earlier (possibly) version of Evodemux and getting a different framecount which seems to be correct. Seems very odd.

The previous version had a bug.
I don't think that version counts more precise.
But don't worry, I'm working on it. :)
The actual version display the playing time (counted frames/23.976), so you can compare it to powerdvd's (or other sw) time info

Phluxed
13th February 2007, 02:17
Ok, so far:

1.) Video can be demuxxed and decoded. There is success sticking it into avisynth, and it is possible to reencode to whatever format.

2.) Audio can be demuxxed, but cannot be decoded properly. There has been success decoding the audio to a 2ch upmix but no 5.1 yet.

3.) Subtitles can be demuxxed and Pelican9 has a program that will let you input the proper text for each subpicture. There is no OCR support like in subrip yet.

Very solid. I'm excited to see what comes in the weeks to come.

woah!
13th February 2007, 04:01
i am finding a 2 sec difference in the timeline between the video/audio. frame total given from 0.61 demux is 147596 which equals 1:42:35 in MPC.

but the audio when piped through MPC using a basic avs shows 1:42:33

if i work out the framecount in secs myself then the total should be 147572 for a 1:42:35 timeline at 23.976 anyway, which make the count from demux wrong.

Opening file PEVOB_1.EVO
File size: 6883 Mbytes.
It contains 1 video stream and 4 audio streams.
VC-1 video stream 0 found!
DD+ audio stream 3 found!
Stream 3 is Dolby Digital Plus
frame size = 768, number of blocks per frame = 6
bitrate = 192000, sampling rate = 48000
mode = 2/0, bsid = 16, lfe on =0
DD+ audio stream 2 found!
Stream 2 is Dolby Digital Plus
frame size = 768, number of blocks per frame = 6
bitrate = 192000, sampling rate = 48000
mode = 2/0, bsid = 16, lfe on =0
DD+ audio stream 1 found!
Stream 1 is Dolby Digital Plus
frame size = 256, number of blocks per frame = 6
bitrate = 64000, sampling rate = 48000
mode = 1/0, bsid = 16, lfe on =0
DD+ audio stream 0 found!
Stream 0 is Dolby Digital Plus
frame size = 1280, number of blocks per frame = 3
bitrate = 640000, sampling rate = 48000
mode = 3/2, bsid = 16, lfe on =1
Subpicture stream 1 found!
Done.
Opening file PEVOB_1.EVO
File size: 6883 Mbytes.
Creating G:\2\PEVOB_1_2.VC-1.stream.0.mpv
Creating G:\2\PEVOB_1_2.DD+.stream.00.ddp
Creating G:\2\PEVOB_1_2.Subpicture.01.sup
Continue on PEVOB_2.EVO
Done.
147596 frames count in video stream 0.


also i tried every ddp audio file and they all ran at that same time above.

Pelican9
13th February 2007, 10:59
i am finding a 2 sec difference in the timeline between the video/audio. frame total given from 0.61 demux is 147596 which equals 1:42:35 in MPC.

but the audio when piped through MPC using a basic avs shows 1:42:33

if i work out the framecount in secs myself then the total should be 147572 for a 1:42:35 timeline at 23.976 anyway, which make the count from demux wrong.

also i tried every ddp audio file and they all ran at that same time above.

The EVOdemux counts the video frames.
147596 frames means 1:42:35,989 (with 23.976 fps) (v0.611 displays the time after 'Demux' too)
I think, the audio streams start later than the video stream.
There is a silent 2 secs at the begining your movie, isn't it?

drmpeg
13th February 2007, 12:09
The EVOdemux counts the video frames.
147596 frames means 1:42:35,989 (with 23.976 fps) (v0.611 displays the time after 'Demux' too)
I think, the audio streams start later than the video stream.
There is a silent 2 secs at the begining your movie, isn't it?
Be aware that demux (and EVOdemux) does not align the audio to the video at the beginning or end of the .evo stream. In other words, A/V sync is only guaranteed if you are demuxing from the beginning of the movie. Video and audio timelines will only match if you demux the entire movie.

If you are demuxing some fragment, then you will possibly have A/V sync problems and/or un-decodable video frames before the first sequence header.

These things can be fixed, it's just more code (in fact, it's already done in xport for Blu-ray).

Ron

Clown shoes
13th February 2007, 14:15
I think, the audio streams start later than the video stream.
There is a silent 2 secs at the begining your movie, isn't it?

That would explain the running time discrepancy between my DD+ track and my encoded .h264. Is this a random thing as far as you know? or might there be a way for us to accertain how much delay there will be before a stream starts?

Pelican9
13th February 2007, 14:55
or might there be a way for us to accertain how much delay there will be before a stream starts?

Yes. See drmpeg's comment.

tomos
13th February 2007, 16:25
in regards to muxing vc1 into mkv, anyone able to verify the probs i have in muxing (i.e size limitation) in this (http://forum.doom9.org/showthread.php?p=953631#post953631) post in the other thread?

Pelican9
14th February 2007, 01:04
Change for v0.613

- 'Detailed info' option for the extra stream info

Change for v0.612

- Display VC-1 video stream information
- Display the first PTS of the streams

EVOdemux v0.613 (http://pel.hu/down/EVOdemux.exe)

Thanks to drmpeg for his help.

tomos
14th February 2007, 01:31
thanking you pelican9 and drmpeg for your work in this :)

woah!
14th February 2007, 02:36
sorry i didnt get back until now, but my work day is now done.

yes i believe it is the audio not the video which is incorrect. the framecount must be correct and i will see about adding a delay at the beginning of the audio to match times.

i am using (or will be) mp4box to mux my aac audio and mp4 video encodes. i will report back later once i have some more news :)

mosb3rg
14th February 2007, 04:41
Sup fellas, freshly dumped The Departed HD DVD and it does have MLP (merdian lossless packing) commonly seen in DVD-Audio Discs there are some ways to decode it once its demuxed properly and we can make a very nice DTS 6 channels , although as of now i cannot take the mlp out of the .evo once i've tried to rebuild it. im not quite sure why it wont demux the MLP from both with continue to second evo checked.

If someone else could check and see if there able to get the entire MLP demuxed from the rebuild entiremovie.evo

Mosb3rg

woah!
14th February 2007, 07:04
well i see i am having an issue using Sonic videodecoder filter as it wants a 29.97 framerate. if i feed my script with 23.976fps and the amount of frames demux0613 gives me, i get alot of random scenes jumping from one part of the film to another part at random.

now if i feed my script the same demuxed file but at the 29.97 framerate instead and then use TDecimate(cycleR=1) to bring the framerate down to 23.976fps afterwards i get a good output source. so sonic must do its internal pulldown to 29.97 if this is correct yes?

Pelican9
14th February 2007, 09:13
Sup fellas, freshly dumped The Departed HD DVD and it does have MLP (merdian lossless packing) commonly seen in DVD-Audio Discs there are some ways to decode it once its demuxed properly and we can make a very nice DTS 6 channels , although as of now i cannot take the mlp out of the .evo once i've tried to rebuild it. im not quite sure why it wont demux the MLP from both with continue to second evo checked.

If someone else could check and see if there able to get the entire MLP demuxed from the rebuild entiremovie.evo

Mosb3rg

I haven't got an EVO with MLP stream yet, so I cannot check it.
Could you (or somebody else) share a smaller piece (20-200MB) of your evo's beginning part?

Deckard2019
14th February 2007, 09:47
If someone else could check and see if there able to get the entire MLP demuxed from the rebuild entiremovie.evo
I get one for Batman Begins with EVODemux 0.61. Don't know if it's entire ...

vsv
14th February 2007, 11:06
MLP=TrueHD

Pelican9
14th February 2007, 18:13
MLP=TrueHD
MLP<>TrueHD :) MLP=Meridian Lossless Packing
Relation between Dolby True HD and MLP (http://www.transtec.nl/download.php?id=189&file=Pro%2Fdolby%2FTrueHDFAQ.pdf)

Pelican9
14th February 2007, 21:08
Change for v0.614

- Display H.264 video stream information
- Display MPEG2 video stream information
- Display MPEG2 audio stream information

EVOdemux v0.614 (http://pel.hu/down/EVOdemux.exe)

junooni
15th February 2007, 03:51
Has anyone here tried the "Scenarist Nav Filter" This seems to be a file source filter and HD Demuxer. connects with Sonic Video decoder and InterVideo Audio Decoder. I don't know if the iviaudio filter's property sheet can be trusted but it shows LPCM 8ch?

http://img75.imageshack.us/img75/9515/scenaristnavdr2.jpg

Easy123
15th February 2007, 14:22
Wow! Just tested Video only (which was demuxed by EvoDemux) with Sonic Nav Filter, Sonic Cinemaster Video Decoder and Video Renderer using graphedit. Framerate shown is 23,98 fps and not 29,97, which is good news for me.. :D

tomos
15th February 2007, 15:58
hmm, don't have nav filter here. do you mean sonic HD nav?

Jan2001
15th February 2007, 17:13
Has anyone here tried the "Scenarist Nav Filter" This seems to be a file source filter and HD Demuxer.

Which dll is that? I only have sonicHDnav.dll and that one does not have input- and output pins in graphedit.

Daodan
15th February 2007, 17:41
Can anyone tell me how you got the nav filter to work? When I insert the filter in graph it's just a box without any pins (and it doesn't ask me for a file input or anything). Thanks.

junooni
15th February 2007, 17:52
Its called "Scenarist Nav Filter" and is different from Sonic nav filter. Here is a screen shot. It was installed when i installed scenaraist tool.
http://img253.imageshack.us/img253/66/scenaristnav2mx8.jpg

Clown shoes
15th February 2007, 20:11
Well I can duplicate your graph without any problem, but I only get a 1 channel output!

Daodan
15th February 2007, 20:29
Again I beat you. I get 2!:D

tomos
15th February 2007, 20:31
ahhh, dont have that dll for some reason.

Clown shoes
15th February 2007, 20:43
?? That's very odd, you should have it if you have the Sonic HD Nav filter. It's part of Scenarist 4.1.

Junooni, which version of Win DVD do you have installed? Maybe that's the magic ingredient.

chros
15th February 2007, 21:06
@Easy123: I have 29.97 fps with this graph and the framecount was totally wrong: 59674850 ... :(
avs:
DirectShowSource("mainintro-demuxed-v-s.GRF", audio=false)
LanczosResize(1280,720)
ConvertToYV12()
Info()

And the audio is only 1 ch for me too ...
WinDVD Audio decoder dll: 8.0.6.101 from InterVideo WinDVD Platinum v8.0.6.101
And the logo is blue on it, and it says DVD Xpack.
It reports: Format: (none) , 16bit,48K,1ch

PS: sample was Serenity's mainintro.evo .
info from Evo demux 0.615
Opening file MAININTRO.EVO
File size: 130 Mbytes.
It contains 1 video stream and 1 audio stream.
VC-1 video stream 0 found!
First PTS = 00000D75
Sequence Header found
0 frames before first I-frame
Advanced Profile
Level = 3
Chroma Format = 4:2:0
Size = 1920x1080
Pulldown = 1
Interlace = 1
Display Horizontal size = 1920
Display Vertical size = 1080
Aspect ratio = 1:1 (square samples)
Frame Rate = 29,97002997003 (30000/1001)
DD+ audio stream 0 found!
First PTS = 00000D75
Stream 0 is Dolby Digital Plus
frame size = 1536, number of blocks per frame = 3
bitrate = 768000, sampling rate = 48000
mode = 3/2, bsid = 16, lfe on =1
Done.

1541 frames (0:01:04 s) count in video stream 0.

junooni
15th February 2007, 22:41
Sorry guys the audio still doesn't work. It reports it correctly but no actual audio. It was worth a shot. Now we have one more filter to waste our time with. I guess we are back to square one. :(

On a side note
Scenarist Nav -> Cyberlink Audio dec -> Cyberlink Audio Renderer chain (CL6.5) reports 6ch audio as well but thats it, no actual playback on my system. Can some one feed this chain with spdif to see if there is some output? I don't have audio stuff setup correctly here.
At this point there are so many filters on my machine i don't know where they came from.

Clown shoes
15th February 2007, 22:57
Can you tell me what version of WinDVD you are running so I can try to replicate.

junooni
15th February 2007, 23:12
Can you tell me what version of WinDVD you are running so I can try to replicate.

Intervideo codec is from
WinDVD 8 Version: 7.0 B27.205
iviaudio.ax ver: 7.0.27.205

and

Cyberlink Audio dec and Cyberlink Audio Renderer are from
PowerDVD/HDDVD 6.5