Log in

View Full Version : eac3to - enhancement suggestion for multi pgc titles


NanoBot
23rd September 2009, 12:44
Hi everybody,

a few days ago I purchased the season 1 box of "Star Trek - The Original Series" ( german version ). Each disk of this set contains a couple of episodes, and each of the episodes is available in an original version and a modern version containing some special effects as CGI. Those two versions per episode are implemented as one titleset / playlist with two angles / PGCs, e.g.

1) 00002.mpls (angle 1), 0:50:43
[69+71+72+74+75+77+78+80+81+83+84+86+87+89+90+92+93+95+96+98+99+101+102+104+105+107+108+110+111+113+114+116+203].m2ts
- Chapters, 6 chapters
- VC-1, 1080p24 /1.001 (16:9)
- AC3, German, stereo, 48khz
- DTS Master Audio, English, multi-channel, 48khz
- AC3, English, stereo, 48khz
- AC3, Spanish, stereo, 48khz
- AC3, French, stereo, 48khz
- AC3, Italian, stereo, 48khz

2) 00002.mpls (angle 2), 0:50:43
[70+71+73+74+76+77+79+80+82+83+85+86+88+89+91+92+94+95+97+98+100+101+103+104+106+107+109+110+112+113+115+116+203].m2ts
- Chapters, 6 chapters
- VC-1, 1080p24 /1.001 (16:9)
- AC3, German, stereo, 48khz
- DTS Master Audio, English, multi-channel, 48khz
- AC3, English, stereo, 48khz
- AC3, Spanish, stereo, 48khz
- AC3, French, stereo, 48khz
- AC3, Italian, stereo, 48khz



Now my goal is to backup the disks by creating matroska files with two editions from each episode, one for the original version and one for the modern version. To do so, I need to demultiplex the m2ts file segments in a way that all segments are included, regardless if they belong to the first PGC or the second PGC. ATM I am using a manually assembled command like that


eac3to 00069.m2ts+00070.m2ts+00071.m2ts+00072.m2ts...+00203.m2ts 1:h:\video.mkv 2:h:\audio.de.ac3 -keepdialnorm 3:h:\audio.en.flac -down16 -down6


This works fine including the correction of the overlapping audio in a second pass. Nevertheless, it is cumbersome and fault-prone to manually add all those m2ts parts into the command line.

Therefore I would like to suggest the following enhancement to eac3to:

Is it possible to alter eac3to in a way that, if a multi PGC titleset is detected, it creates an additional virtual PGC, which contains all m2ts parts, regardless to which angle / PGC they normally belong ? That would also be helpful to create matroska files with several editions containing different cut versions of a movie. E.G. "Close Encounters Of The Third Kind" contains three different cut versions, or LOTR contains the cinematic and the extendend version.

C.U. NanoBot

nurbs
23rd September 2009, 13:23
Try
eac3to h:\startrekfolder 1) 1:h:\chapter.txt 2:h:\video.mkv 3:h:\audio.de.ac3 -keepdialnorm 4:h:\audio.en.flac -down16 -down6
You can select the episodes/cuts with 1), 2), ...

NanoBot
23rd September 2009, 14:17
Hi,

of course I could do that, if my goal would be to generate two seperate matroska files for each version. But my goal is to have both cut versions in the same matroska file. With such an "all-included" matroska file, I am able to use ordered chapters to generate two editions of the episode, e.g.


<?xml version="1.0" encoding="UTF-8"?>

<!-- <!DOCTYPE Tags SYSTEM "matroskatags.dtd"> -->

<Chapters>
<EditionEntry>
<EditionFlagOrdered>1</EditionFlagOrdered>
<EditionFlagHidden>0</EditionFlagHidden>
<EditionFlagDefault>1</EditionFlagDefault>
<EditionUID>588091805</EditionUID>
<ChapterAtom>
<ChapterUID>2348935834</ChapterUID>
<ChapterFlagHidden>0</ChapterFlagHidden>
<ChapterFlagEnabled>1</ChapterFlagEnabled>
<ChapterDisplay>
<ChapterString>Kapitel 1</ChapterString>
<ChapterLanguage>ger</ChapterLanguage>
<ChapterCountry>de</ChapterCountry>
</ChapterDisplay>
<ChapterTimeStart>00:00:00.000000000</ChapterTimeStart>
<ChapterTimeEnd>00:00:23.982291666</ChapterTimeEnd>
</ChapterAtom>
<ChapterAtom>
<ChapterUID>309741985</ChapterUID>
<ChapterFlagHidden>0</ChapterFlagHidden>
<ChapterFlagEnabled>1</ChapterFlagEnabled>
<ChapterDisplay>
<ChapterString>Kapitel 2</ChapterString>
<ChapterLanguage>ger</ChapterLanguage>
<ChapterCountry>de</ChapterCountry>
</ChapterDisplay>
<ChapterTimeStart>00:00:48.006291666</ChapterTimeStart>
<ChapterTimeEnd>00:03:33.129583333</ChapterTimeEnd>
</ChapterAtom>
<ChapterAtom>
<ChapterUID>1484703120</ChapterUID>
<ChapterFlagHidden>0</ChapterFlagHidden>
<ChapterFlagEnabled>1</ChapterFlagEnabled>
<ChapterDisplay>
<ChapterString>Kapitel 3</ChapterString>
<ChapterLanguage>ger</ChapterLanguage>
<ChapterCountry>de</ChapterCountry>
</ChapterDisplay>
<ChapterTimeStart>00:03:33.171291667</ChapterTimeStart>
<ChapterTimeEnd>00:04:49.038750000</ChapterTimeEnd>
</ChapterAtom>
<ChapterAtom>
<ChapterUID>859231423</ChapterUID>
<ChapterFlagHidden>0</ChapterFlagHidden>
<ChapterFlagEnabled>1</ChapterFlagEnabled>
<ChapterDisplay>
<ChapterString>Kapitel 4</ChapterString>
<ChapterLanguage>ger</ChapterLanguage>
<ChapterCountry>de</ChapterCountry>
</ChapterDisplay>
<ChapterTimeStart>00:06:04.989625000</ChapterTimeStart>
<ChapterTimeEnd>00:13:47.243083333</ChapterTimeEnd>
</ChapterAtom>
</EditionEntry>
<EditionEntry>
<EditionFlagOrdered>1</EditionFlagOrdered>
<EditionFlagHidden>0</EditionFlagHidden>
<EditionFlagDefault>0</EditionFlagDefault>
<EditionUID>3460915386</EditionUID>
<ChapterAtom>
<ChapterUID>353686432</ChapterUID>
<ChapterFlagHidden>0</ChapterFlagHidden>
<ChapterFlagEnabled>1</ChapterFlagEnabled>
<ChapterDisplay>
<ChapterString>Kapitel 1</ChapterString>
<ChapterLanguage>ger</ChapterLanguage>
<ChapterCountry>de</ChapterCountry>
</ChapterDisplay>
<ChapterTimeStart>00:00:24.024000000</ChapterTimeStart>
<ChapterTimeEnd>00:00:47.964583333</ChapterTimeEnd>
</ChapterAtom>
<ChapterAtom>
<ChapterUID>1075723171</ChapterUID>
<ChapterFlagHidden>0</ChapterFlagHidden>
<ChapterFlagEnabled>1</ChapterFlagEnabled>
<ChapterDisplay>
<ChapterString>Kapitel 2</ChapterString>
<ChapterLanguage>ger</ChapterLanguage>
<ChapterCountry>de</ChapterCountry>
</ChapterDisplay>
<ChapterTimeStart>00:00:48.006291666</ChapterTimeStart>
<ChapterTimeEnd>00:03:33.129583333</ChapterTimeEnd>
</ChapterAtom>
<ChapterAtom>
<ChapterUID>2220986803</ChapterUID>
<ChapterFlagHidden>0</ChapterFlagHidden>
<ChapterFlagEnabled>1</ChapterFlagEnabled>
<ChapterDisplay>
<ChapterString>Kapitel 3</ChapterString>
<ChapterLanguage>ger</ChapterLanguage>
<ChapterCountry>de</ChapterCountry>
</ChapterDisplay>
<ChapterTimeStart>00:04:49.080458333</ChapterTimeStart>
<ChapterTimeEnd>00:06:04.947916667</ChapterTimeEnd>
</ChapterAtom>
<ChapterAtom>
<ChapterUID>2033788346</ChapterUID>
<ChapterFlagHidden>0</ChapterFlagHidden>
<ChapterFlagEnabled>1</ChapterFlagEnabled>
<ChapterDisplay>
<ChapterString>Kapitel 4</ChapterString>
<ChapterLanguage>ger</ChapterLanguage>
<ChapterCountry>de</ChapterCountry>
</ChapterDisplay>
<ChapterTimeStart>00:06:04.989625000</ChapterTimeStart>
<ChapterTimeEnd>00:13:47.243083333</ChapterTimeEnd>
</ChapterAtom>
</EditionEntry>
</Chapters>


C.U. NanoBot

nurbs
23rd September 2009, 14:25
Sorry, misunderstood what you are trying to do.

mbcd
24th September 2009, 18:50
I think he means something as "linked" mkvs, but by myself I dind't understood this MKV-feature by myself.

He wants ONE MKV which includes both version (old/new).

I think linked MKV is maybee the best way, because there are only some scenes different for both versions.

In eac3to you have to find simular m2ts-parts in both versions, pack them into one mkv, then comes the both-version-m2ts, and then again the next m2ts(or more parts) of both versions.

I think the Problem is here not eac3to but mkv for correct usage. There could be also some problems if the breaks because of seamles branching is not exact and you have littel overlapping in the different-version-parts ...

Its not easy to do it in a good way.

NanoBot
24th September 2009, 19:36
The information needed about the usage of ordered chapters to create different editions of the same movie included in one mastroska file are available here:

http://www.mod16.org/hurfdurf/?p=8

You might have a look at the section "Editions and you", then you will be able to reproduce what I am doing with the episodes on those disks. You will find out that creating the needed xml chapter file is not as difficult as it seems to be at first sight, since it is possible to do most of the work with the builtin chapter editor of mmg / mkvtoolnix.

So the creation of the ordered chapters xml file and the generation of the final mastroska file with two editions is not my problem, this already works fine here.

In fact, the reason for my enhancement suggestion is only to make it easier to create the needed "all-angles-in-one" video and audio files using eac3to.

C.U. NanoBot