Log in

View Full Version : find layerbreak


Sequoyan
18th September 2004, 17:33
Hello All,

How can I find the layerbreak in a project by looking at the ifos?

I'd prefer to know how to do it without ifoedit or another program, just by looking at the file(s) themselves.

Thanks for any help!

- Tom

2COOL
19th September 2004, 00:27
In IfoEdit, you can see them in your VMG/VTS overview. Here's an example

VTS overview:

PGC_1 (program chain): [Title(TTN): 1] [01:48:53.23 / 30 fps] (Programs: 33) (Cells: 36) (uses VOB-IDs: 1)
[Ch 01] [Pg 01] [Cell 01] [V/C Id: 1/ 1] : time: 00:00:17.01 / 30 fps [Pos: 00:00:17.01] [Frames: 511]
[Cell 02] [V/C Id: 1/ 2] : time: 00:03:19.24 / 30 fps [Pos: 00:03:36.25] [Frames: 6505]
[Ch 02] [Pg 02] [Cell 03] [V/C Id: 1/ 3] : time: 00:02:05.21 / 30 fps [Pos: 00:05:42.16] [Frames: 10276]
[Ch 03] [Pg 03] [Cell 04] [V/C Id: 1/ 4] : time: 00:03:29.17 / 30 fps [Pos: 00:09:12.03] [Frames: 16563]
[Ch 04] [Pg 04] [Cell 05] [V/C Id: 1/ 5] : time: 00:02:12.04 / 30 fps [Pos: 00:11:24.07] [Frames: 20527]
[Ch 05] [Pg 05] [Cell 06] [V/C Id: 1/ 6] : time: 00:04:54.08 / 30 fps [Pos: 00:16:18.15] [Frames: 29355]
[Ch 06] [Pg 06] [Cell 07] [V/C Id: 1/ 7] : time: 00:04:02.20 / 30 fps [Pos: 00:20:21.05] [Frames: 36635]
[Ch 07] [Pg 07] [Cell 08] [V/C Id: 1/ 8] : time: 00:02:35.12 / 30 fps [Pos: 00:22:56.17] [Frames: 41297]
[Ch 08] [Pg 08] [Cell 09] [V/C Id: 1/ 9] : time: 00:03:17.23 / 30 fps [Pos: 00:26:14.10] [Frames: 47230]
[Ch 09] [Pg 09] [Cell 10] [V/C Id: 1/10] : time: 00:03:16.23 / 30 fps [Pos: 00:29:31.03] [Frames: 53133]
[Ch 10] [Pg 10] [Cell 11] [V/C Id: 1/11] : time: 00:02:55.11 / 30 fps [Pos: 00:32:26.14] [Frames: 58394]
[Ch 11] [Pg 11] [Cell 12] [V/C Id: 1/12] : time: 00:02:46.28 / 30 fps [Pos: 00:35:13.12] [Frames: 63402]
[Ch 12] [Pg 12] [Cell 13] [V/C Id: 1/13] : time: 00:02:59.23 / 30 fps [Pos: 00:38:13.05] [Frames: 68795]
[Ch 13] [Pg 13] [Cell 14] [V/C Id: 1/14] : time: 00:04:01.15 / 30 fps [Pos: 00:42:14.20] [Frames: 76040]
[Ch 14] [Pg 14] [Cell 15] [V/C Id: 1/15] : time: 00:01:32.20 / 30 fps [Pos: 00:43:47.10] [Frames: 78820]
[Ch 15] [Pg 15] [Cell 16] [V/C Id: 1/16] : time: 00:04:37.29 / 30 fps [Pos: 00:48:25.09] [Frames: 87159]
[Ch 16] [Pg 16] [Cell 17] [V/C Id: 1/17] : time: 00:03:19.29 / 30 fps [Pos: 00:51:45.08] [Frames: 93158]
[Ch 17] [Pg 17] [Cell 18] [V/C Id: 1/18] : time: 00:02:07.07 / 30 fps [Pos: 00:53:52.15] [Frames: 96975]
[Ch 18] [Pg 18] [Cell 19] [V/C Id: 1/19] : time: 00:01:01.29 / 30 fps [Pos: 00:54:54.14] [Frames: 98834]
[Cell 20] [V/C Id: 1/20] Layer Br.: time: 00:02:38.01 / 30 fps [Pos: 00:57:32.15] [Frames: 103575]
[Ch 19] [Pg 19] [Cell 21] [V/C Id: 1/21] : time: 00:02:31.17 / 30 fps [Pos: 01:00:04.02] [Frames: 108122]
[Ch 20] [Pg 20] [Cell 22] [V/C Id: 1/22] : time: 00:05:40.11 / 30 fps [Pos: 01:05:44.13] [Frames: 118333]
[Ch 21] [Pg 21] [Cell 23] [V/C Id: 1/23] : time: 00:02:45.01 / 30 fps [Pos: 01:08:29.14] [Frames: 123284]
[Ch 22] [Pg 22] [Cell 24] [V/C Id: 1/24] : time: 00:02:15.20 / 30 fps [Pos: 01:10:45.04] [Frames: 127354]
[Ch 23] [Pg 23] [Cell 25] [V/C Id: 1/25] : time: 00:03:08.18 / 30 fps [Pos: 01:13:53.22] [Frames: 133012]
[Ch 24] [Pg 24] [Cell 26] [V/C Id: 1/26] : time: 00:04:27.21 / 30 fps [Pos: 01:18:21.13] [Frames: 141043]
[Ch 25] [Pg 25] [Cell 27] [V/C Id: 1/27] : time: 00:02:49.10 / 30 fps [Pos: 01:21:10.23] [Frames: 146123]
[Ch 26] [Pg 26] [Cell 28] [V/C Id: 1/28] : time: 00:03:34.16 / 30 fps [Pos: 01:24:45.09] [Frames: 152559]
[Ch 27] [Pg 27] [Cell 29] [V/C Id: 1/29] : time: 00:04:08.10 / 30 fps [Pos: 01:28:53.19] [Frames: 160009]
[Ch 28] [Pg 28] [Cell 30] [V/C Id: 1/30] : time: 00:02:38.18 / 30 fps [Pos: 01:31:32.07] [Frames: 164767]
[Ch 29] [Pg 29] [Cell 31] [V/C Id: 1/31] : time: 00:02:04.27 / 30 fps [Pos: 01:33:37.04] [Frames: 168514]
[Ch 30] [Pg 30] [Cell 32] [V/C Id: 1/32] : time: 00:01:59.01 / 30 fps [Pos: 01:35:36.05] [Frames: 172085]
[Ch 31] [Pg 31] [Cell 33] [V/C Id: 1/33] : time: 00:03:21.23 / 30 fps [Pos: 01:38:57.28] [Frames: 178138]
[Ch 32] [Pg 32] [Cell 34] [V/C Id: 1/34] : time: 00:02:46.09 / 30 fps [Pos: 01:41:44.07] [Frames: 183127]
[Ch 33] [Pg 33] [Cell 35] [V/C Id: 1/35] : time: 00:07:02.16 / 30 fps [Pos: 01:48:46.23] [Frames: 195803]
[Cell 36] [V/C Id: 1/36] : time: 00:00:07.00 / 30 fps [Pos: 01:48:53.23] [Frames: 196013]

In PgcEdit, double click on PGC in PGC Selection List on the left. In your PGC Editor dialog, you should see a layer break column and the ones checked, is of course, a layer break.

Sequoyan
20th September 2004, 21:00
Ok, that's a start. Now I'm trying to figure out how to do this without a piece of software like ifoedit. I need to be able to look at the ifo file itself and figure out where the layer break is.

Any thoughts?

Thanks.

- T

jsoto
20th September 2004, 21:33
This (http://forum.doom9.org/showthread.php?s=&threadid=22031) is a very old thread, not sure if it is exact.
But, what I'm sure is that IFOEdit shows "possible" layer breaks, not 100%. In fact, it usually shows more than one in a DVD.
jsoto

r0lZ
22nd September 2004, 12:33
I need to be able to look at the ifo file itself and figure out where the layer break is.That's not a simple task! Because you don't know where the layer break is (and even if there is one), you have to find out and parse all PGCs in the DVD, and search for all cells in the PGC for a layer break. And remember that the real layer break (ie the point where the playback goes from the first layer to the other one) is not hardcoded in the IFOs. However, the 'Seamless Playback Linked in PCI' bit of the cell must be OFF for the layer break. But the same bit may be OFF for various other reasons as well.

If you really want to parse the IFOs, read the MPUCoder's DVD Information (http://www.mpucoder.com/DVD/) ($5) or the sourceforge equivalent (http://dvd.sourceforge.net/dvdinfo/) (free but incomplete).

BTW, why do you want to do the parsing yourself? Are you developping a tool to automate the layer break removal ?
Maybe I will add a 'search for possible layer breaks' feature in PgcEdit later...

Sequoyan
29th September 2004, 01:49
"However, the 'Seamless Playback Linked in PCI' bit of the cell must be OFF for the layer break. But the same bit may be OFF for various other reasons as well."

Then I guess i need to learn how to parse an IFO and look for Seamless Playback Linked in PCI = OFF. I imagine this is not easy.

Anyone know how to do this? Anyone willing to program this as a work for hire?

email me if you're interested.

thesequoyan [[at]] hot mail

- Tom

2COOL
29th September 2004, 04:45
@Sequoyan

Originally posted by r0lZ
BTW, why do you want to do the parsing yourself? Are you developping a tool to automate the layer break removal ? I'm also curious to know what your intentions are.

Sequoyan
30th September 2004, 16:39
It's pretty simple and not very interesting. I'm learning DirectShow and would like to put a red dot on the screen when the layerbreak happens.

If you know how to programatically find the layerbreak in an ifo email me at thesequoyan [[at]] hotmail. Again, I'm willing to pay for assistance with this.

- T

2COOL
30th September 2004, 18:23
Try posting your request in the Development forum (http://forum.doom9.org/forumdisplay.php?s=&forumid=41).