logo Sign In

Post #215673

Author
calamari
Parent topic
Idea: Personalized preservation possible with September 2006 OT DVD's
Link to post in topic
https://originaltrilogy.com/post/id/215673/action/topic#215673
Date created
2-Jun-2006, 4:19 PM
Just wanted to mention that I've made a little progress on the decoder. Currently it can decode the program stream and pack header/pack. It is able to determine SCR and the type of packet (audio/subpicture, video, padding, etc). It is also able to work with a group of VOB files and move to the next when needed. This is good because then we don't have to worry about file size limits.

So, not very much progress, but it's a start. The next thing I need to do is calculate PTS and DTS and figure out the timing of things. I did an initial test where if the SCR moved backwards, it threw away packets until time moved forward again (to see if that would fix the scroll), and it sorta did, but also other big chunks of the movie were missing, so I have more to learn about timing. Also, there were picture artifacts at the transitions, so that worries me. I was hoping that packets were complete pieces of the movie (I-frame to I-frame for example), but it appears that isn't the case. Anyhow, it was just a quick test to see what would happen... we wouldn't want such a brute force method anyways, because it eliminates choices. If the user wants to keep streams etc, that should be no big deal.

The decoder is written in python: the language is readable, portable (Linux, Windows, cygwin, OSX, etc, we are covered), and doesn't have to be compiled. The program is mostly doing I/O operations, so the tiny bit of interpreted processing happening isn't slowing things down. It takes 2 1/2 minutes to run through each 1GB VOB file on my system (at the same time writing that modified VOB).