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

📄 dvddef.h

📁 Zoran V966 DVD 解码 Soc芯片的源程序
💻 H
📖 第 1 页 / 共 2 页
字号:


//
// Bookmark structure
//
// IMPORTANT : IF YOU MODIFY THIS STRUCTURE, MAKE SURE TO MODIFY SIZE OF _PonDVDBookmark IN COREMAIN\CORENVG.C
// OTHERWISE POWERON RESUME MAY NOT WORK ....ZORAN BMV0308
typedef struct {
  DWORD vobu;
  WORD  ptt;
  WORD  pgcn;
  WORD  pgn;
  WORD  pgc_time;
  WORD  cell_time;
  BYTE* gprm_sc_handle;
  BYTE  domain;
  BYTE  vtsn;
  BYTE  vtsttn;
  BYTE  att_grn;	// Group number for DVD-A
  BYTE  tkn;		// Track number for DVD-A
  BYTE  dlist;		//dlist number for DVD-A
  BYTE  pgct;		// PGC type
  BYTE  title;
  BYTE	angle;
  BYTE	audio;
  BYTE	spict;
  BYTE	hbttn;
  DWORD resume_vobu;	// [FFM] (SN:060) add resume vobu
  DWORD dwPrevNVPCKVOBU;
} DVD_BOOKMARK;		

/*<<<< ZORAN TC1228: Increase GPRMs array saved by 2 to store SPRM TIMER information */
#define GPRM_SIZE	(18*sizeof(WORD)) /* 16 GPRM + 2 SPRM (Timer information) */
/* ZORAN TC1228 >>>> */

/* Ilie's fix - commented out because can be confusing with rest of system
//
// Media Types:             bug #309
//
typedef enum {DVD, VCD, FLAT} MEDIA_TYPE;
*/

//
// Language/Country code generator
//
// usage: MAKE_DVD_CODE('e','n') for English
//

#define MAKE_DVD_LANGUAGE_CODE(a,b) ((WORD)(a*256 + b))
#define MAKE_DVD_COUNTRY_CODE(a,b) ((WORD)(a*256 + b))

//
// Audio Presentation modes
//
#define DVD_AUDIO_MODE_MONO             0
#define DVD_AUDIO_MODE_STEREO           1
#define DVD_AUDIO_MODE_SURROUND         2
#define DVD_AUDIO_MODE_THREE_D          3
#define DVD_AUDIO_SPDIF_OFF             4
#define DVD_AUDIO_SPDIF_ON              5

//
// Video Presentation modes
//
#define DVD_VIDEO_MODE_WIDE             0
#define DVD_VIDEO_MODE_LETTERBOX        1
#define DVD_VIDEO_MODE_PANSCAN          2
#define DVD_VIDEO_MODE_DEFAULT          DVD_VIDEO_MODE_WIDE

//
// Karaoke Presentation modes
//
#define DVD_KARAOKE_AUDIO_MODE_DEFAULT     0
#define DVD_KARAOKE_AUDIO_MODE_VOCALS_OFF  DVD_KARAOKE_AUDIO_MODE_DEFAULT
#define DVD_KARAOKE_AUDIO_MODE_VOCAL1      1
#define DVD_KARAOKE_AUDIO_MODE_VOCAL2      2
#define DVD_KARAOKE_AUDIO_MODE_VOCALS_ON   3

//Audio Quality modes
#define DVD_AUDIO_QUALITY_CD               1
#define DVD_AUDIO_QUALITY_FM               2

//Audio Mute settings
#define DVD_AUDIO_MUTE_OFF                 0
#define DVD_AUDIO_MUTE_ON                  1


//
// Repeat modes
//
#define DVD_NO_REPEAT         0

#define DVD_CELL_REPEAT       1
#define DVD_CELL_NOTIFY       2

#define DVD_PROGRAM_REPEAT    3
#define DVD_PROGRAM_NOTIFY    4

#define DVD_PGC_REPEAT        5
#define DVD_PGC_NOTIFY        6

#define DVD_PGC_SHUFFLE       7

#define DVD_DISK_REPEAT       8
#define DVD_DISK_SHUFFLE      9

#define DVD_BMRK_REPEAT       10
#define DVD_BMRK_BNOTIFY      11


/*
//
// Repeat modes
//
#define DVD_NO_REPEAT         0

#define DVD_CELL_REPEAT       2
#define DVD_CELL_NOTIFY       3

#define DVD_PROGRAM_REPEAT    4
#define DVD_PROGRAM_NOTIFY    5

#define DVD_PGC_REPEAT        6
#define DVD_PGC_NOTIFY        7

#define DVD_PGC_SHUFFLE       8

#define DVD_DISK_REPEAT       9
#define DVD_DISK_NOTIFY       10

#define DVD_DISK_SHUFFLE      11

#define DVD_BMRK_REPEAT       12
#define DVD_BMRK_BNOTIFY      13
*/
//
// Configuration parameters:
// Bug #82 (DS dbase)
#define DVD_CONFIGURE_AUDIO    0
#define DVD_CONFIGURE_VIDEO    1

// ****************************************************************************
//                             DVD Information
// ****************************************************************************
//
//         information                    specifier detail output         result
//
//- #define DVD_INFO_TITLE_NAME         2 //  TTN        -     textual name   name length
//- #define DVD_INFO_PTT_NAME           4 //  TTN       PTTN   textual name   name length
//- #define DVD_INFO_LANGUAGES          5 //   -         -      -             # of languages
//- #define DVD_INFO_LANGUAGE_NAME      6 //  lng index  -     textual name   name length
//- #define DVD_INFO_AUDIO_STREAM_NAME  8 //  strm index -     textual name   name length
//- #define DVD_INFO_SPU_STREAM_NAME   10 //  strm index -     textual name   name length
//- #define DVD_INFO_ANGLE_NAME        12 //  strm index -     textual name   name length
//- #define DVD_INFO_VIDEO_MODE_EXISTS 14 //  mode       -      -             TRUE/FALSE
//- #define DVD_INFO_AUDIO_IS_KARAOKE  15 //   -         -      -             TRUE/FALSE

#define DVD_INFO_AUDIO_ATTRIBUTES  17 //  strm index -      AUDIO_ATTRIBUTES
#define DVD_INFO_SPU_LANGUAGE      18 //  strm index -      4-byte value: hi word = language code, low byte = lang code extension

#define DVD_INFO_ERROR_MESSAGE     32 //  -          -      -             Error Text Message

#define DVD_INFO_BUTTON_LOC        34 //  button #   -     BUTTON_LOC     TRUE/FALSE
#define DVD_INFO_PTTS              35 //  TTN        -      -             # of PTTs
#define DVD_INFO_ANGLES            36 //  TTN        -      -             # of angles

#define DVD_INFO_MENU_STRUCTURE    37 //  -          -      -             bit mask
//- #define DVD_INFO_MEDIA_PRESENT     38 //  drive ltr  -      -             TRUE if no media in DVD drive
#define DVD_INFO_TITLE_STRUCTURE   39 //  TTN        -     TITLE_INFO     TRUE/FALSE
//- #define DVD_INFO_VOLUME_LEVEL      40 //  -          -     -              volume level
#define DVD_INFO_STILL_DURATION    41 //  -          -     -              still duration (in seconds)
#define DVD_INFO_REPEAT_MODE       42 //  -          -     -              current repeat mode

//- #define DVD_INFO_FPS               43 //  -          -     FPS(float)     TRUE/FALSE

//- #define DVD_INFO_MUTE              44 //  -          -     DVD_AUDIO_MUTE_ON/DVD_AUDIO_MUTE_OFF(DWORD) TRUE/FALSE
//- #define DVD_INFO_TOTAL_TITLE_TIME  45 //  - current  -     time(long)(sec)TRUE/FALSE
#define DVD_INFO_VOLUME_ID         46 //  -          -     VOLUME_ID

//  information specific to DVD-Audio
#define DVDA_INFO_AUDIO_ATTRIBUTES  47 
//
//  Menu mask used in DVD_INFO_MENU_STRUCTURE
//
#define DVD_TITLE_MENU      0x0001
#define DVD_ROOT_MENU       0x0002
#define DVD_SUBPICTURE_MENU 0x0004
#define DVD_AUDIO_MENU      0x0008
#define DVD_ANGLE_MENU      0x0010
#define DVD_PTT_MENU        0x0020
//
// Specific Warning and Error codes.  The values must be kept identical with
// those defined by DVD_ERROR and DVD_WARNING types in dvdevcod.h of the
// Direct X SDK.  All errors result in a stop condition.  Warnings will not
// necessarily stop playback.
//
#define DVD_ERROR_UNEXPECTED           1  // unspecified error
#define DVD_ERROR_COPY_PROTECT_FAIL    2  // key exchange for copy protection failed
#define DVD_ERROR_INVALID_DVD_1_0_DISC 3  // disc not authored correctly.  Doesn't meet 1.0 spec
#define DVD_ERROR_INVALID_DISC_REGION  4  // disc not approved for playback by decoders from this region
#define DVD_ERROR_LOW_PARENTAL_LEVEL   5  // player's parental level set too low to play DVD
#define DVD_ERROR_MACROVISION_FAIL     6  // Macrovision distribution failed.

#define DVD_WARNING_INVALID_DVD_1_0_DISC 1  // disc authored incorrectly.  Unexpected behavior may occur
#define DVD_WARNING_FORMAT_NOT_SUPPORTED 2  // decoder doesn't support current format.  Playback of stream
                                            // might not function.  Example: stream is LPCM, but decoder doesn't support LPCM
#define DVD_WARNING_ILLEGAL_NAV_COMMAND  3  // DVD navigator attempted to process an illegal command
// ****************************************************************************
//                             DVD Status Bits
// ****************************************************************************
//
//         Status                    Bit Mask    Parameter   Notes
//
#define DVD_STATUS_STOP              0x00000001L   // UOP mask    Stop
#define DVD_STATUS_PLAY              0x00000002L   // UOP mask    Play
#define DVD_STATUS_PAUSE             0x00000004L   // UOP mask    Paues

#define DVD_STATUS_STILL             0x00000010L   // UOP mask    Still

#define DVD_STATUS_TITLES            0x00000020L   // #titles     Titles info available

#define DVD_STATUS_AUDIOS            0x00000040L   // #audio      Audio info available for the current title
#define DVD_STATUS_SPUS              0x00000080L   // #spu        Subpicture info available for the current title

#define DVD_STATUS_PARENTAL_CONTROL  0x00000100L   // level       Parental Management available if level is not 0
                                                  //             Also reports the new parental level every time is changed

#define DVD_STATUS_WINDOW_ID         0x00000200L   // hwnd        New playback window handle
#define DVD_STATUS_HLI               0x00000400L   //  -          Highlight Information is to be activated
#define DVD_STATUS_UOP               0x00000800L   // BOOL        pending UOP execution status

#define DVD_STATUS_TITLE_CHANGE      0x00001000L   // title num   title changed -- title num (LSB 8 bits) is 0 outside Title Domain
#define DVD_STATUS_ANGLE_CHANGE      0x00002000L   // angle num   angle changed via angle menu / UOP
#define DVD_STATUS_AUDIO_CHANGE      0x00004000L   // audio str   audio stream changed via angle menu / UOP
#define DVD_STATUS_SPU_CHANGE        0x00008000L   // subpict str subpict stream changed via angle menu /UOP

#define DVD_STATUS_PTT_CHANGE        0x00010000L   // PTT num     PTT changed
#define DVD_STATUS_SCAN              0x00020000L   // scan speed
#define DVD_STATUS_REGION_MANAGEMENT 0x00040000L   // RMA (see DVD VI4-4)
#define DVD_STATUS_INIT              0x00080000L   // --          After InitialAccess, no other status rcvd.  Bug #606
#define DVD_STATUS_TIME              0x00100000L   // PGC / Title and Cell / Chapter elapsed time
                                                  //  (each 14 bit, in sec),
                                                  //  last (LSB) 4 bits are the tc_flag (01 for 25fps, 11 for 30fps)
#define DVD_STATUS_PLAYBACK_TIME     0x00200000L   // PGC / Title and Cell / Chapter playback time
                                                  //  (each 14 bit, in sec), last (LSB) 4 bits PGC play mode
#define DVD_STATUS_AVAILABLE_ANGLES  0x00400000L   // Available angles
#define DVD_STATUS_LOOP              0x00800000L   // Repeat mode
#define DVD_STATUS_CURRENT_BUTTON    0x01000000L   // button #
#define DVD_STATUS_WARNING           0x02000000L   // specific warning.  MS Nav compatibility feature
#define DVD_STATUS_ERROR             0x04000000L   // specific error.  MS Nav compatibility feature
//* #define DVD_STATUS_MEDIA_TYPE        0x08000000   // media being played   DVD, VCD, or FLAT
//* #define VCD_STATUS_STREAM_DATA       0x10000000   // video attribs of currently selected stream.  
#define DVD_STATUS_DOMAIN_CHANGE     0x08000000L		//ZORAN LX0709: Notify the UI the domain is changed
//
// Domain ID for DVD_STATUS_TITLE_CHANGE (MSB 8 bits)
//
#define DVD_FP_DOM      0
#define DVD_VMGM_DOM    1
#define DVD_VTSM_DOM    2
#define DVD_TT_DOM      3
#define DVD_STOP_DOM    4



//
// SUCCESS / FAILURE
//
#define SUCCESS     0
#define FAILURE     -1
#define FAILURE_FILE_ENCRYPTED -2
//## end module.additionalDeclarations


#endif  // DVDDEF_h


⌨️ 快捷键说明

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