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