Tables specific to the Video Manager IFO

TT_SRPT

This table contains pointers to all the titles on the disk, and is indexed by VMG_TTN (title number within VMG)
offset01234567
0number of titlesreservedend address (last byte of last entry)
8...12-byte entries
each entry
OffsetsizeContents
01title type - see below
11number of angles
22number of chapters (PTTs)
42parental management mask
61Video Title Set number, VTSN
71title number within VTS, VTS_TTN
84start sector for VTS, referenced to whole disk (video_ts.ifo starts at sector 00000000)
breakdown of Title Type
76543210
reserved0=one_sequential_pgc 1=not one_sequential (random, shuffle, stills, loops, or more than one pgc)
Jump/Link/Call commands
0000 None 0001 invalid 0011 only in button 0101 only in pre/post 0111 in button and pre/post 1001 only in cell 1011 in cell and button 1101 in cell and pre/post 1111 in all places
Uop1
PTT play or search
Uop0
Time play or search
cellpre/postbuttonexist

VMGM_PGCI_UT

The VMGM_PGCI_UT contains a number of tables forming a heirarchy. Most entries are 8 bytes long.
  VMGM_PGCI_UT  
 VMGM_LU 
  VMGM_PGC  
 : 
  VMGM_PGC  
:
 VMGM_LU 
  VMGM_PGC  
 : 
  VMGM_PGC  

At the top is the VMGM_PGCI_UT which lists all the Language Units.
offset01234567
0number of Language Unitsreservedend address (last byte of last PGC in last LU) relative to VMGM_PGCI_UT
8ISO639 language codereserved for language code extensionMenu existence flag
80 = title
offset to VMGM_LU, relative to VMGM_PGCI_UT
10 ...
possible additional entries

Next, the VMGM_LU which lists all the Program Chains.
offset01234567
0number of Program Chainsreservedend address (last byte of last PGC in this LU) relative to VMGM_LU
8PGC category, see belowoffset to VMGM_PGC, relative to VMGM_LU
10 ...
possible additional entries

breakdown of the PGC category
byte76543210
01=entry PGCreservedmenu type (entry only) 2 = title
1 
2
parental management mask
3
parental management mask
On to
PGC description

VMG_PTL_MAIT

This table contains 16-bit masks for each title set in each of 8 parental levels, for each country code.
VMG_PTL_MAIT
 PTL_MAIT 
 : 
 PTL_MAIT 
VMG_PTL_MAIT
offset01234567
0number of countriesnumber of title sets (Nts)end address (last byte of last PTL_MAIT)
8country code offset to PTL_MAIT 
10 ...
possible additional entries
The VMG_PTL_MAIT is searched by country, and points to the table for each country.
PTL_MAIT
offsetcontents
0Nts+1 16-bit masks (VMG + all title sets) for level 8
2*(Nts+1)Nts+1 16-bit masks (VMG + all title sets) for level 7
4*(Nts+1)Nts+1 16-bit masks (VMG + all title sets) for level 6
6*(Nts+1)Nts+1 16-bit masks (VMG + all title sets) for level 5
8*(Nts+1)Nts+1 16-bit masks (VMG + all title sets) for level 4
10*(Nts+1)Nts+1 16-bit masks (VMG + all title sets) for level 3
12*(Nts+1)Nts+1 16-bit masks (VMG + all title sets) for level 2
14*(Nts+1)Nts+1 16-bit masks (VMG + all title sets) for level 1
The PTL_MAIT contains the 16-bit masks for the VMG and all title sets for parental management level 8 followed by the masks for level 7, and so on to level 1.

VMG_VTS_ATRT

This table contains copies of the menu and title attributes of all title sets.
VMG_VTS_ATRT
 VTS_ATRT 
 : 
 VTS_ATRT 

VMG_VTS_ATRT
offset0123
0number of title sets 
4end address (last byte of last VTS_ATRT)
8offset to VTS_ATRT 1
C ...
possible additional entries

VTS_ATRT
offsetsizecontents
04end address (EA)
44VTS_CAT (copy of offset 022-025 of the VTS IFO file)   0=unspecified, 1=Karaoke
8EA-7copy of VTS attributes (offset 100 and on from the VTS IFO file, usually 0x300 bytes long)


DVD-Video home