?? adi_itu656.h
字號:
/*****************************************************************************
Copyright (c) 2005 Analog Devices. All Rights Reserved.
This software is proprietary and confidential. By using this software you agree
to the terms of the associated Analog Devices License Agreement.
******************************************************************************
$File: video.h $
$Revision: 1.3 $
$Date: 2006/05/23 19:58:25 $
Description:
Header file for ITU-656 utilities
References:
******************************************************************************/
#ifndef ADI_ITU656_H // define adi_itu656.h
#define ADI_ITU656_H
/*****************************************************************************
Common definitions
*****************************************************************************/
#define ADI_ITU656_EAV_SIZE 4 // EAV size (bytes)
#define ADI_ITU656_SAV_SIZE 4 // SAV size (bytes)
/*****************************************************************************
NTSC definitions
Resoultion - 720x480, 525/60 video system
*****************************************************************************/
#define ADI_ITU656_NTSC_WIDTH (720) // NTSC resolution
#define ADI_ITU656_NTSC_HEIGHT (525) // Including active & blank lines
#define ADI_ITU656_NTSC_ACTIVE_FLINES (240) // Active Field lines
#define ADI_ITU656_NTSC_ACTIVE_LINES (ADI_ITU656_NTSC_ACTIVE_FLINES * 2) // Active lines in a frame
#define ADI_ITU656_NTSC_BLANKING (268) // Blanking size for NTSC
// Total line width
#define ADI_ITU656_NTSC_LINE_WIDTH ((ADI_ITU656_NTSC_WIDTH * 2) + \
ADI_ITU656_NTSC_BLANKING + \
ADI_ITU656_EAV_SIZE + \
ADI_ITU656_SAV_SIZE)
// Interlaced NTSC definitions
#define ADI_ITU656_NTSC_ILF1_START (23) // NTSC Interlaced active frame field1 (odd) start line
#define ADI_ITU656_NTSC_ILF1_END (262) // NTSC Interlaced active frame field1 (odd) finish line
#define ADI_ITU656_NTSC_ILF2_START (286) // NTSC Interlaced active frame field2 (even) start line
#define ADI_ITU656_NTSC_ILF2_END (525) // NTSC Interlaced active frame field2 (even) start line
// Progressive NTSC definitions
#define ADI_ITU656_NTSC_PRF_START (46) // NTSC Progressive active frame start line
#define ADI_ITU656_NTSC_PRF_END (525) // NTSC Progressive active frame finish line
/*****************************************************************************
PAL definitions
Resoultion - 720x576, 625/50 video system
*****************************************************************************/
#define ADI_ITU656_PAL_WIDTH (720) // PAL resolution
#define ADI_ITU656_PAL_HEIGHT (625) // Including active & blank lines
#define ADI_ITU656_PAL_ACTIVE_FLINES (288) // Active Field lines
#define ADI_ITU656_PAL_ACTIVE_LINES (ADI_ITU656_PAL_ACTIVE_FLINES * 2) // Active lines in a frame
#define ADI_ITU656_PAL_BLANKING (280) // Blanking size for PAL (Bytes)
// Total line width
#define ADI_ITU656_PAL_LINE_WIDTH ((ADI_ITU656_PAL_WIDTH * 2) + \
ADI_ITU656_PAL_BLANKING + \
ADI_ITU656_EAV_SIZE + \
ADI_ITU656_SAV_SIZE)
// Interlaced PAL definitions
#define ADI_ITU656_PAL_ILF1_START (23) // PAL Interlaced active frame field1 (odd) start line
#define ADI_ITU656_PAL_ILF1_END (310) // PAL Interlaced active frame field1 (odd) finish line
#define ADI_ITU656_PAL_ILF2_START (336) // PAL Interlaced active frame field2 (even) start line
#define ADI_ITU656_PAL_ILF2_END (623) // PAL Interlaced active frame field2 (even) start line
// Progressive PAL definitions
#define ADI_ITU656_PAL_PRF_START (45) // PAL Progressive active frame start line
#define ADI_ITU656_PAL_PRF_END (620) // PAL Progressive active frame finish line
/*****************************************************************************
Enumerations for video formats
*****************************************************************************/
typedef enum { // Video formats
ADI_ITU656_NTSC_IL, // NTSC Interlaced frame
ADI_ITU656_PAL_IL, // PAL Interlaced frame
ADI_ITU656_NTSC_PR, // NTSC progressive frame
ADI_ITU656_PAL_PR // PAL progressice frame
}ADI_ITU656_FRAME_TYPE;
/*****************************************************************************
API Function Declerations
*****************************************************************************/
void adi_itu656_FrameFormat ( // Formats an area in memory into a video frame
u8 *frame_ptr, // Pointer to an area of memory used for frame
ADI_ITU656_FRAME_TYPE frametype // Memory will be formated for this Frame type
);
void adi_itu656_FrameFill ( // Fills active video portions of formated frame to specified color
u8 *frame_ptr, // Pointer to a formated video frame in memory
ADI_ITU656_FRAME_TYPE frametype, // Formated memory Frame type
u8 *ycbcr_data // 4 byte array of 32 bit color value of YCbCr data
);
void adi_itu656_RowFill ( // Fills a row of pixels in active video portion of formated frame with specified color
u8 *frame_ptr, // Pointer to a formated video frame in memory
ADI_ITU656_FRAME_TYPE frametype, // Formated memory Frame type
u32 row_value, // 32 bit value corresponding to row number of active field
u8 *ycbcr_data // 4 byte array of 32 bit color value of YCbCr data
);
void adi_itu656_ColumnFill ( // Fills a column of pixels in active video portion of formated frame with specified color
u8 *frame_ptr, // Pointer to a formated video frame in memory
ADI_ITU656_FRAME_TYPE frametype, // Formated memory Frame type
u32 column_value, // 32 bit value corresponding to column number of active field
u8 *ycbcr_data // 4 byte array of 32 bit color value of YCbCr data
);
#endif // end itu656.h definition
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -