Log in

View Full Version : Help in making a portable dvd-subtitle(vobsub) ripper


SledgeHammer_999
18th November 2010, 20:01
I am contemplating with the idea to make a dvd subtitle ripper that can work on many systems(namely linux and windows). Of course it will be open source. I am thinking of making it a library and then building a command-line AND a GUI program on top of it. The usage will be something like this:
./vobsubripper random.IFO --lang=en -o subs

BUT I want some info, help and pointers. First of all I want some documentation on how to parse(?) the IFOs and VOBs. Where should I look? Is there any guide? Also can someone give me a generic approach in doing this?

My coding background:
1. I am hobbyist.
2. I use C++
3. I have done many stuff using Gtkmm, and some using Gstreamer(through the C api)
4. I have no idea how one demuxes/demultiplexes containers, like the VOB container. Generally I don't have any experience on interleaving data in a file.
5. I can understand byte sizes, pointer arithmetic and treating stuff as "binary data".

Oh and an extra question. Is there anyone looking forward to such a tool?

Chetwood
21st November 2010, 16:29
Well, VSrip (http://www.videohelp.com/tools/VSRip) already does a decent job. But competition never hurts and I for one would like to see a true batch mode to rip all subs from a DVD (especially for series DVDs). Concerning the specs you might wanna start here (http://dvd.sourceforge.net/dvdinfo/index.html) and check their info on Packetized Elementary Stream Headers and Pack Header. More extensive info is to be found in "iso 13818-1.pdf" (Google). You should also know that current copy protection schemes can mess with subtitle timings since they add garbage that can make audio and subs out of sync.

In any case I'd be interested in testing your tool.

SledgeHammer_999
10th December 2010, 17:09
Sorry for the lack of followups. I have been pretty busy with real life.

I took a look at the specs on dvd.sf.net but I can't really understand them. What bytes of the IFO file should I examine to get the list of subtitles of the vobs? How should I get the lang-code for each subtitle stream? On, the vob part, what bytes should I look for for the subs?

I think all these are way out my league. With my current knowledge and info provided to me, my idea cannot be implemented by me. oh well life must go on.

EDIT:
You should also know that current copy protection schemes can mess with subtitle timings since they add garbage that can make audio and subs out of sync.

That's one of the reasons I wanted to make this tool. The other major reason is that there isn't a linux equivalent of vobsub/vsrip.