DVD authoring,copy,edit questions + misc :)

Olaf Beck <[email protected]>
Newsgroups gmane.comp.video.ogle.devel
Organization Frozenriver
Message-ID <[email protected]>
Hello Folks,

Some of you might be aware I'm currently developing some DVD-Video copy, edit, 
create programs. The DVD-Video code to create DVD-Video images in mkisofs are 
now a integrated part of cdrtools as of version 1.11a27. 

Anyways I now have my eyes and hacking fingers on more elaborate tasks such as 
chapter extraction, DVD-9 split to two DVD-5, etc.. and I have some questions 
in regards to this.

Chapter extraction:
It's not hard to figure out start cell and end cell of a chapter. However when 
I started to analyze the cell information in the "cell playback information 
table entry" I came to a halt. The cells start and endcells simply doesn't 
match. 

No I don't want to just extract a certain playback sequence I simply want to 
have a chunk of data from sector Y to sector X. 

Cell:   2
Start sector: 00002387
End   sector: 0001ecdd

Cell:   3
Start sector: 0000273c
End   sector: 0001f09e

Here it's relatively easy just extract the data between sector 00002387 and 
sector 0001f09e - I'm assuming the sector is relative to the VTS_XX_1.VOB 
start sector, please correct me if I wrong.

The tricky part is when it looks like this:
Cell:   1 
        Start sector: 0036d4d7  
        End   sector: 0036d4db  
Cell:   2 
        Start sector: 002db177  
        End   sector: 002dec78  
Cell:   3 
        Start sector: 0036d4dc  
        End   sector: 0036d4e0  

What should I do?  Extract 002db177  to 002dec78  and then 0036d4d7  to 
0036d4e0?

DVD-9 to two DVD-5:
Lets say that I just ignore all other titles sets on the DVD and I just deal 
with the main feature film. Merging the VTS_XX_0.IFO with some plain vanilla 
IFO or just edit the one I have. Anyways my question is what to do when I 
encounter problems like the "tricky part" above. This could very well be a 
part of the end of the main feature referencing back to a cell in the very 
beginning. 

As for a general question in splitting a title_set, I would like to know if 
you guys and girls has some bright algos where it should be done. E.g. is 
there a easy way to detect where the second layer beginns.    

I also assume that I have to update all sector references in PCI and DSI 
packets in the title sets I split. However is it also necessary to update VOB 
id - must I start at VOB ID 1 or can I simply start at VOB id 6 for example. 


Misc Notes in regards to mkisofs and DVD-Video:

In order to get DVD-Video support integrated in mkisofs I had to make a very 
cut down version of libdvdread. Joerg the maintainer of cdrtools simply 
didn't want to depend on dvdread since it is not portable in his view. 

Hence I stole and wrote some new code in order to subsitute functions that I 
needed from libdvdread. I hope I haven't stepped on anyones toes doing this. 

Maybe a positive side effect of this is that the bsswap.h macros now have a 
new more portable implementation. It can be worth taking a look at it. 

Ohh, Joerg can sound a bit harsh in his portability comments - but he is 
actually quite nice to work with after the ice has metled. I assume that he 
just want to make every one regardless of OS benefit from improvements in 
mkisofs - hence he holds portability very dearly.

Cheers Olaf
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.