View Full Version : PgcEdit v0.3.
Pages :
1
2
3
4
5
6
[
7]
8
9
10
jeanl
2nd November 2004, 23:01
oh OK, I've seen that, but it does not let you adjust the still time, does it? What I used to end up with was a still frame for up to a minute, depending on the original length. Was I doing something wrong?
Jeanl
P.S. Getting slightly off topic here. Sorry about that...
r0lZ
2nd November 2004, 23:06
No, you're right. But your title is blanked. You can then use PgcEdit to Kill playback...
jeanl
2nd November 2004, 23:11
Originally posted by r0lZ
No, you're right. But your title is blanked. You can then use PgcEdit to Kill playback...
Oh, Ok, I see what you mean. I never thought of doing it that way. That's another solution for when you want to blank something that's in the same VTS as something you want to keep.
Thanks!
Jeanl
blutach
2nd November 2004, 23:19
Originally posted by r0lZ
@blutach It's possible also with PgcEdit. In the cells table, click on the VOB/Cell ID button of the cell you want to blank out, and select Create a new blank VOB cell. But VobBlanker is still more powerfull: PgcEdit do not replace the old cell by a blank one; it just add a blank cell to the VOB, and assign it to the current PGC cell.
Also, DVDShrink is now able to replace a PGC with a still frame. Honestly, I think it is the best solution, when you need to shrink the DVD. It's easy, and you have full preview capabilities. Thanks for bring that to my attention r0lz. However, sometimes I need to cut the PGC midway, not simply blank it (the credits come part-way into the PGC) This is where VobBlanker comes into its own, I think.
Regards
jeanl
2nd November 2004, 23:25
Originally posted by blutach
Thanks for bring that to my attention r0lz. However, sometimes I need to cut the PGC midway, not simply blank it (the credits come part-way into the PGC) This is where VobBlanker comes into its own, I think.
Regards
AH! There's another way to do that!
Vobblanker is great for the preview, but slooooow because it needs to rewrite the whole VOB file. if you don't care about saving space (and you're just doing that because you don't like credits or logos) then you can go in IFOEdit and change the start sector and/or end sector for the PGC in question, using the frame numbers you get from the vobblanker preview. That's instantanous. I do that all the time, with great results.
If you want to reclaim the disc space, then yes vobblanker is the way to go!
Jeanl
r0lZ
2nd November 2004, 23:30
you can go in IFOEdit and change the start sector and/or end sector for the PGC in question, using the frame numbers you get from the vobblanker preview. Are you sure you can do that safely? My Sony usually hangs when playing such modified PGCs.
jeanl
2nd November 2004, 23:37
Originally posted by r0lZ
Are you sure you can do that safely? My Sony usually hangs when playing such modified PGCs.
I've never had any problem, but my settop player is a sampo and it might be that it's pretty forgiving.
What's wrong with doing that anyway? Why would it make the player hang? Is there some other place that must be modified if you do that?
I'm not setting the length to 0, mind you. I'm just removing a few seconds from the playback, usually the first seconds or the last ones.
I wouldn't be surprised, given the redundant jungle nature of the DVD spec, that if you modify the start/end sectors in one place, you also need to do that somewhere else, but I must say I don't know much about that... Can someone confirm that? (that it's not "dangerous"/illegal to modify the start/end sectors of a PGC in IFOEdit, - I'm guessing as long as the resulting length is longer than .4s?)
Jeanl
r0lZ
2nd November 2004, 23:48
What's wrong with doing that anyway? Why would it make the player hang? Unfortunately, my player doesn't explain why it doesn't like that! ;) But it doensn't.
I guess it may be because you are not jumping straight to the beginning of a cell, or because the time references are wrong...
What is particularly disturbing is that the player accepts that sometimes, and sometimes not! :confused:
blutach
3rd November 2004, 00:09
@jean
I'm a space saver:) That way, I can get best quality when transcoding.
jsoto
3rd November 2004, 09:34
, that if you modify the start/end sectors in one place, you also need to do that somewhere else, but I must say I don't know much about that... Can someone confirm that? (that it's not "dangerous"/illegal to modify the start/end sectors of a PGC in IFOEdit, - I'm guessing as long as the resulting length is longer than .4s?)
Yes, start/end sectors of a Cell information is duplicated in the IFO:
A) In the playback table (Beware, the same cell can be more than one time in different playback tables)
B) In VTS_C_ADT table.
So you should modify at least two tables. And, to be absolutely sure, and to "support" an IFOEdit's mock's strip, all the nav packs of the rest of the Cell (the unused part) should be changed to an unused VID/CID.
And, finally, the Elapsed Times/PTSs/SRC values in the VOB of the modified PGC will be not consecutive, and, let's say, incoherent. So if you are "cutting" the last part of a PGC probably it works fine, but I'm sure you will have problems if you "cut" a Cell in the middle of a PGC (BTW, PTS/SRC values are one of the TODO "bugs" in VobBlanker)
Summarizing, IMHO it is not a good/safe practice...
jsoto
jeanl
3rd November 2004, 18:45
Thanks for the clarification jsoto. I was afraid of that. As a rule, it looks like anytime you'd think there's an easy solution to a simple problem, the DVD specs comes back at you!
Jeanl
northwind
4th November 2004, 02:26
In a number of newer movies I have (ex: Breaking all rules) I have noticed that leaving out the F B I warnings and the ever growing list of warnings and disclaimers (which is why I copy some of my DVDs) will cause the resulting DVD to be useless.
My player is a Panasonic F65, but I also have a GoVideo to check on.
Anyway....
If I use PGCEdits kill playback function or use DVDRemake's blanking then the player will start loading and then execute an exit.
In PGCEdit it is enough to change/add or delete any command in the executed parts of the VMG-PGCs.
In the mentioned DVD, FP will call a VMG which will do a jump to a VTST to play the studio splash. Then the VMG is called from that VTST to continue. Even this first call is not done. Nothing shows on the screen. Weird.
I done a number of experiments on that one. I only found two ways out of it. Three if you count in writing a new menu system for the DVD.
Not kidding - I've done that a few times.
1) use the DVDRemake to replace the warning and disclaimer screens with a black screen. This works most of the times, but not always.
2) use IFO edit to edit the play-time to 0. (Playback time = 192; start segment = end segment). I have only tried that once, being with the mentioned movie and positive result.
That is when I noticed that 0.3.7 was out. Downloaded it and kill-playback still killed the playback of the whole disk.
Any similar experiences?
jeanl
4th November 2004, 02:42
Northwind,
This is very strange.
Did you make sure you didn't kill playback on a PGC with buttons? That would surely screw up playback. Also, did you check whether there were cell commands in the PGC you killed? These are 2 cases where I could see why there would be problems. If not, that's really strange.
I think it would help us (r0lZ in particuler) if you posted the PGCs in question before and after you kill playback, for example, the one you describe that jumps from the FP to the splash then to the VMG and the title. It should be easy to the guys here to detect if anything went wrong.
It is my understanding that if you don't have buttons nor cell commands in anything you blank, then playback should be identical to the original playback, except that the video does not play. In other words, the same commands should be executed, in the original or blanked version.
Can you check that there were indeed no cell commands and no buttons?
@r0lZ,
Here's another example where the TRACE function would be invaluable (I know, I don't need to convince you!!!! ;) )
Jeanl.
northwind
4th November 2004, 03:59
Hi JeanL,
No problem - I can do that.
Note that I don't think it is an error in PGCEdit, rather I think somebody here found a loophole in the DVD-spec. Of course I am not sure.
Also note that neither PGCEdit nor DVDRemake nor IFOEdit can keep this DVD playing if you use their kill-playback functions (or that which corrosponds to it). I have to go in and edit the playback time and start/end sector in IFOEdit.
Note: the screens to blank are located in VMG-2, VMG-3, VMG-5, VMG-6 and VTST-5,PGC1.
Here are the virgin PGCs:
VMG , First-Play PGC - Chapters: n/a, Programs: n/a, Cells: n/a
********** pre commands:
[30 06 00 01 00 C0 00 00] 1 (JumpSS) Jump to VMGM PGC 1
********** post commands:
********** cell commands:
Playback time: 00:00:00.00 (at 30 fps)
Playback mode: sequential
PUOs: 0 (0x00000000)
NextPGCN: 0
PrevPGCN: 0
GoUpPGCN: 0
PGC Still Time: 0
VMGM , LU 1 (en) , 1 (0:05) 0b. - Chapters: n/a, Programs: 2, Cells: 2
********** pre commands:
[71 00 00 00 10 00 00 00] 1 Set gprm(0) =(mov) 4096
[71 00 00 0A 00 00 00 00] 2 Set gprm(10) =(mov) 0
[71 00 00 0B 00 00 00 00] 3 Set gprm(11) =(mov) 0
[61 00 00 09 00 90 00 00] 4 Set gprm(9) =(mov) sprm(16:Preferred audio language)
[00 A1 00 09 65 6E 00 08] 5 if ( gprm(9) == 25966 ("en") ) then { Goto line 8 }
[00 A1 00 09 66 72 00 0C] 6 if ( gprm(9) == 26226 ("fr") ) then { Goto line 12 }
[00 01 00 00 00 00 00 0F] 7 Goto line 15
[71 00 00 09 00 00 00 00] 8 Set gprm(9) =(mov) 0
[75 00 00 09 01 00 00 00] 9 Set gprm(9) *=(mul) 256
[63 00 00 0A 00 09 00 00] 10 Set gprm(10) +=(add) gprm(9)
[00 01 00 00 00 00 00 0F] 11 Goto line 15
[71 00 00 09 00 01 00 00] 12 Set gprm(9) =(mov) 1
[75 00 00 09 01 00 00 00] 13 Set gprm(9) *=(mul) 256
[63 00 00 0A 00 09 00 00] 14 Set gprm(10) +=(add) gprm(9)
[61 00 00 09 00 92 00 00] 15 Set gprm(9) =(mov) sprm(18:Preferred sub-picture language)
[00 A1 00 09 65 6E 00 15] 16 if ( gprm(9) == 25966 ("en") ) then { Goto line 21 }
[00 A1 00 09 66 72 00 18] 17 if ( gprm(9) == 26226 ("fr") ) then { Goto line 24 }
[71 00 00 09 00 00 00 00] 18 Set gprm(9) =(mov) 0
[63 00 00 0A 00 09 00 00] 19 Set gprm(10) +=(add) gprm(9)
[00 01 00 00 00 00 00 1A] 20 Goto line 26
[71 00 00 09 00 00 00 00] 21 Set gprm(9) =(mov) 0
[63 00 00 0A 00 09 00 00] 22 Set gprm(10) +=(add) gprm(9)
[00 01 00 00 00 00 00 1A] 23 Goto line 26
[71 00 00 09 00 01 00 00] 24 Set gprm(9) =(mov) 1
[63 00 00 0A 00 09 00 00] 25 Set gprm(10) +=(add) gprm(9)
[71 00 00 0E 10 03 00 00] 26 Set gprm(14) =(mov) 4099
[30 02 00 00 00 03 00 00] 27 (JumpTT) Jump to Title 3
********** post commands:
[71 00 00 0E 10 03 00 00] 1 Set gprm(14) =(mov) 4099
[30 02 00 00 00 03 00 00] 2 (JumpTT) Jump to Title 3
********** cell commands:
[20 01 00 00 00 00 00 0D] 1 LinkTailPGC
********** menu buttons commands:
Playback time: 00:00:05.00 (at 30 fps)
Playback mode: sequential
PUOs: 0 (0x00000000)
NextPGCN: 0
PrevPGCN: 0
GoUpPGCN: 0
PGC Still Time: 0
Audio stream 1 status: 0x00008000 (stream=0)
But- Prog. Cell Type Layer Res- Still Cell Playback End Entry First Last Last VOB Cell
tons Flags Break tric- Timel Cmd. Time Time VOBU ILVU VOBU VOBU ID ID
ted. sector End Start End
0 1 1 2 yes no 0 0 00:00:03.20 00:00:03.20 0 0 112 139 1 1
0 2 2 8 no no 0 1 00:00:01.10 00:00:05.00 140 0 172 189 1 2
VTST 5 , 1 TTN 1 (0:15) Title 3 - Chapters: 2, Programs: 2, Cells: 2
********** pre commands:
[71 00 00 0E 20 03 00 00] 1 Set gprm(14) =(mov) 8195
[00 02 00 00 00 00 00 00] 2 Break
********** post commands:
[30 08 00 00 01 83 00 00] 1 (CallSS) Call the VTSM Root menu of the current VTS, resume cell 1
********** cell commands:
Playback time: 00:00:15.00 (at 30 fps)
Playback mode: sequential
PUOs: 0 (0x00000000)
NextPGCN: 0
PrevPGCN: 0
GoUpPGCN: 0
PGC Still Time: 0
Audio stream 1 status: 0x00008000 (stream=0)
Chap. Prog. Cell Type Layer Res- Still Cell Playback End Entry First Last Last VOB Cell
(PTT) Flags Break tric- Timel Cmd. Time Time VOBU ILVU VOBU VOBU ID ID
ted. sector End Start End
1 1 1 2 yes no 0 0 00:00:13.20 00:00:13.20 0 0 4636 4661 1 1
2 2 2 8 no no 0 0 00:00:01.10 00:00:15.00 4662 0 4695 4715 1 2
At this point you get the main menu system called which resides in VTS-3.
In the end this menu system will call VMG-2 to a) show the rating screen, b) show the FBI warning, c) the other warnings and d) the disclaimer for views and expressions. Then the movie is called.
[Rating screen]
VMGM , LU 1 (en) , 2 (0:07) 0b. - Chapters: n/a, Programs: 2, Cells: 2
********** pre commands:
[00 A1 00 09 20 03 00 24] 1 if ( gprm(9) == 8195 ) then { Goto line 36 }
[61 00 00 09 00 0E 00 00] 2 Set gprm(9) =(mov) gprm(14)
[79 00 00 09 F0 00 00 00] 3 Set gprm(9) &=(and) 61440
[00 A1 00 09 20 00 00 1B] 4 if ( gprm(9) == 8192 ) then { Goto line 27 }
[00 A1 00 09 50 00 00 24] 5 if ( gprm(9) == 20480 ) then { Goto line 36 }
[00 A1 00 09 30 00 00 1F] 6 if ( gprm(9) == 12288 ) then { Goto line 31 }
[00 A1 00 09 40 00 00 1A] 7 if ( gprm(9) == 16384 ) then { Goto line 26 }
[00 A1 00 09 60 00 00 18] 8 if ( gprm(9) == 24576 ) then { Goto line 24 }
[61 00 00 09 00 81 00 00] 9 Set gprm(9) =(mov) sprm(1:Audio stream number)
[79 00 00 09 00 0F 00 00] 10 Set gprm(9) &=(and) 15
[79 00 00 0A F0 FF 00 00] 11 Set gprm(10) &=(and) 61695
[75 00 00 09 01 00 00 00] 12 Set gprm(9) *=(mul) 256
[63 00 00 0A 00 09 00 00] 13 Set gprm(10) +=(add) gprm(9)
[61 00 00 09 00 82 00 00] 14 Set gprm(9) =(mov) sprm(2:Sub-picture stream number)
[79 00 00 09 00 7F 00 00] 15 Set gprm(9) &=(and) 127
[79 00 00 0A FF 00 00 00] 16 Set gprm(10) &=(and) 65280
[63 00 00 0A 00 09 00 00] 17 Set gprm(10) +=(add) gprm(9)
[00 A1 00 0E 10 04 00 26] 18 if ( gprm(14) == 4100 ) then { Goto line 38 }
[00 A1 00 0E 10 05 00 27] 19 if ( gprm(14) == 4101 ) then { Goto line 39 }
[00 A1 00 0E 10 06 00 28] 20 if ( gprm(14) == 4102 ) then { Goto line 40 }
[00 A1 00 0E 10 07 00 29] 21 if ( gprm(14) == 4103 ) then { Goto line 41 }
[71 00 00 0D 00 01 00 00] 22 Set gprm(13) =(mov) 1
[00 02 00 00 00 00 00 00] 23 Break
[79 00 00 0E 0F FF 00 00] 24 Set gprm(14) &=(and) 4095
[73 00 00 0E 20 00 00 00] 25 Set gprm(14) +=(add) 8192
[30 06 00 01 03 83 00 00] 26 (JumpSS) Jump to VTSM 3, Root menu (TTN 1)
[61 00 00 09 00 00 00 00] 27 Set gprm(9) =(mov) gprm(0)
[79 00 00 09 00 0F 00 00] 28 Set gprm(9) &=(and) 15
[00 A1 00 09 00 02 00 25] 29 if ( gprm(9) == 2 ) then { Goto line 37 }
[00 01 00 00 00 00 00 24] 30 Goto line 36
[61 00 00 09 00 00 00 00] 31 Set gprm(9) =(mov) gprm(0)
[79 00 00 09 00 0F 00 00] 32 Set gprm(9) &=(and) 15
[00 A1 00 09 00 01 00 24] 33 if ( gprm(9) == 1 ) then { Goto line 36 }
[00 A1 00 09 00 02 00 25] 34 if ( gprm(9) == 2 ) then { Goto line 37 }
[30 06 00 01 03 83 00 00] 35 (JumpSS) Jump to VTSM 3, Root menu (TTN 1)
[30 02 00 00 00 01 00 00] 36 (JumpTT) Jump to Title 1
[30 02 00 00 00 02 00 00] 37 (JumpTT) Jump to Title 2
[30 02 00 00 00 04 00 00] 38 (JumpTT) Jump to Title 4
[30 02 00 00 00 05 00 00] 39 (JumpTT) Jump to Title 5
[30 02 00 00 00 06 00 00] 40 (JumpTT) Jump to Title 6
[30 02 00 00 00 07 00 00] 41 (JumpTT) Jump to Title 7
[00 02 00 00 00 00 00 00] 42 Break
********** post commands:
[20 04 00 00 00 00 00 03] 1 LinkPGCN PGC 3
********** cell commands:
[20 01 00 00 00 00 00 0D] 1 LinkTailPGC
********** menu buttons commands:
Playback time: 00:00:07.00 (at 30 fps)
Playback mode: sequential
PUOs: 0 (0x00000000)
NextPGCN: 0
PrevPGCN: 0
GoUpPGCN: 0
PGC Still Time: 0
Audio stream 1 status: 0x00008000 (stream=0)
But- Prog. Cell Type Layer Res- Still Cell Playback End Entry First Last Last VOB Cell
tons Flags Break tric- Timel Cmd. Time Time VOBU ILVU VOBU VOBU ID ID
ted. sector End Start End
0 1 1 2 yes no 0 0 00:00:05.20 00:00:05.20 190 0 711 871 2 1
0 2 2 8 no no 0 1 00:00:01.10 00:00:07.00 872 0 890 918 2 2
[FBI warning screen]
VMGM , LU 1 (en) , 3 (0:17) 0b. - Chapters: n/a, Programs: 2, Cells: 2
********** pre commands:
[61 00 00 09 00 00 00 00] 1 Set gprm(9) =(mov) gprm(0)
[79 00 00 09 00 0F 00 00] 2 Set gprm(9) &=(and) 15
[00 A1 00 09 00 01 00 05] 3 if ( gprm(9) == 1 ) then { Goto line 5 }
[20 A4 00 09 00 02 00 04] 4 if ( gprm(9) == 2 ) then { LinkPGCN PGC 4 }
[00 02 00 00 00 00 00 00] 5 Break
********** post commands:
[20 04 00 00 00 00 00 05] 1 LinkPGCN PGC 5
********** cell commands:
[20 01 00 00 00 00 00 0D] 1 LinkTailPGC
********** menu buttons commands:
Playback time: 00:00:17.10 (at 30 fps)
Playback mode: sequential
PUOs: 0 (0x00000000)
NextPGCN: 0
PrevPGCN: 0
GoUpPGCN: 0
PGC Still Time: 0
Audio stream 1 status: 0x00008000 (stream=0)
But- Prog. Cell Type Layer Res- Still Cell Playback End Entry First Last Last VOB Cell
tons Flags Break tric- Timel Cmd. Time Time VOBU ILVU VOBU VOBU ID ID
ted. sector End Start End
0 1 1 2 yes no 0 0 00:00:16.00 00:00:16.00 919 0 4643 4678 3 1
0 2 2 8 no no 0 1 00:00:01.10 00:00:17.10 4679 0 4698 4728 3 2
[Disclaimer screen]
VMGM , LU 1 (en) , 5 (0:06) 0b. - Chapters: n/a, Programs: 2, Cells: 2
********** pre commands:
[00 02 00 00 00 00 00 00] 1 Break
********** post commands:
[20 04 00 00 00 00 00 06] 1 LinkPGCN PGC 6
********** cell commands:
[20 01 00 00 00 00 00 0D] 1 LinkTailPGC
********** menu buttons commands:
Playback time: 00:00:06.10 (at 30 fps)
Playback mode: sequential
PUOs: 0 (0x00000000)
NextPGCN: 0
PrevPGCN: 0
GoUpPGCN: 0
PGC Still Time: 0
Audio stream 1 status: 0x00008000 (stream=0)
Subpic stream 1 status: 0x80000000 (streams for 4:3=0, wide=0, letterbox=0, pan&scan=0)
But- Prog. Cell Type Layer Res- Still Cell Playback End Entry First Last Last VOB Cell
tons Flags Break tric- Timel Cmd. Time Time VOBU ILVU VOBU VOBU ID ID
ted. sector End Start End
0 1 1 2 yes no 0 0 00:00:05.00 00:00:05.00 8237 0 8415 8431 5 1
0 2 2 8 no no 0 1 00:00:01.10 00:00:06.10 8432 0 8451 8481 5 2
[Disclaimer screen 2]
VMGM , LU 1 (en) , 6 (0:06) 0b. - Chapters: n/a, Programs: 2, Cells: 2
********** pre commands:
[00 02 00 00 00 00 00 00] 1 Break
********** post commands:
[71 00 00 0E 11 11 00 00] 1 Set gprm(14) =(mov) 4369
[61 00 00 09 00 00 00 00] 2 Set gprm(9) =(mov) gprm(0)
[79 00 00 09 00 0F 00 00] 3 Set gprm(9) &=(and) 15
[00 A1 00 09 00 01 00 07] 4 if ( gprm(9) == 1 ) then { Goto line 7 }
[00 A1 00 09 00 02 00 08] 5 if ( gprm(9) == 2 ) then { Goto line 8 }
[30 06 00 01 03 83 00 00] 6 (JumpSS) Jump to VTSM 3, Root menu (TTN 1)
[30 02 00 00 00 01 00 00] 7 (JumpTT) Jump to Title 1
[30 02 00 00 00 02 00 00] 8 (JumpTT) Jump to Title 2
********** cell commands:
[20 01 00 00 00 00 00 0D] 1 LinkTailPGC
********** menu buttons commands:
Playback time: 00:00:06.10 (at 30 fps)
Playback mode: sequential
PUOs: 0 (0x00000000)
NextPGCN: 0
PrevPGCN: 0
GoUpPGCN: 0
PGC Still Time: 0
Audio stream 1 status: 0x00008000 (stream=0)
Subpic stream 1 status: 0x80000000 (streams for 4:3=0, wide=0, letterbox=0, pan&scan=0)
But- Prog. Cell Type Layer Res- Still Cell Playback End Entry First Last Last VOB Cell
tons Flags Break tric- Timel Cmd. Time Time VOBU ILVU VOBU VOBU ID ID
ted. sector End Start End
0 1 1 2 yes no 0 0 00:00:05.00 00:00:05.00 8482 0 8660 8678 6 1
0 2 2 8 no no 0 1 00:00:01.10 00:00:06.10 8679 0 8699 8732 6 2
Pheww.
Too long - next post
northwind
4th November 2004, 04:00
Now the obvious shortcut is line 23 in VMG-2
Replacing this with a JumpTT to title 1.
Doing that leaves the DVD useless.
It will not even play the the studio splash screen (title 3 in VTS-5) even if this is called way earlier. Go figure.
IFOedit delete playback button - same result.
PGCEdit kill playback on any of the VMGs mentioned above will render the result a dud.
I don't even ask PGCEdit to alter the anything but the PGC:
VMGM , LU 1 (en) , 2 (0:07) 0b. - Chapters: n/a, Programs: 2, Cells: 2
********** pre commands:
[00 A1 00 09 20 03 00 24] 1 if ( gprm(9) == 8195 ) then { Goto line 36 }
[61 00 00 09 00 0E 00 00] 2 Set gprm(9) =(mov) gprm(14)
[79 00 00 09 F0 00 00 00] 3 Set gprm(9) &=(and) 61440
[00 A1 00 09 20 00 00 1B] 4 if ( gprm(9) == 8192 ) then { Goto line 27 }
[00 A1 00 09 50 00 00 24] 5 if ( gprm(9) == 20480 ) then { Goto line 36 }
[00 A1 00 09 30 00 00 1F] 6 if ( gprm(9) == 12288 ) then { Goto line 31 }
[00 A1 00 09 40 00 00 1A] 7 if ( gprm(9) == 16384 ) then { Goto line 26 }
[00 A1 00 09 60 00 00 18] 8 if ( gprm(9) == 24576 ) then { Goto line 24 }
[61 00 00 09 00 81 00 00] 9 Set gprm(9) =(mov) sprm(1:Audio stream number)
[79 00 00 09 00 0F 00 00] 10 Set gprm(9) &=(and) 15
[79 00 00 0A F0 FF 00 00] 11 Set gprm(10) &=(and) 61695
[75 00 00 09 01 00 00 00] 12 Set gprm(9) *=(mul) 256
[63 00 00 0A 00 09 00 00] 13 Set gprm(10) +=(add) gprm(9)
[61 00 00 09 00 82 00 00] 14 Set gprm(9) =(mov) sprm(2:Sub-picture stream number)
[79 00 00 09 00 7F 00 00] 15 Set gprm(9) &=(and) 127
[79 00 00 0A FF 00 00 00] 16 Set gprm(10) &=(and) 65280
[63 00 00 0A 00 09 00 00] 17 Set gprm(10) +=(add) gprm(9)
[00 A1 00 0E 10 04 00 26] 18 if ( gprm(14) == 4100 ) then { Goto line 38 }
[00 A1 00 0E 10 05 00 27] 19 if ( gprm(14) == 4101 ) then { Goto line 39 }
[00 A1 00 0E 10 06 00 28] 20 if ( gprm(14) == 4102 ) then { Goto line 40 }
[00 A1 00 0E 10 07 00 29] 21 if ( gprm(14) == 4103 ) then { Goto line 41 }
[71 00 00 0D 00 01 00 00] 22 Set gprm(13) =(mov) 1
[00 01 00 00 00 00 00 2B] 23 Goto line 43
[79 00 00 0E 0F FF 00 00] 24 Set gprm(14) &=(and) 4095
[73 00 00 0E 20 00 00 00] 25 Set gprm(14) +=(add) 8192
[30 06 00 01 03 83 00 00] 26 (JumpSS) Jump to VTSM 3, Root menu (TTN 1)
[61 00 00 09 00 00 00 00] 27 Set gprm(9) =(mov) gprm(0)
[79 00 00 09 00 0F 00 00] 28 Set gprm(9) &=(and) 15
[00 A1 00 09 00 02 00 25] 29 if ( gprm(9) == 2 ) then { Goto line 37 }
[00 01 00 00 00 00 00 24] 30 Goto line 36
[61 00 00 09 00 00 00 00] 31 Set gprm(9) =(mov) gprm(0)
[79 00 00 09 00 0F 00 00] 32 Set gprm(9) &=(and) 15
[00 A1 00 09 00 01 00 24] 33 if ( gprm(9) == 1 ) then { Goto line 36 }
[00 A1 00 09 00 02 00 25] 34 if ( gprm(9) == 2 ) then { Goto line 37 }
[30 06 00 01 03 83 00 00] 35 (JumpSS) Jump to VTSM 3, Root menu (TTN 1)
[30 02 00 00 00 01 00 00] 36 (JumpTT) Jump to Title 1
[30 02 00 00 00 02 00 00] 37 (JumpTT) Jump to Title 2
[30 02 00 00 00 04 00 00] 38 (JumpTT) Jump to Title 4
[30 02 00 00 00 05 00 00] 39 (JumpTT) Jump to Title 5
[30 02 00 00 00 06 00 00] 40 (JumpTT) Jump to Title 6
[30 02 00 00 00 07 00 00] 41 (JumpTT) Jump to Title 7
[00 01 00 00 00 00 00 2B] 42 Goto line 43
[00 00 00 00 00 00 00 00] 43 NOP
[20 04 00 00 00 00 00 03] 44 LinkPGCN PGC 3
********** post commands:
[20 04 00 00 00 00 00 03] 1 LinkPGCN PGC 3
********** cell commands:
[20 01 00 00 00 00 00 0D] 1 LinkTailPGC
********** menu buttons commands:
Playback time: 00:00:07.00 (at 30 fps)
Playback mode: sequential
PUOs: 0 (0x00000000)
NextPGCN: 0
PrevPGCN: 0
GoUpPGCN: 0
PGC Still Time: 0
Audio stream 1 status: 0x00008000 (stream=0)
But- Prog. Cell Type Layer Res- Still Cell Playback End Entry First Last Last VOB Cell
tons Flags Break tric- Timel Cmd. Time Time VOBU ILVU VOBU VOBU ID ID
ted. sector End Start End
0 1 1 2 yes no 0 0 00:00:05.20 00:00:05.20 190 0 711 871 2 1
0 2 2 8 no no 0 1 00:00:01.10 00:00:07.00 872 0 890 918 2 2
But if you have an explanation - I am listening.
2COOL
4th November 2004, 04:07
@northwind
Do you do any blanking with PgcEdit 0.3.7? Does your DVD work with PgcEdit's Kill PGC Playback without even blanking anything yet?
northwind
4th November 2004, 05:13
Well - I just downloaded the 0.3.7
But yes - I have used PGCEdit to blank out stuff before - and it works well.
I do have a feeling there is more to your question though - can you elaborate?
And again: I really think that it is not related to PGCEdit rather it is a new scheme we haven't seen before. DVDRemake and IFOEdit fails too.
IFOEdit - its delete playback function of course.
2COOL
4th November 2004, 06:15
I think I know what your problem would be. It's these two commands in your VMGM 2.
[Rating screen]
VMGM , LU 1 (en) , 2 (0:07) 0b. - Chapters: n/a, Programs: 2, Cells: 2
********** pre commands:
[61 00 00 09 00 81 00 00] 9 Set gprm(9) =(mov) sprm(1:Audio stream number)
[61 00 00 09 00 82 00 00] 14 Set gprm(9) =(mov) sprm(2:Sub-picture stream number)
When you do PgcEdit's Kill Playback or IfoEdit's Delete playback, they just change the PGC's Command Table. They should not alter your menu's attributes.
VMG Overview:
Video Manager Menu attributes:
Video: MPEG-2 720x480 (NTSC) (NTSC 525/60) (4:3) (not specified perm.display)
Audio 1: Not Specified (Dolby AC-3) 2ch 48Kbps DRC
SubPicture 1: Not Specified (2-bit rle )
When you blank any cells here, the audio and subpicture streams are gone. But, with the audio and subpicture attributes still configured in the IFO, it would create a problem. :(
Now, I can't confirm this right now but if DVD Remake does it's job with blanking, it should REMOVE the audio and subpicture attributes from VMGM MAT table. You should see this afterwards.
VMG Overview:
Video Manager Menu attributes:
Video: MPEG-2 720x480 (NTSC) (NTSC 525/60) (4:3) (not specified perm.display)
Because when you VMGM 2'cell is accessed, it thinks there are still audio and subpicture streams in it.
With these commands, it's looking for non-existant streams to input into gprm(9).
[61 00 00 09 00 81 00 00] 9 Set gprm(9) =(mov) sprm(1:Audio stream number)
[61 00 00 09 00 82 00 00] 14 Set gprm(9) =(mov) sprm(2:Sub-picture stream number)
I brought this matter up recently in this thread (http://forum.doom9.org/showthread.php?s=&postid=451731#post451731).
The updating/removal of the attributes when blanking with PgcEdit has been fixed in 0.3.7.
I knew you were blanking with DVD Remake, but I had to be sure you if you were blanking with PgcEdit in this project. Also, current VobBlanker 1.5.0.7 does not correct the VMGM MAT table yet.
I'd like to confirm my suspicions by asking to do another test. Try blanking out all your VMGM menus with PgcEdit only and test your playback.
northwind
4th November 2004, 07:17
Thanks 2cool. That is an interesting observation.
Unfortunately - no cigar.
I just tried it. After PGCEdits Utilities->blankOutAllPGCsInDomain the DVD is useless.
I am going along the very same lines you are. The DVD spec we know is not the real one. The real one is not available to us.
So there are errors in that spec and those errors can be exploited for things like this.
You mention VMG-2
Well VMG-2 doesn't come into play before the playback breaks.
The sequence is
FP
VMG-1
VTST-5,PGC1 (title 3)
VMG-2
VTSM-3, PGC1 (menu system)
....
VMG-2
VMG-3
VMG-5
VTST-3, PGC1 (main movie, widescreen)
When you alter anything (except IFOEdit manually editing playback time and start/stop sectors of the cells), then title 3 won't even play.
And title-3 is before VMG-2 is ever called the first time.
Spooky isn't it.
I verified the attribute change. It happens as you described.
The test I put together is 180M. I blanked all unused stuff except 1st cell of the main movie to make sure it plays.
The control works flawlessly so the test basis is ok.
I just verified this again - just for the fun of it:
In VMG-2 I changed:
[71 00 00 0D 00 01 00 00] 22 Set gprm(13) =(mov) 1
[00 02 00 00 00 00 00 00] 23 Break
[79 00 00 0E 0F FF 00 00] 24 Set gprm(14) &=(and) 4095
to
[71 00 00 0D 00 01 00 00] 22 Set gprm(13) =(mov) 1
[30 02 00 00 00 01 00 00] 23 (JumpTT) Jump to Title 1
[79 00 00 0E 0F FF 00 00] 24 Set gprm(14) &=(and) 4095
That alone breaks the playback :confused:
Oh - and thanks for your "NTSC land". Neat location. I shamelessly stole it right away.
blutach
4th November 2004, 12:13
Not wanting to interrupt this discussion, only to observe that "PAL Land" IS THE PLACE TO BE!!
LMAO
:D :D :D :cool: :cool: :cool:
jeanl
4th November 2004, 20:02
Originally posted by northwind
I just verified this again - just for the fun of it:
In VMG-2 I changed:
[71 00 00 0D 00 01 00 00] 22 Set gprm(13) =(mov) 1
[00 02 00 00 00 00 00 00] 23 Break
[79 00 00 0E 0F FF 00 00] 24 Set gprm(14) &=(and) 4095
to
[71 00 00 0D 00 01 00 00] 22 Set gprm(13) =(mov) 1
[30 02 00 00 00 01 00 00] 23 (JumpTT) Jump to Title 1
[79 00 00 0E 0F FF 00 00] 24 Set gprm(14) &=(and) 4095
That alone breaks the playback :confused:
northwind, I'm a bit confused... did you expect the change above to work? You're replacing a break (which normally goes to the video, plays it and executes the associated cell commands, then the post commands) by a direct jump to title 1, that's a heck of a change! Normally, after the video you would do LinkPGCN PGC 3, according to the post-command. Instead you jump straight to title 1. This is bound to break because lots of things are happening (registers being setup etc) in PGC3 and in the PGCs you then go into...
Thanks for sending the original and modified commands. I'm also very confused here. In your post showing the modified precommand area (i.e. after kill playback) in VMG-2, I can see that the break has been changed into a goto, which is normal. I would expect that to work normally! But then you say:
Now the obvious shortcut is line 23 in VMG-2
Replacing this with a JumpTT to title 1.
Doing that leaves the DVD useless.
Well, my reaction is the same as above! There's almost NO chance that this would work after you make that change!!!
So, can you clarify? If you just do what 2COOL was asking: blanking out all your VMGM menus with PgcEdit only, but don't change anything else!, does that render the DVD unusable??? If it does, then we have a real problem, because that's supposed to work!
If the DVD plays normally (except you no longer see the video) that's good, and if it breaks after your next modification (the JumpTT command), then that's not surprising, for the reasons I explained above.
So in short, it'd be great if you could confirm that PgcEdit Kill-playback does not break anything by itself, and that it's when you repleace the break by a JumpTT that things break.
Thanks!
Jeanl
northwind
5th November 2004, 02:27
So, can you clarify? If you just do what 2COOL was asking: blanking out all your VMGM menus with PgcEdit only, but don't change anything else!, does that render the DVD unusable??? If it does, then we have a real problem, because that's supposed to work!
Hello JeanL, Sorry for doing multiple things in one post. I can see I should have been more clear on what I was doing.
I started the earlier post with:
Unfortunately - no cigar.
I just tried it. After PGCEdits Utilities->blankOutAllPGCsInDomain the DVD is useless.
I was of course doing exactly what 2cool asked for. The answer to your question is therefore: I tried blanking out all the VMG menues with PGCEdit only (exactly as requested), and it left the DVD useless.
To your question about changing the VMG-2:
Yes of course I expect it to work. It should because all the registers are holding correct values and all that is happening is that title 1 is called after the warning/disclaimer screens. I was just calling it a bit earlier before the screens come into play.
Look - all these changes, both the PGCEdit blanking and the edititing of VMG-2 works using softplayers like PowerDVD and WinDVD.
They just don't work on my settop players (Panasonic and GoVideo).
I appreciate your (all of you) comments. I am not even sure what it is I am looking at here. I just have a feeling that it is an exploit of the DVD spec to make omitting these annoying screens as difficult as possible.
So any suggestion is more than welcome and I will retry/verify/do whatever is called for to figure this one out.
2COOL
5th November 2004, 02:32
@Northwind
Excuse me for my laziness but what is this DVD we are working on here? I assume it's a region 1 DVD. If so, i'll try to look for it.
northwind
5th November 2004, 02:45
It is "Breakin' all the Rules" Region 1 - yes
A screenshot of the Main menu screen is attached to this message for identification. That is if I succeed in attaching the image :cool:
I don't think the attachment went through. Well so be it...
kor-dvd
5th November 2004, 05:49
I downloaded pgcedit from "http://home.tiscali.be/debie.roland/pgcedit/index.html"
when I double-click on this program, It does not operate....
it doesn't show any err message...
What's wrong?
r0lZ
5th November 2004, 05:50
Maybe it's a problem with the new VOB cell not matching the video attributes in the IFOs.
Northwind, could you try to blank out the VMGM with the first option enabled: "Completely remove the menu VOB file". This way, the VOB will never be played anymore.
r0lZ
5th November 2004, 05:58
@kor-dvd
Humm... Difficult to say what's wrong without an error message.
However, it is possible that you got an error when downloading. Try to download it again...
Also, you may try to remove (or rename) the PgcEdit's configuration files, stored in "C:\Documents and Settings\<your login name>\Application Data\PgcEdit".
Note that the directory "Application Data" is hidden. You may have to enable "Show hidden files and folders" in Folder Options, View tab.
kor-dvd
5th November 2004, 06:01
Thank you replay...
I am poor at English, So You misunderstand my intension...
My question is that
I excute "pgcedit.exe" but It's not execute without any error message..
What's wrong with that?
r0lZ
5th November 2004, 06:10
I understand that PgcEdit.exe doesn't start when you double-click on his icon, and you doesn't see any error message. Is it your problem?
If so, try what I have suggested in my previour post: download it again. If it still doesn't start, try to remove the old configuration settings...
Also, you must have premission to write to the folder PgcEdit.exe is installed in, at least the first time you use it.
kor-dvd
5th November 2004, 06:10
I got it....
The reason is that
I am an Korean
So Program path contains Korean character...
then I change Full-path with ASCII So It execute very well...
Thanks r0lZ
r0lZ
5th November 2004, 06:14
Thanks for your answer. It's probably a problem related to Windows in Korean, not to PgcEdit.
jeanl
5th November 2004, 06:37
Northwind:
The sequence is
FP
VMG-1
VTST-5,PGC1 (title 3)
VMG-2
VTSM-3, PGC1 (menu system)
....
VMG-2
VMG-3
VMG-5
VTST-3, PGC1 (main movie, widescreen)
How did you determine the sequence? I looked at your precommand/postcommands and in my humble opinion, it goes to VMG-6 before it goes to VTST-3. That's because you have:
VMGM , LU 1 (en) , 5 (0:06) 0b. - Chapters: n/a, Programs: 2, Cells: 2
********** pre commands:
[00 02 00 00 00 00 00 00] 1 Break
********** post commands:
[20 04 00 00 00 00 00 06] 1 LinkPGCN PGC 6
********** cell commands:
[20 01 00 00 00 00 00 0D] 1 LinkTailPGC
Now if you look at PGC 6, you see:
[71 00 00 0E 11 11 00 00] 1 Set gprm(14) =(mov) 4369
[61 00 00 09 00 00 00 00] 2 Set gprm(9) =(mov) gprm(0)
[79 00 00 09 00 0F 00 00] 3 Set gprm(9) &=(and) 15
[00 A1 00 09 00 01 00 07] 4 if ( gprm(9) == 1 ) then { Goto line 7 }
[00 A1 00 09 00 02 00 08] 5 if ( gprm(9) == 2 ) then { Goto line 8 }
[30 06 00 01 03 83 00 00] 6 (JumpSS) Jump to VTSM 3, Root menu (TTN 1)
[30 02 00 00 00 01 00 00] 7 (JumpTT) Jump to Title 1
[30 02 00 00 00 02 00 00] 8 (JumpTT) Jump to Title 2
There's a couple gprms initialized here, right?
In one of your posts, you said:
I just verified this again - just for the fun of it:
In VMG-2 I changed:
[71 00 00 0D 00 01 00 00] 22 Set gprm(13) =(mov) 1
[00 02 00 00 00 00 00 00] 23 Break
[79 00 00 0E 0F FF 00 00] 24 Set gprm(14) &=(and) 4095
to
[71 00 00 0D 00 01 00 00] 22 Set gprm(13) =(mov) 1
[30 02 00 00 00 01 00 00] 23 (JumpTT) Jump to Title 1
[79 00 00 0E 0F FF 00 00] 24 Set gprm(14) &=(and) 4095
That alone breaks the playback
well, right there you're skipping
VMG-3
VMG-5
VMG-6
and therefore you're skipping the gprm initializations that happen in VMG-6. That's potentially bad. Can you check whether Title 1 uses these gprms (14 and 9) for anything?
What's surprising is that it works in your soft DVD and not on your settop DVD....
Also, could you possibly try something for us:
- Can you try to skip playback without blanking of the PGCs in VMG in pgcedit? (just using the "kill PGC playback" macro? This will not blank anything, and won't change anything in the VOB, it will just modify the pre/post commands.
If we find that this does work (the DVD is playable on your settop players), but a real "blank" (which affects the VOB files) does not, then we know something bad is happening when PgcEdit replaces the VOB by a small blank one...
Thanks for your efforts man, it'd be great if we could get to the bottom of that!!! :)
jeanl
2COOL
5th November 2004, 08:23
@Northwind
Here is the actual navigation sequence from First Play PGC to Main Menu.
First Play PGC
********** pre commands:
[30 06 00 01 00 C0 00 00] 1 (JumpSS) Jump to VMGM PGC 1
________________________________________________________
VMGM , LU 1 (en) , 1 (0:05) 0b. - Chapters: n/a, Programs: 2, Cells: 2
********** pre commands:
[71 00 00 00 10 00 00 00] 1 Set gprm(0) =(mov) 4096
[71 00 00 0A 00 00 00 00] 2 Set gprm(10) =(mov) 0
[71 00 00 0B 00 00 00 00] 3 Set gprm(11) =(mov) 0
[61 00 00 09 00 90 00 00] 4 Set gprm(9) =(mov) sprm(16:Preferred audio language)
[00 A1 00 09 65 6E 00 08] 5 if ( gprm(9) == 25966 ("en") ) then { Goto line 8 }
[00 A1 00 09 66 72 00 0C] 6 if ( gprm(9) == 26226 ("fr") ) then { Goto line 12 }
[00 01 00 00 00 00 00 0F] 7 Goto line 15
[61 00 00 09 00 92 00 00] 15 Set gprm(9) =(mov) sprm(18:Preferred sub-picture language)
[00 A1 00 09 65 6E 00 15] 16 if ( gprm(9) == 25966 ("en") ) then { Goto line 21 }
[00 A1 00 09 66 72 00 18] 17 if ( gprm(9) == 26226 ("fr") ) then { Goto line 24 }
[71 00 00 09 00 00 00 00] 18 Set gprm(9) =(mov) 0
[63 00 00 0A 00 09 00 00] 19 Set gprm(10) +=(add) gprm(9)
[00 01 00 00 00 00 00 1A] 20 Goto line 26
[71 00 00 0E 10 03 00 00] 26 Set gprm(14) =(mov) 4099
[30 02 00 00 00 03 00 00] 27 (JumpTT) Jump to Title 3
________________________________________________________
VTST 5 , 1 TTN 1 (0:15) Title 3 - Chapters: 2, Programs: 2, Cells: 2
********** pre commands:
[71 00 00 0E 20 03 00 00] 1 Set gprm(14) =(mov) 8195
[00 02 00 00 00 00 00 00] 2 Break
Play Columbia Tristar Logo
********** post commands:
[30 08 00 00 01 83 00 00] 1 (CallSS) Call the VTSM Root menu of the current VTS, resume cell 1
________________________________________________________
VTSM 5 , LU 1 (en) , 1 (dummy) RootM - Chapters: n/a, Programs: 0, Cells: 0
********** pre commands:
[71 00 00 07 00 00 00 00] 1 Set gprm(7) =(mov) 0
[71 00 00 08 00 00 00 00] 2 Set gprm(8) =(mov) 0
[71 00 00 0D 00 01 00 00] 3 Set gprm(13) =(mov) 1
[61 00 00 09 00 0C 00 00] 4 Set gprm(9) =(mov) gprm(12)
[71 00 00 0C 00 02 00 00] 5 Set gprm(12) =(mov) 2
[71 A0 0E 0E 50 00 00 00] 6 if ( gprm(14) == 0 ) then { Set gprm(14) =(mov) 20480 }
[30 06 00 02 00 C0 00 00] 7 (JumpSS) Jump to VMGM PGC 2
________________________________________________________
VMGM , LU 1 (en) , 2 (0:07) 0b. - Chapters: n/a, Programs: 2, Cells: 2
********** pre commands:
[00 A1 00 09 20 03 00 24] 1 if ( gprm(9) == 8195 ) then { Goto line 36 }
[61 00 00 09 00 0E 00 00] 2 Set gprm(9) =(mov) gprm(14)
[79 00 00 09 F0 00 00 00] 3 Set gprm(9) &=(and) 61440
[00 A1 00 09 20 00 00 1B] 4 if ( gprm(9) == 8192 ) then { Goto line 27 }
[61 00 00 09 00 00 00 00] 27 Set gprm(9) =(mov) gprm(0)
[79 00 00 09 00 0F 00 00] 28 Set gprm(9) &=(and) 15
[00 A1 00 09 00 02 00 25] 29 if ( gprm(9) == 2 ) then { Goto line 37 }
[00 01 00 00 00 00 00 24] 30 Goto line 36
[30 02 00 00 00 01 00 00] 36 (JumpTT) Jump to Title 1
________________________________________________________
VTST 3 , 1 TTN 1 (1:25:09) Title 1 - Chapters: 28, Programs: 28, Cells: 28
********** pre commands:
[00 A1 00 0E 11 11 00 33] 1 if ( gprm(14) == 4369 ) then { Goto line 51 }
[61 00 00 09 00 0E 00 00] 2 Set gprm(9) =(mov) gprm(14)
[79 00 00 09 F0 00 00 00] 3 Set gprm(9) &=(and) 61440
[00 A1 00 09 20 00 00 41] 4 if ( gprm(9) == 8192 ) then { Goto line 65 }
[30 08 00 00 01 83 00 00] 65 (CallSS) Call the VTSM Root menu of the current VTS, resume cell 1
________________________________________________________
VTSM 3 , LU 1 (en) , 1 (dummy) RootM - Chapters: n/a, Programs: 0, Cells: 0
********** pre commands:
[61 00 00 09 00 0E 00 00] 1 Set gprm(9) =(mov) gprm(14)
[79 00 00 09 F0 00 00 00] 2 Set gprm(9) &=(and) 61440
[00 A1 00 09 20 00 00 25] 3 if ( gprm(9) == 8192 ) then { Goto line 37 }
[61 00 00 02 00 0A 00 00] 37 Set gprm(2) =(mov) gprm(10)
[79 00 00 02 00 7F 00 00] 38 Set gprm(2) &=(and) 127
[41 00 00 00 82 00 00 00] 39 (SetSTN) Set Sub-picture stream = gprm(2)
[61 00 00 03 00 02 00 00] 40 Set gprm(3) =(mov) gprm(2)
[79 00 00 03 00 3F 00 00] 41 Set gprm(3) &=(and) 63
[61 00 00 04 00 0A 00 00] 42 Set gprm(4) =(mov) gprm(10)
[79 00 00 04 0F 00 00 00] 43 Set gprm(4) &=(and) 3840
[76 00 00 04 01 00 00 00] 44 Set gprm(4) /=(div) 256
[79 00 00 04 00 0F 00 00] 45 Set gprm(4) &=(and) 15
[41 00 00 84 00 00 00 00] 46 (SetSTN) Set Audio stream = gprm(4)
[20 04 00 00 00 00 00 04] 47 LinkPGCN PGC 4
________________________________________________________
VTSM 3 , LU 1 (en) , 4 (0:29) 6b. - Chapters: n/a, Programs: 5, Cells: 5
********** pre commands:
[61 00 00 09 00 81 00 00] 1 Set gprm(9) =(mov) sprm(1:Audio stream number)
[79 00 00 09 00 0F 00 00] 2 Set gprm(9) &=(and) 15
[00 E1 00 09 00 01 00 05] 3 if ( gprm(9) <= 1 ) then { Goto line 5 }
[61 00 00 09 00 81 00 00] 5 Set gprm(9) =(mov) sprm(1:Audio stream number)
[79 00 00 09 00 0F 00 00] 6 Set gprm(9) &=(and) 15
[75 00 00 09 01 00 00 00] 7 Set gprm(9) *=(mul) 256
[79 00 00 0B F0 FF 00 00] 8 Set gprm(11) &=(and) 61695
[63 00 00 0B 00 09 00 00] 9 Set gprm(11) +=(add) gprm(9)
[00 A1 00 0E 20 03 00 33] 10 if ( gprm(14) == 8195 ) then { Goto line 51 }
[71 A0 0E 0E 00 00 20 03] 51 if ( gprm(14) == 8195 ) then { Set gprm(14) =(mov) 0 }
[71 A0 0E 0E 00 00 50 00] 52 if ( gprm(14) == 20480 ) then { Set gprm(14) =(mov) 0 }
[71 00 00 08 00 00 00 00] 53 Set gprm(8) =(mov) 0
[71 00 00 0D 00 01 00 00] 54 Set gprm(13) =(mov) 1
[61 00 00 09 00 0A 00 00] 55 Set gprm(9) =(mov) gprm(10)
[79 00 00 09 F0 00 00 00] 56 Set gprm(9) &=(and) 61440
[20 A6 00 09 10 00 04 02] 57 if ( gprm(9) == 4096 ) then { LinkPGN Program 2, button 1 (1024) }
[7A 00 00 0A 10 00 00 00] 58 Set gprm(10) |=(or) 4096
[20 06 00 00 00 00 04 01] 59 LinkPGN Program 1, button 1 (1024)
Main Menu
northwind
5th November 2004, 08:29
Jeanl,
Ha - one day - one day is all it takes to forget what you did. So I just spend an hour before it dawned on me.
You missed the point, but what is worse - so did I and I came up with that stupid example.
Anyway.... let me take it in order:
The sequence: Yes you are right. It is a typo. In my notes it is there. VMG-6 is called before VTST-3,1
The example: That is where I in VMG-2 line 23 replaced a break with a jump to title 1.
It is irrelevant. I could have put a NOP in there.
Title 3 (Studio splash screen; VTST-5,1) is called and should have played regardless because it is called way before VMG-2.
But it never plays. The set-tops stops never showing anything.
That is what I should have pointed out.
Otherwise you are right. I would need to set gprm(14) to 4369 to get title 1 playing. I was pondering that for an hour before it dawned on me that I should still have seen title-3. Duh.
Sorry for that one.
2Cool: Just saw your post - this took some time to go through.
Yes I agree - that is my notes as well.
The jump to title 1 in VMG-2, line 23 is still valid, because it breaks the playing of title-3
jeanl
5th November 2004, 08:34
northwind, 2COOL
Now, I'm really confused. Where are we standing now? I have a hard time deciding if something's wrong with the way PgcEdit kills playback or if northwind did something fishy in addition?
2COOL, you seem to have the DVD, can you replicate the problem?
The reason I'm curious is that it's not the first time we've heard of people having problems with DVDs blanked with PgcEdit or Vobblanker... It'd be cool if we could get to the bottom of that...
:confused:
Jeanl
northwind
5th November 2004, 08:38
Well - I didn't do anything fishy intentionally or knowingly.
I could have two stupid set top players.
Panasonic F65 (5 changer carusel type)
GoVideo (dumm little vhs/dvd combo)
Sajan
5th November 2004, 18:19
Here are some qwestions;)
1. How to add new valid PGC (with new associated blank video)?
2. How to add cell in existing PGC (for further pointing on existing VID/CID or for creating new associated blank video)?
3. How to remove PGC?
4. How to add new title in VMGM?
5. Why I can't jump next PGC from this, only autojump at the playend of it:
----------------------------------------
VMGM , LU 1 (ru) , 3 (0:07) 0b. - Chapters: n/a, Programs: 1, Cells: 1
********** pre commands:
********** post commands:
[20 04 00 00 00 00 00 04] 1 LinkPGCN PGC 4
********** cell commands:
********** menu buttons commands:
Playback time: 00:00:07.25 (at 30 fps)
Playback mode: sequential
PUOs: 16007172 (0x00F44004)
- Title play (0x00000004)
- Menu call - Angle (0x00004000)
- Still off (0x00040000)
- Audio stream change (0x00100000)
- Subpicture stream change (0x00200000)
- Angle change (0x00400000)
- Karaoke audio mix change (0x00800000)
NextPGCN: 0
PrevPGCN: 0
GoUpPGCN: 0
PGC Still Time: 0
But- Prog. Cell Type Layer Res-....Still..Cell
tons..............Flags Break tricted Timel Cmd.
0......1.....1.....2......yes...no.......0.....0
------------------------------------
r0lZ
5th November 2004, 18:54
Originally posted by Sajan
Here are some qwestions;)
1. How to add new valid PGC (with new associated blank video)?
2. How to add cell in existing PGC (for further pointing on existing VID/CID or for creating new associated blank video)?
3. How to remove PGC?
You cannot do that in PgcEdit for now. Maybe later...
4. How to add new title in VMGM? You cannot have a Title in the VMGM domain.
For now, it is only possible to add a dummy PGC to an existing VMGM.
But you can inport a whole VMGM with Import Menu. This will replace the current VMGM, though.
5. Why I can't jump next PGC from this, only autojump at the playend of it:
...
NextPGCN: 0
... I don't understand this request.
To jump to another PGC with the Next Chapter button, you need to set the NextPGCN to the PGC number you want to jump to. Is it what you want?
Sajan
5th November 2004, 19:17
You cannot do that in PgcEdit for now. Maybe later...
By the way, where I can do it, which soft can be helpful?
You cannot have a Title in the VMGM domain.
For now, it is only possible to add a dummy PGC to an existing VMGM.
But you can inport a whole VMGM with Import Menu. This will replace the current VMGM, though.
Sorry, maybe I've said something wrong (sorry for my bad English). I talk about adding Title in common Title Play Map Table and pointing to existing title in VTS.
To jump to another PGC with the Next Chapter button, you need to set the NextPGCN to the PGC number you want to jump to.
I've set it to 4 (next PGC with video), but nothing is changed.
Next button dosn't do anything, just need to wait of playing PGC.
r0lZ
5th November 2004, 20:47
Originally posted by Sajan
I talk about adding Title in common Title Play Map Table and pointing to existing title in VTS. That's not possible for now.
Maybe I will add a Title/Chapter/Program editor later, but don't expect that soon. Sorry.
Next button dosn't do anything, just need to wait of playing PGC. I really don't know. Maybe someone here could explain...
2COOL
5th November 2004, 20:52
@Northwind
Originally posted by northwind
If I use PGCEdits kill playback function or use DVDRemake's blanking then the player will start loading and then execute an exit. I still can't recreate your situation. :( I only used PgcEdit's Kill Playback and I still got my studio splash (Title 3) to display, software or standaone player. It should've worked and it did for me.
I also have a new navigation sequence for your Breakin' All The Rules (R1) DVD. It seems I didn't take into account on your standalone's player's Audio and Subpictures. SPRMs 16 and 18 can only be set by your player and not in the IFOs. I'm highly assuming that both are set to English and also the same for your computer since you reside in NTSC Land. Please check to see your standalone is set to English.
I'm going to post the commands only to the Studio Splash display since you had problems displaying it.
I assumed English for your audio and subpicture language here.
First Play PGC
********** pre commands:
[30 06 00 01 00 C0 00 00] 1 (JumpSS) Jump to VMGM PGC 1
________________________________________________________
VMGM , LU 1 (en) , 1 (0:00) 0b. - Chapters: n/a, Programs: 2, Cells: 2
********** pre commands:
[71 00 00 00 10 00 00 00] 1 Set gprm(0) =(mov) 4096
[71 00 00 0A 00 00 00 00] 2 Set gprm(10) =(mov) 0
[71 00 00 0B 00 00 00 00] 3 Set gprm(11) =(mov) 0
[61 00 00 09 00 90 00 00] 4 Set gprm(9) =(mov) sprm(16:Preferred audio language)
[00 A1 00 09 65 6E 00 08] 5 if ( gprm(9) == 25966 ("en") ) then { Goto line 8 }
[71 00 00 09 00 00 00 00] 8 Set gprm(9) =(mov) 0
[75 00 00 09 01 00 00 00] 9 Set gprm(9) *=(mul) 256
[63 00 00 0A 00 09 00 00] 10 Set gprm(10) +=(add) gprm(9)
[00 01 00 00 00 00 00 0F] 11 Goto line 15
[61 00 00 09 00 92 00 00] 15 Set gprm(9) =(mov) sprm(18:Preferred sub-picture language)
[00 A1 00 09 65 6E 00 15] 16 if ( gprm(9) == 25966 ("en") ) then { Goto line 21 }
[71 00 00 09 00 00 00 00] 21 Set gprm(9) =(mov) 0
[63 00 00 0A 00 09 00 00] 22 Set gprm(10) +=(add) gprm(9)
[00 01 00 00 00 00 00 1A] 23 Goto line 26
[71 00 00 0E 10 03 00 00] 26 Set gprm(14) =(mov) 4099
[30 02 00 00 00 03 00 00] 27 (JumpTT) Jump to Title 3
________________________________________________________
VTST 5 , 1 TTN 1 (0:15) Title 3 - Chapters: 2, Programs: 2, Cells: 2
********** pre commands:
[71 00 00 0E 20 03 00 00] 1 Set gprm(14) =(mov) 8195
[00 02 00 00 00 00 00 00] 2 Break
Play Columbia Tristar LogoPersonally, the people who authored this DVD should have the back of their hands slapped hard!:angry: :angry: What were you guys thinking?
In VMGM PGC 1, there are only 3 GPRMs set: 9,10,14.
[EDIT]Actually, 4 GPRMs: 0,9,10,14.
Upon DVD insert, all gprms are set to 0 (zero). So when it comes time to jump to Title 3 in pre command 27, grpm(9) is still with a value of 0. Basically, all I saw during this PGC was gprm 9 and 10 being input values here and there and resetted to 0. What's does this do for us?! These registers (variables) should be put to good use down the road in compare commands like if gprm(9) = ###, then play this Title. Anyways, in VTST 5 PGC 1, there is no such command. you only have a gprm(14) setting and a break. Speaking of grpm(14), the only time grpm(14) was set in VMGM PGC 1 was at the end before jumping to Title 3. But what does the first pre command in Title 3 do? It immediately sets grpm(14) to another value! What's the reasoning on that! They might as well have taken out the gprm(14) setting in VMGM PGC 1 completely.
STOP THE INSANITY!!! :angry: :angry:
And there's more. In the full VMGM PGC 1 Command Table...
VMGM , LU 1 (en) , 1 (0:05) 0b. - Chapters: n/a, Programs: 2, Cells: 2
********** pre commands:
[71 00 00 00 10 00 00 00] 1 Set gprm(0) =(mov) 4096
[71 00 00 0A 00 00 00 00] 2 Set gprm(10) =(mov) 0
[71 00 00 0B 00 00 00 00] 3 Set gprm(11) =(mov) 0
[61 00 00 09 00 90 00 00] 4 Set gprm(9) =(mov) sprm(16:Preferred audio language)
[00 A1 00 09 65 6E 00 08] 5 if ( gprm(9) == 25966 ("en") ) then { Goto line 8 }
[00 A1 00 09 66 72 00 0C] 6 if ( gprm(9) == 26226 ("fr") ) then { Goto line 12 }
[00 01 00 00 00 00 00 0F] 7 Goto line 15
[71 00 00 09 00 00 00 00] 8 Set gprm(9) =(mov) 0
[75 00 00 09 01 00 00 00] 9 Set gprm(9) *=(mul) 256
[63 00 00 0A 00 09 00 00] 10 Set gprm(10) +=(add) gprm(9)
[00 01 00 00 00 00 00 0F] 11 Goto line 15
[71 00 00 09 00 01 00 00] 12 Set gprm(9) =(mov) 1
[75 00 00 09 01 00 00 00] 13 Set gprm(9) *=(mul) 256
[63 00 00 0A 00 09 00 00] 14 Set gprm(10) +=(add) gprm(9)
[61 00 00 09 00 92 00 00] 15 Set gprm(9) =(mov) sprm(18:Preferred sub-picture language)
[00 A1 00 09 65 6E 00 15] 16 if ( gprm(9) == 25966 ("en") ) then { Goto line 21 }
[00 A1 00 09 66 72 00 18] 17 if ( gprm(9) == 26226 ("fr") ) then { Goto line 24 }
[71 00 00 09 00 00 00 00] 18 Set gprm(9) =(mov) 0
[63 00 00 0A 00 09 00 00] 19 Set gprm(10) +=(add) gprm(9)
[00 01 00 00 00 00 00 1A] 20 Goto line 26
[71 00 00 09 00 00 00 00] 21 Set gprm(9) =(mov) 0
[63 00 00 0A 00 09 00 00] 22 Set gprm(10) +=(add) gprm(9)
[00 01 00 00 00 00 00 1A] 23 Goto line 26
[71 00 00 09 00 01 00 00] 24 Set gprm(9) =(mov) 1
[63 00 00 0A 00 09 00 00] 25 Set gprm(10) +=(add) gprm(9)
[71 00 00 0E 10 03 00 00] 26 Set gprm(14) =(mov) 4099
[30 02 00 00 00 03 00 00] 27 (JumpTT) Jump to Title 3
********** post commands:
[71 00 00 0E 10 03 00 00] 1 Set gprm(14) =(mov) 4099
[30 02 00 00 00 03 00 00] 2 (JumpTT) Jump to Title 3
********** cell commands:
[20 01 00 00 00 00 00 0D] 1 LinkTailPGC Why are there post and cell commands? I could not find anywhere where the video content here of 37 seconds of blank would actually play. There is no way in the pre commands that we can avoid our Jump to Title 3. This jump definitely bypasses the video play and post/cell commands.
With the above said, the first video display you should see is the studio splash. I got mine to display, burnt on DVDR or not, and I'm beginning to believe it really is your players. The troubleshooting system I use is that if it works on your software player and not your standalone, you'll have to look at your burning method, media, and standalone properties/settings.
To end this post, I really think VMGM PGC 1 should have just two pre command. I see no difference between this and the original setup. IMHO, this DVD was poorly authored by amatuers and definitely "Breakin' All the Rules"!! :rolleyes: :rolleyes:
VMGM , LU 1 (en) , 1 (0:05) 0b. - Chapters: n/a, Programs: 2, Cells: 2
********** pre commands:
[71 00 00 00 10 00 00 00] 1 Set gprm(0) =(mov) 4096
[30 02 00 00 00 03 00 00] 2 (JumpTT) Jump to Title 3
Even better! Just put the same commands in your First Play PGC. Who cares about VMGM PGC 1? It's useless!
VMG , First-Play PGC - Chapters: n/a, Programs: n/a, Cells: n/a
********** pre commands:
[71 00 00 00 10 00 00 00] 1 Set gprm(0) =(mov) 4096
[30 02 00 00 00 03 00 00] 2 (JumpTT) Jump to Title 3
Who knows? maybe this will work for you! Now, how's that for deeply analyzing this DVD! ;)
P.S. Why I'm still on irritating mode with this DVD, I'd like to say that I have a pet peeve on PGC Command Tables that have a "Break" command as the last pre command.
[EDIT]There is only one instance of gprm(7) being used in a command and it's in
VTSM 5 , LU 1 (en) , 1 (dummy) RootM - Chapters: n/a, Programs: 0, Cells: 0
********** pre commands:
[71 00 00 07 00 00 00 00] 1 Set gprm(7) =(mov) 0 gprm(7) was already 0 upon DVD insert.
2COOL
5th November 2004, 22:50
@Northwind
How about we do this. Highlight the hex values below with your mouse and CTRL+C (copy)
{71 00 00 00 10 00 00 00} {71 00 00 0E 20 03 00 00} {30 06 00 01 05 83 00 00}
Go your First Play PGC's first pre command and select that. Then CTRL+V (paste). You should have this now.
Before:
VMG , First-Play PGC - Chapters: n/a, Programs: n/a, Cells: n/a
********** pre commands:
[30 06 00 01 00 C0 00 00] 1 (JumpSS) Jump to VMGM PGC 1
After:
********** pre commands:
[71 00 00 00 10 00 00 00] 1 Set gprm(0) =(mov) 4096
[71 00 00 0E 20 03 00 00] 2 Set gprm(14) =(mov) 8195
[30 06 00 01 05 83 00 00] 3 (JumpSS) Jump to VTSM 5, Root menu (TTN 1)
Save
By doing this, you start your navigation after Title 3 (studio logo) therefore bypassing it. You pretty much cut out VMGM PGC 1 and VTST 5 PGC 1 from the original sequence. ;)
2COOL
5th November 2004, 23:04
@r0lZ
Small request.
Anyway of having an option to exclude the hex values when doing an info dump? Sure would cut down on thread space if we didn't need it.
r0lZ
5th November 2004, 23:09
Originally posted by 2COOL
@r0lZ
Small request.
Anyway of having an option to exclude the hex values when doing an info dump? Sure would cut down on thread space if we didn't need it. Good idea. However, it is sometimes useful to copy/paste from the dump's hex values to PgcEdit. Anyway, I will add the option...
2COOL
5th November 2004, 23:21
Originally posted by r0lZ
However, it is sometimes useful to copy/paste from the dump's hex values to PgcEdit.doesn't work with multiple consecutive commands. :(
Anyway, I will add the option... Thanks!
blutach
5th November 2004, 23:28
Originally posted by Sajan
I've set it to 4 (next PGC with video), but nothing is changed.
Next button dosn't do anything, just need to wait of playing PGC. Try removing all your PUOps. That's what is stopping you from using your "next" button.
jeanl
5th November 2004, 23:30
Originally posted by northwind
Well - I didn't do anything fishy intentionally or knowingly.
I could have two stupid set top players.
Panasonic F65 (5 changer carusel type)
GoVideo (dumm little vhs/dvd combo)
@northwind,
Is there a way you could try the modified DVD on other players? I find it hard to believe that you have 2 players that are misbehaving. (althouth it's quite possible).
@2COOL:
The troubleshooting system I use is that if it works on your software player and not your standalone, you'll have to look at your burning method, media, and standalone properties/settings.
well what's puzzling is that I think northwind says that regular non-blanked backups play just fine on his DVD player.
This is quite confusing, and the fact that the DVD was authored in a stranger manner (but still DVD compliant judging from what you describe) can't really be used to justify why PgcEdit or DVDRemake yield unplayable DVDs, right?
Jeanl
blutach
5th November 2004, 23:33
Originally posted by 2COOL
doesn't work with multiple consecutive commands. :(
[b]Thanks! I've found that if you select mutliple commands then right click and use "copy as text" you can copy them. Then paste them here as "code".
2COOL
5th November 2004, 23:33
@blutach
According to Sajan's previous post, it's already cleared.
Originally posted by Sajan
5. Why I can't jump next PGC from this, only autojump at the playend of it:
----------------------------------------
VMGM , LU 1 (ru) , 3 (0:07) 0b. - Chapters: n/a, Programs: 1, Cells: 1
********** pre commands:
********** post commands:
[20 04 00 00 00 00 00 04] 1 LinkPGCN PGC 4
********** cell commands:
********** menu buttons commands:
Playback time: 00:00:07.25 (at 30 fps)
Playback mode: sequential
PUOs: 16007172 (0x00F44004)
- Title play (0x00000004)
- Menu call - Angle (0x00004000)
- Still off (0x00040000)
- Audio stream change (0x00100000)
- Subpicture stream change (0x00200000)
- Angle change (0x00400000)
- Karaoke audio mix change (0x00800000)
NextPGCN: 0
PrevPGCN: 0
GoUpPGCN: 0
PGC Still Time: 0
2COOL
5th November 2004, 23:40
@jeanl
Originally posted by 2COOL
With the above said, the first video display you should see is the studio splash. I got mine to display, burnt on DVDR or not, and I'm beginning to believe it really is your players. The troubleshooting system I use is that if it works on your software player and not your standalone, you'll have to look at your burning method, media, and standalone properties/settings.I agree with you on Northwind testing his disc on other players. Nothing like going down to Best Buy, CompUSA, Circuit City, etc. and doing a little browsing and testing. ;)
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.