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

📄 rm84cmn.h

📁 神龙卡开发原代码
💻 H
📖 第 1 页 / 共 5 页
字号:
    /**       emeXferUcodeParameters_type     */    emeXferUcodeParameters, // emeXferUcodeParameters_type    emeMax}MPEG_ENCODER_SET_ID;// DVI_TRANSMITTER_SETtypedef enum {    edtAccessRegister = 0, // genericReg_type (ADDR_DATA)    edtOutputEnable,       // RMuint32 1/0 for On/Off    edtMax}DVI_TRANSMITTER_SET_ID;// DECODER_SET uses DWORDtypedef enum {    edecAudioInOutConfig = 0,    // EM847xAudioInOutConfigEnum defined in qhwlib.h    edecAudioDacBitsPerSample,   // RMuint32: 16 or 24 bits     edecVideoStd,                // RMuint32: 0 for Mpeg1/2, 1 for Mpeg4    edecOsdFlicker,              // RMuint32: 0 ... 15 ( 0 = flicker disabled)    /*The register to control the PCI burst length is at address 0x1FEC:            bit[2:0] min    max            000         4         4            001         4         8            010         8         8            011         4        16            100         8        16            101        16        16*/    edecPciBurst,                //    edecForceFixedVOPRate,   // edecForceFixedVOPRate_type    edecAccessRegister,      // genericReg_type (ADDR_DATA)    edecCSSChlg,             // get only.    edecCSSKey1,             // set only.    edecCSSChlg2,            // set only.    edecCSSKey2,             // get only.    edecCSSDiscKey,          // set only.    edecCSSTitleKey,         // set only.     edecStatus,              // edecStatus_type, get    edecDataFifo,            // edecDataFifo_type, get    edecPacketsFifo,         // edecPacketsFifo_type, get    edecErrorCode,           // RMuint32, get    edecMax}DECODER_SET_ID;// TVENCODER_SET uses DWORDtypedef enum {    etvNtscPedestal = 0,     // etvNtscPedestal_type    etvLumaFilter,           // etvLumaFilter_type    etvChromaFilter,         // etvChromaFilter_type    etvColorBars,            // etvColorBars_type    etvMax}TVENCODER_SET_ID;// TVTUNER_SETtypedef enum {       eTvTunerChannel = 0,  // uses struct eTvTunerChannel_type       eTvTunerMax}TVTUNER_SET_ID;typedef enum {    /**       Set OSD to On, Off or Flush its buffer.     */    eOsdCommand,             // edecOsdCommand_type    /**       Set the OSD Hilight window. The window coordinates       are relative to the OSD bitmap.       In the highlight window, if the OSD is stored in 2,       4, or 7 BPP mode, the colors are looked up inthe        upper half of the CLUT (Color LookUp Table).       ie: in 2bpp mode, the color 0 for highlight       will be looked up in index 4 of the CLUT.    */    eOsdHiLiWindow,          // Wnd_type    /**       Set the position of the OSD bitmap relative to the current       coordinate system.    */    eOsdDestinationWindow,   // Wnd_type    eOsdMax} OSD_SET_ID;typedef enum {    eI2cInit = 0,            // I2cInit_type, set only    eI2cAccess,              // I2cReadWrite_type + variable size buffer                             // set will write I2C, get will read    eI2cMax}I2C_SET_ID;// VIDEOIN_SETtypedef enum {    /** eviCommand     */    eviCommand = 0,          // eviCommand_type    /** eviParams property is applied to the hardware:          - immediately when eviCommand_InitCapture property is send          - at first VSync after SetProperty if decoder is in StartCapture state already        The x,y,w,h, members define the captured window relative to VSync/HSync        for 601 or embedded syncs for 656.        In 601 mode:           the beginning of a line is set by the hsync pulse;           the beginning of a field/frame is set by the vsync pulse.           Therefore, cropping is necessary to remove the horizontal and vertical blankings.        In 656 mode:           The active video is directly extracted from the data flow using the protocol embedded flags.           There is no blanking to remove.        x specifies how many pixels will be skipped at the beginning of each line.        y specifies how many lines will be skipped at the beginning of each frame.           If the content is progressive y lines will be skipped at every VSync. If the           content is interlaced only y/2 lines will be skipped at every VSync(per field).        w specifies the pixel width of the picture to be captured - it should           be multiple of 8 for packed option and multiple of 2 for unpacked option        h specifies the height of the picture (frame) to be captured. It should be even.        OutputLineLength specifies the horizontal size of the image sent to DRAM - it should           be smaller or equal than width w, otherwise the SetProperty will return failure.           By default should be equal with w and no scaling will be used.           If it is smaller then width, horizontal downscale is done by VideoIn block        Ccir;            // CCIR_656 or CCIR_601        ChromaDownScale; // YUV420 or YUV422 format        YuvPacked;       // 1 for luma & chroma captured packed        InterlacedSource;// 1 if the video source is interlaced, 0 for progressive        InvertField;     // CCIR_NON_INVERT_FIELD or CCIR_INVERT_FIELD        BitsPerClock;    // 8 or 16 bits        Vip20;           // 1 for VIP2.0; 0 for VIP1.x        HSyncPolarity;   // 0 for active low; 1 for active high        VSyncPolarity;   // 0 for active low; 1 for active high        VSyncActiveEdge; // 0 for trailing edge; 1 for leading edge        Here is an example for 601 (eviHSyncPolarity active low, eviVSyncPolarity active low, eviVSyncActiveEdge leading edge).        O is the origin for capture.        HSync  ---------+ +-----------------------------+ +--                        v |                             v |                        +-+                             +-+        VSync  +<-+     O-------------------------------+               |        |        ^                      |               +--+     |        |                      |                  |     |        | y                    |    x = 108                  |     |        v                      |    y =  20                  |     |     +---------------------+ ^ |    w = 720                  |     |<-x->|                     | | |    h = 480                  |     |     |                     | | |    OutputLineLength = 720                  |     |     |                     | | |                  |     |     |                     | h |                  |     |     |                     | | |                  |     |     |                     | | |                  |     |     +---------------------+ v |                  |     |     <----------w---------->   |               <--+     +-------------------------------+    */    eviParams,               // eviParams_type, set, get.    eviMax}VIDEOIN_SET_ID;//  To get extended error information about a failed test,//  use property BOARDINFO_SET, ebiLastErrorInfoString. typedef enum {    /** ehwTestMpegDecoderInitialize does the minimum required to    initialize testing    */    ehwTestMpegDecoderInitialize = 0,    /** ehwTestMpegDecoderRegisters test registers read/write     */    ehwTestMpegDecoderRegisters,    /** ehwTestMpegDecoderProgramMemory test internal program memory    */    ehwTestMpegDecoderProgramMemory,    /** ehwTestMpegDecoderDataMemory test internal data memory    */    ehwTestMpegDecoderDataMemory,    /** ehwTestDramSlave test entire Dram using slave channel    */    ehwTestDramSlave,    /** ehwTestDramMaster test entire Dram using master channel    */    ehwTestDramMaster,    ehwTestMax}HARDWARE_TEST_SET_ID;// AUDIOIN_SETtypedef enum {    /** eAudioInCommand can be one of eAudioInCommand_StartCapture and    eAudioInCommand_StopCapture.    */    eAudioInCommand = 0,     // eAudioInCommand_type    /** eAudioInParams property should be called before eAudioInCommand    to set the parameters of the input.    For digital connection the input parameters should be equal with the    parameters of the digital output connected.    For analog connection the input parameters should be equal with the    ADC (analog-digital converter) parameters.    */    eAudioInParams,          // eAudioInParams_type, set, get.    eAudioInMax}AUDIOIN_SET_ID;/*****************************************************************************//*********************** Do not define SET_IDs above this limit **************//*****************************************************************************/#ifndef KSPROPERTY_TYPE_GET#define KSPROPERTY_TYPE_GET    0x00000001#define KSPROPERTY_TYPE_SET    0x00000002#endif#define HWLIB_INTERFACE struct#define HWLIB_BEGIN_INTERFACE#define HWLIB_END_INTERFACEtypedef ULONG QIID;/************** start common defines in mpegcmn.h & rm84cmn.h ****************/#ifndef _MPEGCMN_H// MpegAttrAudioMode; Audio modes defined also in impeg32, hardware.h#define AUDIO_MODE_STEREO                  0#define AUDIO_MODE_RIGHT_ONLY              1#define AUDIO_MODE_LEFT_ONLY               2#define AUDIO_MODE_MONOMIX                 3// MpegAttrVideoMode flags#define MPEG_ATTRIBUTE_VIDEO_COMPONENT     0#define MPEG_ATTRIBUTE_VIDEO_PAL           1#define MPEG_ATTRIBUTE_VIDEO_NTSC          2#define MPEG_ATTRIBUTE_VIDEO_SECAM         3#define MPEG_ATTRIBUTE_VIDEO_MAC           4#define MPEG_ATTRIBUTE_VIDEO_AUTO          5//    MpegAttrOverlayFlags#define OVERLAY_FLAGS_MASK            0x004F#define VIDEO_ZOOM_ENABLE             0x0001#define VIDEO_TV_DEST_ENABLE          0x0002#define VIDEO_HDTV_DEST_ENABLE        0x0004#define OSD_VIDEO_INDEPENDENT_DEST    0x0008#define SPECIAL_IGS_STANDARD          0x0040// MpegAttrForcedProgressive flags#define BROADCASTED_VIDEO             0x0200#define DVD_VIDEO                     0x0000#define FORCED_PROGRESSIVE_OFF        0x0100    // display progressive or interlaced like in the video stream#define FORCED_PROGRESSIVE_ON         0x0000    // display only progressive if the stream switches very fast from interlaced to progressive#define PROGRESSIVE_ALWAYS            0x0080#define PROGRESSIVE_MOVIES            0x0000#define FRAME_DROP                    0x0040#define FIELD_DROP                    0x0000#define VGA_INTERLACED                0x0002#define VGA_PROGRESSIVE               0x0000// MpegAttrHardwareInfo1 flags#define DARK_COLOR_LETTERBOX          0x0001    // hwDecoder is Quasar1 - letterbox bug#define VGA_CABLE_NOT_CONNECTED       0x0002    // VGA cable is not connected for analog overlay boards#define TV_DACS_ENABLE                0x0000    // default behaviour - disabled after HwReset, enabled when playing#define TV_DACS_DISABLE               0x0100    // force TvDacs disabled #define SET_ONETOONE        0x0000#define SET_SCALE           0x0004#define SET_TV_AS_SOURCE    0x0010#define SET_TV_AS_USER      0x0000#define SCART_MASK          0x0003#define SCART_DISABLE       0x0000#define SCART_COMPOSITE     0x0001#define SCART_RGB           0x0003#define VIDEOOUT_MASK       0x0421#define SET_VGA             0x0000#define SET_TV              0x0001#define SET_HDTV            0x0020#define SET_DIG_OV          0x0021#define SET_HDTV_SUBD       0x0400#define STANDARDTV_MASK     0x010A#define SET_NTSC            0x0000#define SET_PAL             0x0002#define SET_PAL60           0x0008#define SET_PALM            0x000A#define SET_480P            0x0100    // used only for Vga scan conversion#define COMPONENT_MASK      0x02C0#define COMPOSITE           0x0000#define COMPONENT_YUV       0x0080#define COMPONENT_RGB       0x00C0#define OUTPUT_OFF          0x0040#define COMPONENT_RGB_SCART 0x0200#define AUDIO_FORMAT_MPEG1       1#define AUDIO_FORMAT_MPEG2       2#define AUDIO_FORMAT_AC3         3#define AUDIO_FORMAT_PCM         4#define AUDIO_FORMAT_DTS         5#define AUDIO_FORMAT_DVD_AUDIO   6#define AUDIO_FORMAT_REVERSE_PCM 7#define AUDIO_FORMAT_AAC         8#define VIDEO_ASPECT_RATIO_4_3   2#define VIDEO_ASPECT_RATIO_16_9  3#define MPEG_ATTRIBUTE_VIDEO_PAL  1#define MPEG_ATTRIBUTE_VIDEO_NTSC 2#define VIDEO_OUTPUT_MODE_NORMAL_OR_WIDE 0#define VIDEO_OUTPUT_MODE_PAN_SCAN       1#define VIDEO_OUTPUT_MODE_LETTERBOX      2#define VIDEO_OUTPUT_MODE_HORZCENTER     3#define VIDEO_OUTPUT_MODE_VERTCENTER     4// flags used to enable/disable the hardware audio outputs#define AUDIO_DAC_ENABLE      0x0001

⌨️ 快捷键说明

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