⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dvdv_nv_data.h

📁 SAMSUNG 5009的源代码
💻 H
📖 第 1 页 / 共 3 页
字号:
	BYTE4 			Vtsm_C_Adt_Sa;//start address of VTSM_C_ADT with RLBN from 1st LB of this VTSI.
	BYTE4 			Vtsm_Vobu_Admap_Sa;//start address of VTSM_VOBU_ADMAP with RLBN from 1st LB of this VTSI.
	BYTE4 			Vts_C_Adt_Sa;//start address of VTS_C_ADT with RLBN from 1st LB of this VTSI.
	BYTE4 			Vts_Vobu_Admap_Sa;//start address of VTS_VOBU_ADMAP with RLBN from 1st LB of this VTSI.

	/* aligned data */
	V_Atr_t			Vtsm_V_Atr;//Video attribute of VTSM_VOBS in this VTS.
	BYTE1			reserved4;
	BYTE1 			Vtsm_Ast_Ns;//number of audio streams for VTSM.
	Ast_Atr_t 		Vtsm_Ast_Atr;//audio stream attribute for VTSM_VOBS.

	/* aligned data */
	BYTE1			reserved5;
	BYTE1 			Vtsm_Spst_Ns;//number of Sub-picture streams of VTSM_VOBS in the VTS.
	BYTE1 			Vtsm_Spst_Atr[6];//Sub-picture stream attribute for VTSM_VOBS in this VTS.

	/* aligned data */
	V_Atr_t			Vts_V_Atr;//video attribute of VTSTT_VOBS in this VTS.
	BYTE1			reserved6;
	BYTE1 			Vts_Ast_Ns;//number of Audio streams of VTSTT_VOBS in this VTS.
	Ast_Atr_t 		Vts_Ast_Atr[8];//each Audio stream attributes of VTSTT_VOBS in this VTS.

	/* aligned data */
	BYTE1			reserved7;
	BYTE1 			Vts_Spst_Ns;//number of Sub-picture streams for VTSTT_VOBS in the VTS.
	BYTE1 			Vts_Spst_Atr[192];//each Sub-picture stream attribute for VTSTT_VOBS in this VTS.
	BYTE1 			Reserved8[2];
	Vts_Mu_Ast_Atr_t 	Vts_Mu_Ast_Atr[8];//each Audio attribute for multichannel use.
} Vtsi_Mat_t;
#else
typedef struct  {
	BYTE1 			Vts_Id[12];//describes "DVDVIDEO-VTS" to identify VTSI's File with character set code of ISO646.
	BYTE4 			Vts_Ea;//end address of VTS with RLBN from the 1st LB of this VTS.
//	BYTE1 			Reserved1[12];
	BYTE4 			Vtsi_Ea;//end address of VTSI with RLBN from the 1st LB of this VTSI.
//	BYTE1 			Vern[2];//0001 0000b : ver 1.0
//	BYTE1			Reserve[2];
//	BYTE1			Reserv;
	BYTE1 			Vts_Cat;
//	BYTE1 			Reserved2[90];
	BYTE4 			Vtsi_Mat_Ea;//end address of Vtsi_Mat_t with RBN from 1st byte of this Vtsi_Mat_t.
//	BYTE1 			Reserved3[60];
	BYTE4 			Vtsm_Vobs_Sa;//start address of VTSM_VOBS with RLBN from 1st byte of this VTS.
	BYTE4 			Vtstt_Vobs_Sa;//start address of VTSTT_VOBS with RLBN from 1st byte of this VTS.
	BYTE4			Vts_Ptt_Srpt_Sa;//start address of Vts_Ptt_Srpt_t with RLBN from 1st LB of this VTSI.
	BYTE4 			Vts_Pgcit_Sa;//start address of VTS_PGCIT with RLBN from 1st LB of this VTSI.
	BYTE4			Vtsm_Pgci_Ut_Sa;//start address of VTS_PGCI_UT with RLBN from 1st LB of this VTSI.
	BYTE4 			Vts_Tmapt_Sa;//start address of Vts_Tmapt_t with RLBN from 1st LB of this VTSI.
	BYTE4 			Vtsm_C_Adt_Sa;//start address of VTSM_C_ADT with RLBN from 1st LB of this VTSI.
	BYTE4 			Vtsm_Vobu_Admap_Sa;//start address of VTSM_VOBU_ADMAP with RLBN from 1st LB of this VTSI.
	BYTE4 			Vts_C_Adt_Sa;//start address of VTS_C_ADT with RLBN from 1st LB of this VTSI.
	BYTE4 			Vts_Vobu_Admap_Sa;//start address of VTS_VOBU_ADMAP with RLBN from 1st LB of this VTSI.
//	BYTE1 			Reserved4[24];
	V_Atr_t			Vtsm_V_Atr;//Video attribute of VTSM_VOBS in this VTS.
	BYTE1 			Vtsm_Ast_Ns;//number of audio streams for VTSM.
	Ast_Atr_t 		Vtsm_Ast_Atr;//audio stream attribute for VTSM_VOBS.
//	BYTE1 			Reserved5[72];
	BYTE1 			Vtsm_Spst_Ns;//number of Sub-picture streams of VTSM_VOBS in the VTS.
	Spst_Atr_t 		Vtsm_Spst_Atr;//Sub-picture stream attribute for VTSM_VOBS in this VTS.
//	BYTE1 			Reserved6[164];
	V_Atr_t			Vts_V_Atr;//video attribute of VTSTT_VOBS in this VTS.
	BYTE1 			Vts_Ast_Ns;//number of Audio streams of VTSTT_VOBS in this VTS.
	Ast_Atr_t 		Vts_Ast_Atr[8];//each Audio stream attributes of VTSTT_VOBS in this VTS.
//	BYTE1 			Reserved7[16];
	BYTE1 			Vts_Spst_Ns;//number of Sub-picture streams for VTSTT_VOBS in the VTS.
	Spst_Atr_t 		Vts_Spst_Atr[32];//each Sub-picture stream attribute for VTSTT_VOBS in this VTS.
//	BYTE1 			Reserved8[2];
	Vts_Mu_Ast_Atr_t 	Vts_Mu_Ast_Atr[8];//each Audio attribute for multichannel use.
} Vtsi_Mat_t;
#endif
 
 /*******************************************
 * Part_Of_Title Search Pointer.
 ********************************************
 */ 
typedef struct  {
	BYTE2 	Pgcn;
//	BYTE1 	Reserved;
	BYTE1 	Pgn;
} Ptt_Srp_t;

 /*******************************************
 * Title Unit Search Pointer.
 ********************************************
 */ 
typedef struct  {
	BYTE4 	Ttu_Sa;
	BYTE2	Ptt_Ns;
//	Ptt_Srp_t	*Ptt_Srp;
} Ttu_Srp_t;


 /*******************************************
 * VTS PTT Srpt
 ********************************************
 */ 
typedef struct  {
	BYTE2 	Vts_Ttu_Ns;
//	BYTE2 	Reserved;
	BYTE4 	Vts_Ptt_Srpt_Ea;
//	Ttu_Srp_t	*Ttu_Srp;
} Vts_Ptt_Srpt_t;

 /*******************************************
 * Vts_Tmap_t
 ********************************************
 */ 
typedef struct  {
	BYTE1 	Tmu;
//	BYTE1 	Reserved;
	BYTE2 	Map_En_Ns;
//	BYTE4 	*Map_Ent;
} Vts_Tmap_t;


 /*******************************************
 * Vts_Tmap_Srp_t
 ********************************************
 */ 
typedef struct  {
	BYTE4 		Vts_Tmap_Sa;
//	Vts_Tmap_t 	*Vts_Tmap;
} Vts_Tmap_Srp_t;


 /*******************************************
 * Vts_Tmap_t
 ********************************************
 */  
typedef struct  {
	BYTE2 			Vts_Tmap_Ns;
//	BYTE2 			Reserved;
	BYTE4 			Vts_Tmapt_Ea;
//	Vts_Tmap_Srp_t 	*Vts_Tmap_Srp;
} Vts_Tmapt_t;

/* Pci_t */

/* Pci_t General Information (Pci_Gi_t) */

typedef struct 
{
	BYTE4	Nv_Pck_Lbn;
	BYTE2	Vobu_Cat;
#ifdef _DVD_DIRECT_COPY
	BYTE2	reserved;
#endif
	BYTE4	Uop_Ctl;
	BYTE4	Vobu_S_Ptm;
	BYTE4	Vobu_E_Ptm;
	BYTE4	Vobu_Se_E_Ptm;
	Pb_Tm_t	C_Eltm;

#ifdef _DVD_DIRECT_COPY
	BYTE1	Reserved2[32];
#endif
}  Pci_Gi_t;

typedef struct 
{
	BYTE4	Nsml_Agl_Dsta[9];
}  Nsml_Agli_t;

typedef struct 
{
	BYTE2	Hli_Ss;
	BYTE4	Hli_S_Ptm;
	BYTE4	Hli_E_Ptm;
	BYTE4	Btn_Sl_E_Ptm;

	//BYTE4	Reserved2 : 2;
	BYTE4	Btn_Gr_Ns : 2;
	//BYTE4	Reserved3 : 1;
	BYTE4	Btn_Gr1_Dsp_Ty : 3;

	//BYTE4	Reserved4 : 1;
	BYTE4	Btn_Gr2_Dsp_Ty : 3;
	//BYTE4	Reserved5 : 1;
	BYTE4	Btn_Gr3_Dsp_Ty : 3;

	BYTE1	Btn_Ofn;
	BYTE1	Btn_Ns;
	BYTE1	Nsl_Btn_Ns;
	BYTE1	Fosl_Btnn;
	BYTE1	Foac_Btnn;
}  Hl_Gi_t;

typedef struct 
{
	BYTE4 Sl_Coli;
	BYTE4 Ac_Coli;
} Btn_Coli_t;

typedef struct 
{
	Btn_Coli_t	Btn_Coli[3];
}  Btn_Colit_t;

typedef struct //nv pack read矫 3 byte swap 鞘夸.
{
	BYTE1	Btn_Coln;
	BYTE2	X_Start;
	BYTE2	X_End;
	BYTE1	Auto_Action_Mode;
	BYTE2	Y_Start;
	BYTE2	Y_End;
	BYTE1	Up_Btnn;
	BYTE1	Low_Btnn;
	BYTE1	Left_Btnn;
	BYTE1	Right_Btnn;
	DvdNavCmd_t	Btn_Cmd;
}  Btnit_t;

typedef struct 
{
	/* seriously unaligned data */
	Hl_Gi_t		Hl_Gi;
	
	/* Button Color information is not used in Navigator */
	/* Btn_Colit_t	Btn_Colit; */

#ifdef _DVD_DIRECT_COPY
	BYTE1		Btnit[648];	// 18 * 36
#else
	Btnit_t		Btnit[36];
#endif
}  Hli_t;


typedef struct 
{
	BYTE1	byte[10];
}  Isrc_t;

typedef struct 
{
	Isrc_t	Isrc[17];
	BYTE1	Sel;
	/* BYTE1	Reserved[18]; */
} Reci_t;

#ifdef _DVD_FAST_RESUME
typedef struct {
	BYTE2	vob_id;
	BYTE4	vobu_1stref_ea;
	BYTE2	vobu_sml_cat;
	BYTE4	ilvu_ea;
	BYTE4	prev_video_vobu_offset;
	BYTE4	sp_synca[32];
} DsiInPci_t;
#endif

typedef struct 
{
	/* aligned data */
	Pci_Gi_t		Pci_Gi;
	Nsml_Agli_t	Nsml_Agli;

	/* Seriously not aligned data */
	Hli_t			Hli;

	/* Added for our own purpose, not in DVD Spec */
#ifdef _DVD_FAST_RESUME
	DsiInPci_t	dsi;
#else
	BOOL	video_exist;	/* Flag which indicates this VOBU contains video data.
								This flag is obtained from DSI in the VOBU of this PCI */
#endif			

	BOOL	is_pg_end;		/* TRUE if PCI is the last one in PG (This is used for RepeatPG) */
	/* Reci_t		Reci; */
}  Pci_t;

/* DSI */

typedef struct 
{
	BYTE4	Nv_Pck_Scr;
	BYTE4	Nv_Pck_Lbn;
	BYTE4	Vobu_Ea;
	BYTE4	Ref_Ea_1;
	BYTE4	Ref_Ea_2;
	BYTE4	Ref_Ea_3;
	BYTE2	Vobu_Vob_Idn;
	BYTE1	reserved;
	BYTE1	Vobu_C_Idn;
	Pb_Tm_t	C_Eltm;
}  Dsi_Gi_t;

typedef struct 
{
	/* Not aligned */
	BYTE2	Vobu_Sml_Cat;
	BYTE4	ilvu_Ea;
	BYTE4	Nxt_ilvu_Sa;
	BYTE2	Nxt_Ilvu_Sz;

	/* aligned */
	BYTE4	Vob_V_S_Ptm;
	BYTE4	Vob_V_E_Ptm;
	BYTE4	Vob_A_Stp_Ptm[8][2];
	BYTE4	Vob_A_Gap_Len[8][2];
} Sml_Pbi_t;

#ifdef _DVD_DIRECT_COPY
/* No need to define structure because use one-byte array */
#else
typedef struct 
{
	BYTE4	Agl_C_Ad;
	BYTE2	Agl_C_Sz;
} Sml_Agl_Dsta_t;

typedef struct 
{
	Sml_Agl_Dsta_t	Sml_Agl_Dsta[9];
} Sml_Agli_t;
#endif

typedef struct 
{
	BYTE4	Next_Video;
	BYTE4	Fwda[19];
	BYTE4	Next_Vobu;
	BYTE4	Prev_Vobu;
	BYTE4	Bwda[19];
	BYTE4	Prev_Video;
} Vobu_Sri_t;

typedef struct 
{
	BYTE2	A_Synca[8];
	BYTE4	Sp_Synca[32];
} Synci_t;

typedef struct 
{
	Dsi_Gi_t	Dsi_Gi;
	/* Not aligned */
	Sml_Pbi_t	Sml_Pbi;
	/* Not aligned */
#ifdef _DVD_DIRECT_COPY
	BYTE1		Sml_Agli[54];
#else
	Sml_Agli_t	Sml_Agli;
#endif
	/* Not aligned */
	Vobu_Sri_t	Vobu_Sri;
	Synci_t	Synci;
//	BYTE1	Reserved[471];
} Dsi_t;



#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -