View Full Version : remove blanked vts ??
Penecho
23rd October 2006, 12:58
I stripped the extras of a dvd with pgcedit and did FixVTS afterwards, but there are many VTS which are only 20 kb big, can i delete them somehow easily?
Not that the are stealing space or something like that, but it looks not so well ;)
http://img136.imageshack.us/img136/2930/blankedgd9.th.jpg (http://img136.imageshack.us/my.php?image=blankedgd9.jpg)
Cu
bigotti5
23rd October 2006, 13:53
If you remove these VTS completely your VTS_15 becomes to VTS_01 and you have to rewrite all related commands....
blutach
23rd October 2006, 15:22
Leave them alone - you can't see them when the disk in in the player and the important thing is it plays correctly, yes?
Regards
Penecho
23rd October 2006, 16:05
yeah, plays correctly is the most important thing, but would be nicer if the other VTS could be removed.
But i donīt want to rewrite the ifo, because the VTS of the main movie changes, so i think i better leave it the way it is!! :)
Cu
BigCondor
25th October 2006, 01:50
Of course you can remove the unwanted titles. You load it in PgcEdit, modify all the commands that points to the last titleset until the titleset is unreferenced then you can remove the last titleset.
But with the example you have given, you have to swap your titleset (VTS_15) with other (VTS_02) first.
spyhawk
25th October 2006, 04:01
This is a job for DvdReMake Pro. Deleting VTS 2-14 is a piece of cake. VTS 15 will be renumbered as VTS 2. Fix navigation and menu links where necessary. But as Penecho doesn't want to mess with anything, leaving as it is the way to go. :)
r0lZ
25th October 2006, 09:47
IMO, it makes sense to move the main VTS at the beginning of the DVD. Although the other VTS are blanked and therefore don't take much place, they are probably never played, so it's a good idea to push them to the end of the DVD, as the outer side of the media is more subject to defects, scratches and stains. And anyway, swapping the VTSs with PgcEdit preserves the navigation, and you don't have to edit the VM commands. Just use DVD -> Remap Titlesets, and it's OK.
Also, personally, I like that Title 1 is the main movie title. Since it is not in the first VTS, the main title is probably not Title 1, and that is visible when you play the DVD. If you want to renumber the titles, use Title -> Remap Title Numbers. Again, it's safe, as the VM commands are modified automatically by PgcEdit.
BTW, the next version of PgcEdit will have a function to remap the PGCs inside a title or a menu domain, again keeping the navigation intact.
Of course, if you want to delete the unused VTS, you have to be sure that they are really never called. PgcEdit cannot fix the navigation automatically in this case, as there is no way to know exactly what to do instead of playing the missing VTS. But there is an handy function to know if you can safely delete a VTS: Info -> Jumps from VMG to Current VTS will list all commands that need to be fixed. If the list is empty, you can safely delete the VTS.
Another trick: In an original DVD, it is very rare that a VTS is never played (excepted in some forms of the ARccOS/RipGuard protections.) But if you have already modified the navigation by hiding or removing some menu buttons or by killing some menu PGCs, some VTS might be never-called, although a command in the VMG can still call it. Obviously, if the PGC containing this command is never called, the VTS pointed to by the command is also never called. Therefore, you can try to clean the VM commands first with Info -> Calls Cross References. Accept the option to delete the VM commands in the never-called PGCs. When the function has made its job, look in the status bar: the number of cleared PGCs is displayed. Launch Calls Cross References again, with the same option. If the number of cleared PGCs is greater than the first time, repeat the function again, until there are no more PGCs cleared. The VM commands in the unused PGCs are now deleted, and you can try Info -> Jumps from VMG to Current VTS again. With some luck, some of the VTS will be totally unreferenced and you can delete them safely.
Also, I disagree partially with the idea that a never-called VTS is not important, as it cannot be played. In fact, it can be played. Don't forget that it is always possible to jump directly to any title with the remote (unless a PUO prohibits it.)
blutach
26th October 2006, 03:33
Following on from r0lZ's very good post, that calls cross refs (Ctrl-H) is terrific. I have long wished it would do it on an iterative basis (go on calling itself and clearing PGCs until the number of PGCs cleared does not increase). But pressing Ctrl-H is not difficult so I do not cry too loud for this.
One feature I would like to see is where a PGC is referenced but already contains no commands - we see this quite a bit. Here's an example (PGC 2 and 3 are never called) but 4 and 5 referenced (but presumably the condition calling them can never be true).
VTS 18 (VTS_18_0.IFO)
--------------------
VTSM 18 , LU 1 (en):
VTSM 18 , LU 1 (en) , 1 (dummy) RootM - Chapters: n/a, Programs: 0, Cells: 0
********** pre commands:
1 if ( gprm(1) != 0 ) then { LinkPGCN PGC 5 }
2 if ( gprm(2) != 0 ) then { LinkPGCN PGC 4 }
3 Set gprm(6) =(mov) 0
4 NOP
5 Set gprm(0) =(mov) sprm(5:Title number in VTS)
6 Set gprm(0) *=(mul) 256
7 Set gprm(0) |=(or) sprm(7:Chapter number (or PGN))
8 RSM
********** post commands:
********** cell commands:
VTSM 18 , LU 1 (en) , 2 (dummy) '<never-called>' - Chapters: n/a, Programs: 0, Cells: 0
********** pre commands:
********** post commands:
********** cell commands:
VTSM 18 , LU 1 (en) , 3 (dummy) '<never-called>' - Chapters: n/a, Programs: 0, Cells: 0
********** pre commands:
********** post commands:
********** cell commands:
VTSM 18 , LU 1 (en) , 4 (dummy) - Chapters: n/a, Programs: 0, Cells: 0
********** pre commands:
********** post commands:
********** cell commands:
VTSM 18 , LU 1 (en) , 5 (dummy) - Chapters: n/a, Programs: 0, Cells: 0
********** pre commands:
********** post commands:
********** cell commands:
It would be nice to highlight these so the commands referencing them could be deleted (pre-commands 1 and 2 of the root menu) and then you could delete the last 4 PGCs entirely! Or, if you were scared that pre-commands 1 and 2 could be true, you could re-author PGCs 4 and 5 to zero all registers and Jump to FP-PGC totally eliminating the chance of a dead stop.
Regards
BigCondor
26th October 2006, 03:43
Glad to hear from r0lZ of his planning. I've learn a lot from your program.
Thank you very much!
r0lZ
26th October 2006, 07:40
Following on from r0lZ's very good post, that calls cross refs (Ctrl-H) is terrific. I have long wished it would do it on an iterative basis (go on calling itself and clearing PGCs until the number of PGCs cleared does not increase). But pressing Ctrl-H is not difficult so I do not cry too loud for this.
There is no need to cry loud! This function has already been implemented in v7.4, but it doesn't clear the PGCs:
7.4 (September 17, 2006)
A. New function Info -> Find Never-Called PGCs, to mark the PGCs and VTSs that are never called explicitly (without having to clear the VM commands and Prev/Next/GoUp PGCNs).
One feature I would like to see is where a PGC is referenced but already contains no commands - we see this quite a bit.Well, that's a good idea, but IMO the fact that a PGC contains no command doesn't mean that it cannot be played. A NextPGCN link is sufficient to jump elsewhere, and of course, in a menu, there can be button commands. The function should test that too. However, it is relatively difficult for me to include this function in Calls Cross References, but I could add a simple function just to search for empty PGCs.
Of course, the fact that a PGC contains some post or cell commands doesn't mean that the navigation is correct and that a jump to another PGC is correctly executed. Verifying that requires to trace the whole DVD, and that is slow, and anyway it's too much work for a simple function like this one.
r0lZ
26th October 2006, 11:26
BTW, I didn't remember before, but what you want already exists. Use the "Auto-comments" plugin. It will add "<void>" in the comment of any empty PGC in the DVD (and remove it if the PGC has some new commands.)
I don't rememebr if that function checks the button commands and the NextPGCN link, but it's sufficient to easily locate the PGCs with no pre/post/cell commands.
blutach
26th October 2006, 22:27
As usual, thank you r0lZ for pointing me to this feature re auto comments - I will try to remember it. :)
So Info -Find never called PGCs does do an iterative test but does not clear the commands. I was wondering what the difference was between it and Ctrl-H was, because Ctrl-H gives the user the ability not to clear commands.
Regards
r0lZ
26th October 2006, 22:54
It is obviously useless to call Calls Cross References several times without the option to clear the commands., and with this option, this function is potentially very destructive. In many cases, you don't want to loose your commands because you forgot a link somewhere.
On the other hand, Find Never Called PGCs is quicker, and preserve the commands. The name of the function is also easier to understand for a beginner.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.