Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
libdvdread [2015/01/16 11:55]
beandog
libdvdread [2015/01/16 16:21] (current)
beandog
Line 185: Line 185:
           * **''​vm_cmd_t''​** ''​cell_cmds''​           * **''​vm_cmd_t''​** ''​cell_cmds''​
             * ''​bytes[8]''​             * ''​bytes[8]''​
 +        * **''​pgc_program_map_t''​** ''​program_map''​ - PGC program map (simple typedef of uint8_t)
 +        * **''​cell_playback_t''​** ''​cell_playback''​
 +          * ''​block_mode''​
 +          * ''​block_type''​
 +          * ''​seamless_play''​
 +          * ''​interleaved''​
 +          * ''​stc_discontinuity''​
 +          * ''​seamless_angle''​
 +          * ''​playback_mode''​
 +          * ''​restricted''​
 +          * ''​unknown2''​
 +          * ''​still_time''​
 +          * ''​cell_cmd_nr''​
 +          * **''​dvd_time_t''​** ''​playback_time''​
 +            * ''​hour''​
 +            * ''​minute''​
 +            * ''​second''​
 +            * ''​frame_u''​
 +          * ''​first_sector''​
 +          * ''​first_ilvu_end_sector''​
 +          * ''​last_vobu_start_sector''​
 +          * ''​last_sector''​
 +        * **''​cell_position_t''​** ''​cell_position''​ - cell position information
 +          * ''​vob_id_nr''​
 +          * ''​zero_1''​
 +          * ''​cell_nr''​
 +        * ''​ref_count''​
       * **''​ptl_mait_t''​** ''​ptl_mait''​ - **VMG IFO ONLY**, parental management information table       * **''​ptl_mait_t''​** ''​ptl_mait''​ - **VMG IFO ONLY**, parental management information table
         * ''​nr_of_countries''​ - number of countries         * ''​nr_of_countries''​ - number of countries
Line 254: Line 281:
               * **''​pgc_t''​** ''​pgc''​ (see above)               * **''​pgc_t''​** ''​pgc''​ (see above)
             * ''​ref_count''​             * ''​ref_count''​
 +      * **''​c_adt_t''​** ''​menu_c_adt''​ - **VMG and VTS IFOs**, Cell Address Table
 +        * ''​nr_of_vobs''​ - number of VOBs (max 99)
 +        * ''​zero_1''​
 +        * ''​last_byte''​
 +        * **''​cell_adr_t''​** ''​cell_adr_table''​
 +          * ''​vob_id''​
 +          * ''​cell_id''​
 +          * ''​zero_1''​
 +          * ''​start_sector''​
 +          * ''​last_sector''​
 +      * **''​vobu_admap_t''​** ''​menu_vobu_admap''​ - **VMG and VTS IFOs**, VOBU Address Map
 +        * ''​last_byte''​
 +        * ''​vobu_start_sectors''​
 +      * **''​vtsi_mat_t''​** ''​vtsi_mat''​ - **VTS IFOs only**, Video Title Set Information Management Table
 +        * ''​vts_identifier[12]''​ - VTS identifier
 +        * ''​vts_last_sector''​ - last sector of VTS (BUP)
 +        * ''​zero_1[12]''​ - reserved / unknown
 +        * ''​vtsi_last_sector''​ - last sector of VTS IFO
 +        * ''​zero_2''​
 +        * ''​specification_version''​
 +        * ''​vts_category''​ - VTS category
 +          * 0: unspecified
 +          * 1: karaoke
 +        * ''​zero_3''​
 +        * ''​zero_4''​
 +        * ''​zero_5''​
 +        * ''​zero_6[19]''​
 +        * ''​zero_7''​
 +        * ''​zero_8[32]''​
 +        * ''​zero_9''​
 +        * ''​zero_10[24]''​
 +        * ''​vtsi_last_byte''​ - last byte of VTS IFO
 +        * ''​zero_11''​
 +        * ''​zero_12[56]''​
 +        * ''​vtsm_vobs''​ - starting sector of VTS Menu VOBs
 +        * ''​vtstt_vobs''​ - starting sector of table of titles
 +      * **''​vts_ptt_srpt_t''​** ''​vts_ptt_srpt''​ - **VTS IFOs only**, Part of Title Search Pointer Table
 +        * ''​nr_of_srpts''​
 +        * ''​zero_1''​
 +        * ''​last_byte''​
 +        * **''​ttu_t''​** title
 +        * ''​ttu_offset''​
 +      * **''​pgcit_t''​** ''​vts_pgcit''​ - **VTS IFOs only**, Program Chain Information Table (see above) ​     ​
 +      * **''​vts_tmapt_t''​** ''​vts_tmapt''​ - **VTS IFOs only**, time maps for each PGC
 +        * ''​nr_of_tmaps''​ - number of program chains
 +        * ''​zero_1''​
 +        * ''​last_byte''​ - end address (last byte of last VTS_TMAP)
 +        * **''​vts_tmap_t''​** ''​tmap''​
 +          * ''​tmu''​ - time unit, in seconds
 +          * ''​zero_1''​ - reserved / unknown / safe to ignore
 +          * ''​nr_of_entries''​ - number of entries in map; ''​0''​ for empty map
 +          * **''​map_ent_t''​** ''​map_ent''​ - time map entry (typedef as uint32_t)
 +      * **''​c_adt_t''​** ''​vts_c_adt''​ **VTS IFOs only**, VTS cell address table
 +      * **''​vobu_admap_t''​** ''​vts_vobu_admap''​
     * [[VMGM]]     * [[VMGM]]
       * ''​VIDEO_TS.VOB''​       * ''​VIDEO_TS.VOB''​
- 
-  * **[[VMG]]** 
-    * vmgi_mat_t 
-    * playback_type_t 
-    * title_info_t 
-    * tt_srpt_t 
-    * pf_level_t 
-    * ptl_mait_country_t 
-    * ptl_mait_t 
-    * vts_attributes_t 
-    * vts_atrt_t 
-    * txtdt_t 
-    * txtdt_lu_t 
-    * txtdt_mgi_t 
-  * **[[VTS]]** 
-    * vtsi_mat_t 
-    * ptt_info_t 
-    * ttu_t 
-    * vts_ptt_srpt_t 
-    * map_ent_t 
-    * vts_tmap_t 
-    * vts_tmapt_t 
-  * **All [[IFO|IFOs]]** 
-    * ifo_handle_t 
- 
-<​code>​ 
-typedef struct { 
-  dvd_file_t *file; 
- 
-  /* VMGI */ 
-  vmgi_mat_t ​    ​*vmgi_mat;​ 
-  tt_srpt_t ​     *tt_srpt; 
-  pgc_t          *first_play_pgc;​ 
-  ptl_mait_t ​    ​*ptl_mait;​ 
-  vts_atrt_t ​    ​*vts_atrt;​ 
-  txtdt_mgi_t ​   *txtdt_mgi; 
- 
-  /* Common */ 
-  pgci_ut_t ​     *pgci_ut; 
-  c_adt_t ​       *menu_c_adt;​ 
-  vobu_admap_t ​  ​*menu_vobu_admap;​ 
- 
-  /* VTSI */ 
-  vtsi_mat_t ​    ​*vtsi_mat;​ 
-  vts_ptt_srpt_t *vts_ptt_srpt;​ 
-  pgcit_t ​       *vts_pgcit; 
-  vts_tmapt_t ​   *vts_tmapt; 
-  c_adt_t ​       *vts_c_adt; 
-  vobu_admap_t ​  ​*vts_vobu_admap;​ 
-} ifo_handle_t;​ 
-</​code>​ 

Navigation