MPEG GOP User Data

Discussion of advanced MakeMKV functionality, expert mode, conversion profiles
Post Reply
DanielH
Posts: 3
Joined: Tue Jul 10, 2012 7:35 pm

MPEG GOP User Data

Post by DanielH » Tue Jul 10, 2012 7:52 pm

TL;DR: I may try to patch MakeMKV so that it preserves data such as closed captioning for other tools (like CCextractor) to use. If I do this, I'd like to submit it as a patch. Is there any way for me to do that, or any reason for me not to attempt the patch?

Full post:
A few days ago, I decided to rip my DVD collection and put my DVDs in a box to gather dust. After trying a lot of products, I settled on MakeMKV, which seems to be by far the best (for automatically ripping all titles, lossless ripping without increasing file size, etc.). However, it does not recognize line 21 closed captioning (I live in the US and my father is hard of hearing, so this is a big deal; like others who posted about this, I'd like to rip the Stargate SG-1 DVDs, which don't have subtitles before season 8). I know that this feature is on the TODO list and that it will be available in the mystical land known as "The Future". Being impatient, I want it now, but being a programmer, I know that "one customer wants it now" is hardly a reason to drop everything to work on a feature, and even if it was that wouldn't get anything done now.

Looking at other tools, I found CCextractor, but that doesn't work on the MPEG2 streams in MakeMKV's output files. Googling the problem, it seems that MakeMKV does not preserve the GOP User Data. I was wondering if this was a deliberate choice, or if GOP preservation may be added in the future. Assuming that this was not a deliberate choice or that any problems with the preservation don't affect me, I may decide to try to patch MakeMKV (assuming the relevant parts are in the open-source section) so that this data is preserved, or even to use CCextractor to extract closed captioning directly. If I succeed in doing this, would it be possible for me to submit the patch somewhere? Is something coming in the next release so I shouldn't bother?

EDIT: I learned pretty much all of this today and yesterday, so if I'm way off base about anything, please tell me that also! What I do know is that CCextractor works on a VIDEO_TS folder, but not on the MKV files produced by MakeMKV, so MakeMKV must be removing something. What seems to be the case but I don't know for sure is that this "something" is GOP user data and that it would be easy not preserve.

Thanks in advance for any information or advice,
DanielH

Romansh
Posts: 873
Joined: Sat Jan 22, 2011 7:09 pm

Re: MPEG GOP User Data

Post by Romansh » Tue Jul 10, 2012 9:12 pm

DanielH wrote:or any reason for me not to attempt the patch?
AFAIK, MakeMKV is not open source (except for the Linux GUI). Seems good enough to me.

DanielH
Posts: 3
Joined: Tue Jul 10, 2012 7:35 pm

Re: MPEG GOP User Data

Post by DanielH » Tue Jul 10, 2012 9:59 pm

That would be, but my quick glancing through the source that I found seemed a bit more than just a GUI (I can't think of a reason to include ffmpeg or matroska stuff there if there's no implementation code). Maybe I'm wrong. As I said, I'd only attempt the patch if the needed part was in the open source area; I would not want to disassemble it even if the EULA permitted that. Instead, I'd probably work on Handbrake or something, but there are multiple problems with that approach...

Ideally I'd be told something like "it's an upcoming feature in the next release, which by the way is tomorrow", but I don't think that's likely on either count.

DanielH
Posts: 3
Joined: Tue Jul 10, 2012 7:35 pm

Re: MPEG GOP User Data

Post by DanielH » Wed Jul 11, 2012 4:27 am

Romansh wrote:AFAIK, MakeMKV is not open source (except for the Linux GUI). Seems good enough to me.
As it turns out, you seem to be correct. The reason the other libraries was there appears to be completeness and to comply with their "you must provide the source code if you use this libraries" clauses.

I am still interested in why they are not preserved. I understand that it takes extra work to separate subtitle tracks, but it shouldn't take extra work to preserve the GOP user data. In fact, that should be the default case of the libraries that handle the file splitting. Why is it not preserved, and not even presented as an option?

Thanks,
DanielH

mike admin
Posts: 4075
Joined: Wed Nov 26, 2008 2:26 am
Contact:

Re: MPEG GOP User Data

Post by mike admin » Fri Aug 17, 2012 12:43 pm

There is a long-awaiting task to plug ccextractor into MakeMKV transcoding pipeline in order to convert closed captions to SRT on the fly. The CC user data is extracted from mpeg stream in order to be saved into separate stream. As there is no way to put the CC data into MKV as a separate stream, and ccextractor pipeline is not yet ready, all CC data is currently discarded. I wish I had a better answer.

Post Reply