Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
eac3to Exploiting Seamless Branching
#1
The Aluminum Falcon raised this topic a while back on ot.com.  See his informative thread here.  While he uses tsMuxeR, eac3to is a better tool for the job because it runs a second pass when fixing the gaps that result from seamless branching. EDIT: See schorman's posts below.
  • The only tool you need is eac3to.
  • I'll use Aliens as an example and add other playlists as and when.
  • Adjust everything to fit your directory structure, e.g., change "X" to whatever; do a "find and replace".  
  • When joining M2TS files like this, make sure you have space on the drive in which eac3to is located as well as the drive in which the BD is located. This is because eac3to makes temporary files on the drive it occupies.
  • If your branching disc has a Dolby TrueHD track, you must decode it instead of extracting it.  DTS-HD MA tracks can be extracted without incident.
  • Use -no2ndpass unless you have reason not to do so.
  •  So far, this approach works only on standard BDs.  UHD BDs have sync issues.
Aliens: CBS TV cut

Code:
"filepath\eac3to334\eac3to.exe" "X:\ALIENS_WW\BDMV\Stream\01106.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01107.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01108.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01140.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01110.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01142.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01112.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01144.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01114.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01147.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01117.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01149.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01119.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01146.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01121.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01124.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01125.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01141.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01127.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01128.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01129.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01130.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01131.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01133.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01134.m2ts"+"X:\ALIENS_WW\BDMV\Stream\01137.m2ts"  -demux -no2ndpass

Alien: Extended

Code:
"filepath\eac3to334\eac3to.exe" "X:\ALIEN_WW\BDMV\STREAM\00983.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\00985.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\00984.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\00986.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\00987.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\01016.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\00988.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\00991.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\00989.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\01018.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\00992.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\00995.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\00993.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\00997.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\00996.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\00998.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\00999.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\01001.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\01000.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\01003.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\01002.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\01004.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\01005.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\01007.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\01006.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\01008.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\01009.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\01027.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\01010.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\01013.m2ts"+"X:\ALIEN_WW\BDMV\STREAM\01012.m2ts" -demux -no2ndpass

Alien 3: Extended
Code:
"filepath\eac3to334\eac3to.exe"
00750.m2ts+00752.m2ts+00753.m2ts+00701.m2ts+00755.m2ts+00703.m2ts+00757.m2ts+00758.m2ts+00759.m2ts+00760.m2ts+00761.m2ts+00762.m2ts+00763.m2ts+00764.m2ts+00765.m2ts+00766.m2ts+00767.m2ts+00768.m2ts+00769.m2ts+00770.m2ts+00771.m2ts+00772.m2ts+00773.m2ts+00774.m2ts+00775.m2ts+00776.m2ts+00777.m2ts -demux -no2ndpass

Alien 3: Extended (chest-burster ending)
Code:
"filepath\eac3to334\eac3to.exe"
00750.m2ts+00752.m2ts+00753.m2ts+00701.m2ts+00755.m2ts+00703.m2ts+00757.m2ts+00758.m2ts+00759.m2ts+00760.m2ts+00761.m2ts+00762.m2ts+00763.m2ts+00764.m2ts+00765.m2ts+00766.m2ts+00767.m2ts+00768.m2ts+00769.m2ts+00770.m2ts+00771.m2ts+00772.m2ts+00773.m2ts+00774.m2ts+00775.m2ts+00713.m2ts+00777.m2ts -demux -no2ndpass

Close Encounters of the Fourth Tongue Kind (1977)

This uses the 30th Anniversary Edition, not the 40th Anniversary one that followed in 2017.  I should imagine it would work with the first Sony BD too.  Use the DTS-HD MA track.

Chronology: Roy is fired -> India sequence -> Lacombe's auditorium speech -> Roy goes back to the road with his camera
*no McDonald's sign

Code:
"filepath\eac3to334\eac3to.exe" "X:\CETK\BDMV\STREAM\00000.m2ts"+"X:\CETK\BDMV\STREAM\00002.m2ts"+"X:\CETK\BDMV\STREAM\00006.m2ts"+"X:\CETK\BDMV\STREAM\00008.m2ts"+"X:\CETK\BDMV\STREAM\00009.m2ts"+"X:\CETK\BDMV\STREAM\00010.m2ts"+"X:\CETK\BDMV\STREAM\00013.m2ts"+"X:\CETK\BDMV\STREAM\00015.m2ts"+"X:\CETK\BDMV\STREAM\00016.m2ts"+"X:\CETK\BDMV\STREAM\00018.m2ts"+"X:\CETK\BDMV\STREAM\00020.m2ts"+"X:\CETK\BDMV\STREAM\00022.m2ts"+"X:\CETK\BDMV\STREAM\00024.m2ts"+"X:\CETK\BDMV\STREAM\00025.m2ts"+"X:\CETK\BDMV\STREAM\00026.m2ts"+"X:\CETK\BDMV\STREAM\00027.m2ts"+"X:\CETK\BDMV\STREAM\00118.m2ts"+"X:\CETK\BDMV\STREAM\00119.m2ts"+"X:\CETK\BDMV\STREAM\00032.m2ts"+"X:\CETK\BDMV\STREAM\00033.m2ts"+"X:\CETK\BDMV\STREAM\00034.m2ts"+"X:\CETK\BDMV\STREAM\00037.m2ts"+"X:\CETK\BDMV\STREAM\00038.m2ts"+"X:\CETK\BDMV\STREAM\00040.m2ts"+"X:\CETK\BDMV\STREAM\00041.m2ts"+"X:\CETK\BDMV\STREAM\00043.m2ts"+"X:\CETK\BDMV\STREAM\00044.m2ts"+"X:\CETK\BDMV\STREAM\00046.m2ts"+"X:\CETK\BDMV\STREAM\00048.m2ts" 1: "X:\CETK\BDMV\video.264"  3: "X:\CETK\BDMV\audio.dtshd" -no2ndpass
Reply
Thanks given by: williarob
#2
*added Close Encounters of the Fourth Tongue Kind (1977)*
Reply
Thanks given by:
#3
Hi Chewtobacca!

I'm sort of bumping another old thread of yours, but I think I can share good information here too.

While I know very little about how eac3to and other softwares work, in my research for the best tool to demux seamless branced discs (specially UHDs), I came to know of DGDemux.

It's a tool specifically designed with seamless branced disc in mind and from what I know, the only one capable of properly demuxing DTHD Atmos tracks like Toy Story 4 and Onward UHDs and many other discs with multiple gaps.

It's not a free tool, but upon contribution the developer grants lifetime update support and other tools he's developed.

ps: I gain nothing from advertising the tool, I'm just a (very satisfied) paying costumer.
Reply
Thanks given by:
#4
Yeah, I have a license as well. DGDemux wasn't available when I posted the guide, but it can indeed accomplish the same task.
Reply
Thanks given by:
#5
It does appear to give slightly different results, but I don't know whether it's more or less accurate than eac3to.

The 2015 T2 audio is not bit identical when demuxed with both.
Reply
Thanks given by:
#6
That's probably a consequence of how the gaps are processed.  The two apps might well take different approaches, as tsMuxeR and eac3to always have.

There's plenty of fun to be had with that T2 BD.  It's possible to recreate ADM's Fourth Option, amongst other possibilities.  I meant to add it to the list but never got round to it.
Reply
Thanks given by:
#7
Chewtobacca,
In every instance I have tested, eac3to will correctly drop repeated audio frames in the first pass. Unfortunately, there is a strong tendency for it to actually screw it up by dropping extra audio frames with the second pass. I don't know if this is due to the timing differences when working with the video frame rate and different audio frame rates, but whereas the appropriate behavior is to just drop repeated audio, the program seems to try to take audio drift into account, which isn't acutally necessary. I have tested at this point, between 20 to 30 different seamless branching discs, and I have never found a problem when using the "-no2ndpass" for extracting dtshd-ma, dts, or ac3. This tends to be a bigger issue with ac3 than dts.

As for TrueHD, the freeware version of CloneBD can be used to demux TrueHD/Atmos tracks from a decrypted/ripped BD backup folder, correctly avoiding any repeated or dropped audio frames.

This is important, because once you decode TrueHD with Atmos, you cannot re-encode with Atmos again.
Reply
Thanks given by: Chewtobacca
#8
schorman

For THD, Chewtobacca, has introduced here this great program called MLP:
https://forum.fanres.com/thread-3298.html

It's claims to be the only one to correctly demux THD tracks. It would be interesting to compare it to the CloneBd tool.

BTW, very nice find about eac3to one pass only. Did you have a chance to compared it to DGDemux output?
Reply
Thanks given by:
#9
Thanks for the info, schorman!  I remember sometimes using -no2ndpass for certain discs (and comparing the results with and without that switch), especially when handling branching discs was new; but it surprises me that eac3to has a strong tendency to drop extra frames in the second pass, given that the second pass is designed to increase the accuracy with which the gaps are handled.

May I ask how you are determining that extra frames are dropped?  Are you comparing the output to that of DGDemux?  Your observations might explain why I sometimes felt that there was minor desync on certain discs even when I was, supposedly, handling them correctly.  I wonder if eac3to's second pass handles the remastered BD of Star Trek II correctly.
Reply
Thanks given by: schorman
#10
I used HxD (hex editor) to search for differences in the file outputs from eac3to and the output when demuxing the separate .m2ts files and joining them together.

If you check the individual .m2ts files, you'll see that there is always one overlapping/repeated audio frame at the branch points. There's never more than one duplicated frame, and the ripping software should simply drop the first audio frame of each new .m2ts file.

This can be accomplished manually by searching for frame sync headers in a hex editor, and deleting the first frame for each .m2ts file after the first. Of course, it's best to compare that first frame's hex data with the last frame from the previous .m2ts file, but I have yet to find any that weren't matching.

What I found, is that, in practice, setting the -no2ndpass option gave the preferred output, matching the result from doing it manually, whereas the 2nd pass would often times adjust the branch points slightly so that it leaves the repeated frame at alternating branch points, and deletes BOTH repeated frames at the other alternating points. Obviously this is not the desired outcome, as you're repeating some frames, losing some entirely, and throwing the sync off slightly for alternating pieces. I won't say this happens every time, on every disc, but I could not get the correct output from any of the 2020 Star Wars BD or UHD's without turning off the 2nd pass.
Reply
Thanks given by: Chewtobacca


Forum Jump:


Users browsing this thread: 1 Guest(s)