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 > (HD) DVD, Blu-ray & (S)VCD > Advanced authoring

Reply
 
Thread Tools Search this Thread Display Modes
Old 3rd November 2019, 18:45   #1  |  Link
videoh
Registered User
 
Join Date: Jul 2014
Posts: 1,002
DGDemux -- BluRay/UHD demuxer

This is my thread for tracking development and usage for DGDemux, which is my new BluRay/UHD demuxer. DGDemux aims to correctly demux all elementary streams, subtitles, and chapters in proper AV sync from BluRay/UHD titles, including seamless branching titles. DGDemux will be freeware (not open source).

I have successfully performed a first full demux from Cars 2 UHD using DGDemux. I have to clean up some stuff, remove the licensing, and make a manual. Maybe I can release a first test version by Thanksgiving, or even next week!

Last edited by videoh; 19th November 2019 at 03:08.
videoh is offline   Reply With Quote
Old 3rd November 2019, 18:54   #2  |  Link
hubblec4
Matroska find' ich toll
 
Join Date: Apr 2008
Posts: 1,105
Thank you so much. I'm excited to test your new software.
hubblec4 is offline   Reply With Quote
Old 3rd November 2019, 20:08   #3  |  Link
l00t
Where's my loot?
 
Join Date: May 2019
Posts: 17
Thank you very much for you efforts!
l00t is offline   Reply With Quote
Old 3rd November 2019, 21:00   #4  |  Link
redbtn
Registered User
 
redbtn's Avatar
 
Join Date: Jan 2019
Location: Russia
Posts: 123
Thank you. Can't wait.
redbtn is offline   Reply With Quote
Old 3rd November 2019, 22:01   #5  |  Link
ChaosKing
Registered User
 
Join Date: Dec 2005
Location: Germany
Posts: 1,044
I have some BDs and UHDs to test.
I hope it will be possible to also split by chapters. Japanese BDs have often one big track and it's a pain to demux every episode with the current tools.
__________________
AVSRepoGUI // VSRepoGUI - Package Manager for AviSynth // VapourSynth
VapourSynth Portable FATPACK || VapourSynth Database || https://github.com/avisynth-repository
ChaosKing is offline   Reply With Quote
Old 4th November 2019, 00:54   #6  |  Link
videoh
Registered User
 
Join Date: Jul 2014
Posts: 1,002
DJATOM has asked for that too over at DG forum. Let's get the basic stuff working and then add the bells and whistles. It's high on my list. Anime is a channeling of the divine. Love it!

Last edited by videoh; 5th November 2019 at 18:59.
videoh is offline   Reply With Quote
Old 4th November 2019, 17:15   #7  |  Link
von Suppé
Registered User
 
von Suppé's Avatar
 
Join Date: Dec 2013
Posts: 266
Thanks for your work in this tool, videoh. I'm eager and will test extendedly.
von Suppé is offline   Reply With Quote
Old 4th November 2019, 18:37   #8  |  Link
videoh
Registered User
 
Join Date: Jul 2014
Posts: 1,002
Thank you folks! Hoping for a beta this week.

http://rationalqm.us/board/viewtopic.php?f=16&t=793
videoh is offline   Reply With Quote
Old 4th November 2019, 21:02   #9  |  Link
l00t
Where's my loot?
 
Join Date: May 2019
Posts: 17
Quote:
Originally Posted by videoh View Post
Thank you folks! Hoping for a beta this week.

http://rationalqm.us/board/viewtopic.php?f=16&t=793
Subscribed
l00t is offline   Reply With Quote
Old 5th November 2019, 14:32   #10  |  Link
videoh
Registered User
 
Join Date: Jul 2014
Posts: 1,002
http://rationalqm.us/dgdemux/DGDemux_1000.rar

Worked fine on the three disks ripped here. Still gonna be some glitches to fix, for sure. Please accompany any trouble reports with a description of the disk and a link where it can be purchased. Your feedback is crucial and appreciated.

Last edited by videoh; 5th November 2019 at 19:02.
videoh is offline   Reply With Quote
Old 5th November 2019, 16:59   #11  |  Link
ChaosKing
Registered User
 
Join Date: Dec 2005
Location: Germany
Posts: 1,044
DGDemux looks like it is waiting for user input after demuxing and even with a simple dgdemux.exe call in powershell.
Demuxing seems to work correctly so far.
__________________
AVSRepoGUI // VSRepoGUI - Package Manager for AviSynth // VapourSynth
VapourSynth Portable FATPACK || VapourSynth Database || https://github.com/avisynth-repository
ChaosKing is offline   Reply With Quote
Old 5th November 2019, 17:30   #12  |  Link
videoh
Registered User
 
Join Date: Jul 2014
Posts: 1,002
It's not waiting. DGDemux is dispatched asynchronously from the shell. After the 100 is printed, the shell is awake and waiting (in fact, it's awake even during the demuxing). You can check task manager to see that DGDemux has terminated when you think it is waiting.

I don't know how to get the shell to reissue a prompt on termination with asynchronous execution. Internally DGDemux is still a win32 application, not a console one.

BTW, DGIndexNV CLI mode also works like this, which should not be a surprise, even to a hoomin.

Last edited by videoh; 5th November 2019 at 19:07.
videoh is offline   Reply With Quote
Old 5th November 2019, 17:47   #13  |  Link
stax76
Registered User
 
stax76's Avatar
 
Join Date: Jun 2002
Location: Chamber 36
Posts: 5,873
Quote:
Do you know how to get the shell to reissue its prompt on termination?
If your app isn't a console app then you need a wrapper app, mpv and mpv.net work like this.

https://github.com/mpv-player/mpv/issues/6827
stax76 is offline   Reply With Quote
Old 5th November 2019, 18:04   #14  |  Link
videoh
Registered User
 
Join Date: Jul 2014
Posts: 1,002
Thank you for the idea, stax76. The question is whether it is worth doing that when a statement in the user manual may be enough. I'll look into it.

At this point, culture lovers everywhere really want to know about any disks with demuxed streams that are not in sync with the demuxed video or are otherwise problematic, but UI issues are also interesting and will be addressed in good time.

Last edited by videoh; 6th November 2019 at 03:28.
videoh is offline   Reply With Quote
Old 5th November 2019, 21:27   #15  |  Link
hubblec4
Matroska find' ich toll
 
Join Date: Apr 2008
Posts: 1,105
Hi videoh

Many thanks for the first version of DGDemux.

I have some question/requests:
1. could you provide a Linux version -> would be so great
2. demux of all streams is not always necessary (for me)
could you add an option to demux the streams by IDs or an index like eac3to?
3. subtitles: the -fo switch is nice, but is it possible to demux the "normal" sups and the forced sups in one go?
4. the default value for "-ang x" is x=1?

EDIT:
During my first demux test I noticed for german streams audio and sups, you use the wrong language code "deu" it should be "ger".
Same with French language "fra" is not correct -> "fre"

Last edited by hubblec4; 5th November 2019 at 21:40.
hubblec4 is offline   Reply With Quote
Old 5th November 2019, 22:53   #16  |  Link
mini-moose
Registered User
 
Join Date: Oct 2007
Posts: 410
Thanks for this nice project!

Did a quick try now, though not with a branched disc.

The DTS audio gets tagged with 1536 which is the core audio but the actual DTS is DTS MA:

e.g:

PID 1101 C+L+R+SL+SR 48 1536 eng DELAY 0ms.dts

The tagging part I find a little confusing cause you give it the tag in the form of a path.
So, if I want to demux CARS_2 into a CARS_2 directory it needs to be D:\tmp\CARS_2\CARS_2.

Also, you need to pre-create that directory as won't create one on it's own. I tried to run it as admin to see if it will create a directory, but that gives a "'DGDemux.exe' is not recognized as an internal or external command,
operable program or batch file." reply.

Last edited by mini-moose; 5th November 2019 at 23:06.
mini-moose is offline   Reply With Quote
Old 5th November 2019, 23:05   #17  |  Link
ggtop
Registered User
 
Join Date: Mar 2003
Posts: 286
Quote:
Originally Posted by hubblec4 View Post
EDIT:
During my first demux test I noticed for german streams audio and sups, you use the wrong language code "deu" it should be "ger".
Same with French language "fra" is not correct -> "fre"
At least on BluRay both language codes are used for both:
DEU, GER for German and FRE, FRA for French.

ggtop
ggtop is offline   Reply With Quote
Old 5th November 2019, 23:36   #18  |  Link
hubblec4
Matroska find' ich toll
 
Join Date: Apr 2008
Posts: 1,105
Quote:
Originally Posted by ggtop View Post
At least on BluRay both language codes are used for both:
OK, good to know. But "deu" is not supported in Matroska and maybe it would be better to use not the obsolete language code.
hubblec4 is offline   Reply With Quote
Old 6th November 2019, 00:49   #19  |  Link
hubblec4
Matroska find' ich toll
 
Join Date: Apr 2008
Posts: 1,105
Hi videoh

The extraction of the chapters has a small issue.
All chapter entries have a flag "mark_type" and the value for normal visible chapters is "1".
For my Terminator 2 BD DGDemux extract all chapters. normal are 72 extracted 95.
hubblec4 is offline   Reply With Quote
Old 6th November 2019, 18:21   #20  |  Link
videoh
Registered User
 
Join Date: Jul 2014
Posts: 1,002
Thank you all for your valuable feedback. As mentioned interesting right now is to know of any problems with the demuxed files, especially audio and subtitles sync problems. Your UI and other feature requests are noted and will be addressed. Trying to solve the seamless branching problem!

Quote:
Originally Posted by hubblec4 View Post
1. could you provide a Linux version -> would be so great
2. demux of all streams is not always necessary (for me)
could you add an option to demux the streams by IDs or an index like eac3to?
3. subtitles: the -fo switch is nice, but is it possible to demux the "normal" sups and the forced sups in one go?
4. the default value for "-ang x" is x=1?

EDIT:
During my first demux test I noticed for german streams audio and sups, you use the wrong language code "deu" it should be "ger".
Same with French language "fra" is not correct -> "fre"
1. Linux is low priority but I don't rule it out. As I eliminate win32 stuff over time, we may reach a pure C/C++ level, at which point the code could be built for Linux.
2. Noted and agreed for later.
3. You mean you want one file with all subs (including forced) and one with only forced? Or one with only nonforced and one with forced? So too unclear to answer. What does eac3to do in this regard?
4. Default angle number is 0, i.e., the first one.
(5). These language codes are read from the MPLS and I simply use them. I see no reason to try to map them to something else.

Quote:
The DTS audio gets tagged with 1536 which is the core audio but the actual DTS is DTS MA:

e.g:

PID 1101 C+L+R+SL+SR 48 1536 eng DELAY 0ms.dts

The tagging part I find a little confusing cause you give it the tag in the form of a path.
So, if I want to demux CARS_2 into a CARS_2 directory it needs to be D:\tmp\CARS_2\CARS_2.

Also, you need to pre-create that directory as won't create one on it's own. I tried to run it as admin to see if it will create a directory, but that gives a "'DGDemux.exe' is not recognized as an internal or external command,
operable program or batch file." reply.
I'll look into your DTS point and fix if needed.

You figured out how to use the -o option!

I'll consider creating the directory if it does not exist. DGDemux works fine for me as administrator and I see no reason why it should not.

Quote:
The extraction of the chapters has a small issue.
All chapter entries have a flag "mark_type" and the value for normal visible chapters is "1".
For my Terminator 2 BD DGDemux extract all chapters. normal are 72 extracted 95.
I have code that is supposed to suppress mark_type != 1, but maybe it is broken. Please provide a link for me to purchase that exact same disk and then I can look into it. Also, how do you determine what is "normal"? Thank you.

Last edited by videoh; 6th November 2019 at 19:51.
videoh 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 06:46.


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