vcd_define.h
来自「AMLOGIC DPF source code」· C头文件 代码 · 共 402 行 · 第 1/2 页
H
402 行
/*************************************************************************
** **
** Copyright (C) 1999 Amlogic,Inc. **
** All rights reserved **
** Filename : Vcd_define.h / Project: AVOS **
** Revision : 1.0 **
** **
*************************************************************************/
#ifndef VCD_DEFINE_H
#define VCD_DEFINE_H
#endif
/***************************** Define ********************************/
/*
_Define()
*/
//#define VCD_PRINT
#define VCDMAX_Q_NUM 16
#define VCDUNKNOWN 0x00
#define VCD20 0x01
#define VCD11 0x02
#define SVCD 0x03
#define CVD 0x04
#define DVCD 0x05
#define VCD_IDLE 1
#define VCD_PLAY_START 2
#define VCD_PLAY 3
#define VCD_PLAY_DONE 4
#define VCD_PAUSE 5
#define VCD_FF 6
#define VCD_FB 7
#define VCD_STOP 8
#define VCD_STEP 9
#define VCD_SF 10
#define VCD_READ_READY 1
#define VCD_READING 2
#define VCD_READ_DONE 3
#define VCD_PBCOFF 0
#define VCD_PBCON 1
#define VCD_FORWARD 0
#define VCD_BACKWARD 1
#define VCD_PLAYLIST 0x10
#define VCD_SELECTLIST 0x18
#define VCD_ENDLIST 0x1f
#define VCD_WAIT 0
#define VCD_INFINITWAIT 1
#define VCD_NOWAIT 2
#define VCD_LOOP 0
#define VCD_INFINITLOOP 1
#define VCD_CREATENEWPSD 0
#define VCD_ITEMSTARTPLAY 1
#define VCD_ITEMPLAYING 2
#define VCD_ITEMAUTOPAUSE 3
#define VCD_ITEMPLAYEND 4
#define VCD_ITEMWAIT 5
#define VCD_ITEMNoWAIT 6
#define VCD_ITEMIDLE 7
#define VCD_BLK_SEND 0
#define VCD_BLK_STOP 1
#define VCD_NORMAL 0
#define VCD_HIGH 1
#define VCD_DUMP_TIMER 10
#define VCD_COLLECT_TIMER 250
#define VCD_SECTORBLOCK 16 // 16 secotors per reading
#define VCD_SECONDBLOCK 75 // 75 secotors per reading
#define VCD_TASK_STK_SIZE 512 // Size of each task's stacks (# of WORDs)
#define VCD_BUFFSIZE 2048*8
#define VCD_SYNC_BUFFSIZE 12*VCD_SECONDBLOCK
#define VCD_VIDEO_GARBAGE_SIZE 0x300
#define VCD_AUDIO_GARBAGE_SIZE 0x300
#define VCD_VIDEO_EMPTY_LEVEL 0
#define VCD_AUDIO_EMPTY_LEVEL 0x60
#define VCD_TARGET_MONITOR_TIMER 10
#define VCD_CMD_TIMEOUT_VALUE 5
/***************************** Typedef *******************************/
/*
_Typedef()
*/
#define __packed
#pragma Pack(1)
typedef __packed struct
{
INT8U Track;
INT8U Min;
INT8U Sec;
INT8U Frm;
} VCDTRACKTIME;
typedef __packed struct
{
INT8U Min;
INT8U Sec;
INT8U Frm;
} VCDTIME;
typedef __packed struct
{
INT8U SystemIdentify[8];
INT8U version;
INT8U SystemProfileTag;
// INT16U Version;
INT8U Album[16];
INT16U AlbumNumber;
INT16U AlbumSetSeqNum;
INT8U TrackMontionPicSizeMap[13];
INT8U StatusFlag;
INT32U PsdSize;
VCDTIME FirstSegment;
INT8U OffsetMulti;
INT16U MaxListID;
INT16U MaxSegmentNum;
INT8U SegmentPlayItemContentTab[1980];
INT8U ExtendStatusFlag;
INT8U DiscType;
INT8U ReservedInfo[10];
} VCDDISCINFO;
typedef __packed struct
{
INT8U FileIdentify[8];
INT16U Version;
INT16U EntryNum;
VCDTRACKTIME EntryTab[500];
INT8U ReservedEntry[36];
} VCDDISCENTRY;
typedef __packed struct
{
INT8U PsdDump[2324];
}VCDPSDDUMP;
typedef __packed struct
{
INT8U FileIdentify[8];
INT16U Version;
INT16U SearchNum;
INT16U TrackNum;
INT16U SegmentNum;
INT8U PointK;
VCDTIME *Address;
} VCDSEARCH;
#pragma Pack()
#pragma Pack(4)
typedef struct
{
INT8U Track;
INT8U Min;
INT8U Sec;
INT8U Frm;
} VCDTRACKADDR;
typedef struct
{
INT8U ListHeader;
INT8U ListID;
INT16U PrevListOffset;
INT16U NextListOffset;
INT16U ReturnListOffset;
INT16U DefaultListOffset;
INT16U TimeOutListOffset;
INT16U NumOffset[100];
INT8U WaitStatus;
INT8U AutoPauseWaitStatus;
INT16U PlayItemWaitTimer;
INT16U AutoPauseWaitTimer;
INT32U ItemPlayTimer;
INT8U LoopStatus;
INT8U LoopCount;
INT8U JumpStatus;
INT8U PlayItemNum;
INT8U NowPlayItem;
INT16U PlayItem[256];
}VCDPSD;
typedef struct
{
VCDTRACKADDR Start;
VCDTRACKADDR End;
INT32U start_time;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?