displaydev.h
来自「AMLOGIC DPF source code」· C头文件 代码 · 共 506 行 · 第 1/2 页
H
506 行
/*******************************************************************
*
* Copyright C 2005 by Amlogic, Inc. All Rights Reserved.
*
* Description:
*
* Author: Amlogic Software
* Created: Fri Nov 11 01:04:43 2005
*
*******************************************************************/
#ifndef DISPLAYDEV_H
#define DISPLAYDEV_H
/****************************************
* displayctl device defines
*
*****************************************/
#define DISPCTLIO_REGISTER _IO('D',1)
#define DISPCTLIO_UNREGISTER _IO('D',2)
#define DISPCTLIO_SETMODE _IO('D', 3)
#define DISPCTLIO_DISABLE _IO('R',4)
#define DISPCTLIO_ENABLE _IO('R',5)
#define DISPCTLIO_GETMODE _IO('R', 6)
#define DISPCTLIO_GETWIDTH _IO('R', 7)
#define DISPCTLIO_GETHEIGHT _IO('R', 8)
#define DISPCTLIO_GET_HDFREQ_FUNC _IO('R', 9)
#define DISPCTLIO_SET_LCD_GAMMA _IO('R', 10)
#define DISPCTLIO_ADJUST_VIDEO _IO('R', 11)
#define DISPCTLIO_GET_VIDEO_ADJUSTMENT _IO('R', 12)
#define DISPCTL_MODE_480I 0
#define DISPCTL_MODE_576I 1
#define DISPCTL_MODE_480P 2
#define DISPCTL_MODE_576P 3
#define DISPCTL_MODE_720P 4
#define DISPCTL_MODE_1080I 5
#define DISPCTL_MODE_1080P 6
#define DISPCTL_MODE_VGA 7
#define DISPCTL_MODE_SVGA 8
#define DISPCTL_MODE_XGA 9
#define DISPCTL_MODE_SXGA 10
#define DISPCTL_MODE_LCD 11
#define DISPCTL_MODE_KEEP 12
#define VIDEO_APPVMODE_480_480 0x0
#define VIDEO_APPVMODE_576_576 0x1
#define VIDEO_APPVMODE_576_480 0x2
#define VIDEO_APPVMODE_480_576 0x3
#define VIDEO_APPVMODE_240_480 0x4
#define VIDEO_APPVMODE_288_576 0x5
#define VIDEO_APPVMODE_288_480 0x6
#define VIDEO_APPVMODE_240_576 0x7
#define VIDEO_APPVMODE_480_480_LB 0x8
#define VIDEO_APPVMODE_576_576_LB 0x9
#define VIDEO_APPVMODE_576_480_LB 0xa
#define VIDEO_APPVMODE_480_576_LB 0xb
#define VIDEO_APPVMODE_480_480_PS 0xc
#define VIDEO_APPVMODE_576_576_PS 0xd
#define VIDEO_APPVMODE_576_480_PS 0xe
#define VIDEO_APPVMODE_480_576_PS 0xf
#define VIDEO_APPHMODE_720 0x0
#define VIDEO_APPHMODE_704 0x1
#define VIDEO_APPHMODE_480 0x2
#define VIDEO_APPHMODE_352 0x3
#define VIDEO_APPHMODE_320 0x4
typedef enum {
VPP_EFFECT_NONE = 0,
VPP_EFFECT_VEXPAND_TOP,
VPP_EFFECT_VEXPAND_BOTTOM,
VPP_EFFECT_VEXPAND_MIDDLE,
VPP_EFFECT_HEXPAND_LEFT,
VPP_EFFECT_HEXPAND_RIGHT,
VPP_EFFECT_HEXPAND_MIDDLE,
VPP_EFFECT_COLOR_FADE_OUT,
VPP_EFFECT_COLOR_FADE_IN,
VPP_EFFECT_END
} vpp_effect_t;
/****************************************
* video device defines
*
*****************************************/
#define VIDEOIO_GETMODE _IO('V', 0)
#define VIDEOIO_SETMODE _IO('V', 1)
#define VIDEOIO_FORCESETMODE _IO('V', 2)
#define VIDEOIO_GETAPPMODE _IO('V', 3)
#define VIDEOIO_SETAPPMODE _IO('V', 4)
#define VIDEOIO_FORCESETAPPMODE _IO('V', 5)
#define VIDEOIO_GETBUF _IO('R', 6)
#define VIDEOIO_PUTBUF _IO('R', 7)
#define VIDEOIO_CLRBUF _IO('R', 8)
#define VIDEOIO_CLRBUF_KEEPCUR _IO('R', 9)
#define VIDEOIO_ATTACH_DECODER _IO('R', 10)
#define VIDEOIO_DETACH_DECODER _IO('R', 11)
#define VIDEOIO_SMOKE _IO('R', 12)
#define VIDEOIO_PAN _IO('R', 13)
#define VIDEOIO_ATTACH_DISPLAYCTL _IO('R', 14)
#define VIDEOIO_DETACH_DISPLAYCTL _IO('R', 15)
#define VIDEOIO_ENABLE _IO('R', 16)
#define VIDEOIO_DISABLE _IO('R', 17)
#define VIDEOIO_SETSYNC _IO('R', 18)
#define VIDEOIO_GETSYNC _IO('R', 19)
#define VIDEOIO_GETQ _IO('R', 20)
#define VIDEOIO_PLAYCTRL _IO('R', 21)
#define VIDEOIO_INSTALL_AUDIOIF _IO('R', 22)
#define VIDEOIO_REQUEST_DISPLAY_NOTIFY _IO('R', 23)
#define VIDEOIO_GETLAST_FRAME _IO('R', 24)
#if defined(AML_ATHENA)
#define VIDEOIO_SET_POSITION _IO('R', 25)
#define VIDEOIO_SET_WIDEOPTION _IO('R', 26)
#define VIDEOIO_GET_WIDEOPTION _IO('R', 27)
#define VIDEOIO_EFFECT _IO('R', 28)
#endif
/****************************************
Video Command Interface
****************************************/
#define VIDEO_PLAY 0x0000
#define VIDEO_STEP 0x1000
#define VIDEO_PAN_UP 0
#define VIDEO_PAN_DOWN 1
#define VIDEO_PAN_LEFT 2
#define VIDEO_PAN_RIGHT 3
#define VIDMODE_ROUND_UP 0
#define VIDMODE_ROUND_DOWN 1
#define VIDEO_WIDEOPTION_NORMAL 0
#define VIDEO_WIDEOPTION_WIDE 1
#define VIDEO_WIDEOPTION_CINEMAWIDE 2
typedef struct {
unsigned short outmode; /* DISPCTL_MODE_480I/576I/480p/576p */
unsigned short src_width; /* decoded picture width */
unsigned short src_height; /* decoded picture height */
unsigned short zoom_level;
unsigned short hdmode;
} video_mode_t;
typedef struct {
unsigned short outmode; /* DISPCTL_MODE_480I/576I/480p/576p */
unsigned short convertion_type_v;
unsigned short convertion_type_h;
unsigned short zoom_level;
unsigned short hdmode;
} video_appmode_t;
typedef int (*video_jpegenc_putdata_func_t)(unsigned char data);
/****************************************
* decoder device defines
*
*****************************************/
#define DECODERIO_START _IO('R',1)
#define DECODERIO_STOP _IO('R',2)
#define DECODERIO_PUTBUF _IO('R',3)
#define DECODERIO_SENDBUF _IO('R',4)
#define DECODERIO_SYSINFO _IO('R',5)
#define DECODERIO_DRAW _IO('R',6)
#define DECODERIO_ROTATE _IO('R',7)
#define DECODERIO_SETBUFSPEC _IO('R',8)
#define DECODERIO_SETFRAMEDUR _IO('R',9)
#define DECODERIO_HOLD _IO('R',10)
#define DECODERIO_I _IO('R',11)
#define DECODERIO_SET_DEINTERLACE_LEVEL _IO('R',12)
#define DECODERIO_SET_DEINTERLACE_PARAMETERS _IO('R',13)
#define DECODERIO_FEATURES _IO('R',14)
#define DECODERIO_SETBUF _IO('R',15)
#define DECODERIO_DECODEINFO _IO('R',16)
#define DECODERIO_SYNC_BUF _IO('R',17)
#define DECODERIO_SET_USER_ASPECT_RATIO _IO('R',18)
/* NULL decoder DECODERIO_DRAW */
typedef enum {
DRAW_CMD_HLINE = 0,
DRAW_CMD_VLINE,
DRAW_CMD_SCALE,
MAX_DRAW_COMMAND
} draw_command_e;
typedef struct {
unsigned pY_src;
unsigned pU_src;
unsigned pV_src;
int src_top;
int src_left;
int src_width;
int src_height;
int src_mb_width;
unsigned pY_dst;
unsigned pU_dst;
unsigned pV_dst;
int dst_top;
int dst_left;
int dst_width;
int dst_height;
int dst_mb_width;
} draw_scale_cmd_t;
/* NULL decoder DECODERIO_PUTBUF */
typedef enum {
SHOW_BOTTOM2TOP = 0,
SHOW_TOP2BOTTOM,
SHOW_LEFT2RIGHT,
SHOW_RIGHT2LEFT,
SHOW_TOPLEFT2BOTTOMRIGHT,
SHOW_TOPRIGHT2BOTTOMLEFT,
SHOW_BOTTOMLEFT2TOPRIGHT,
SHOW_BOTTOMRIGHT2TOPLEFT,
SHOW_HORDOORCLOSE,
SHOW_HORDOOROPEN,
SHOW_HORINTERCROSS,
SHOW_VERINTERCROSS,
SHOW_FADE_OUT_FADE_IN,
SHOW_VPP_EFFECT_VEXPAND_TOP,
SHOW_VPP_EFFECT_VEXPAND_BOTTOM,
SHOW_VPP_EFFECT_VEXPAND_MIDDLE,
SHOW_VPP_EFFECT_HEXPAND_LEFT,
SHOW_VPP_EFFECT_HEXPAND_RIGHT,
SHOW_VPP_EFFECT_HEXPAND_MIDDLE,
SHOW_VPP_EFFECT_COLOR_FADING,
MAX_SHOW_COMMAND
} show_command_e;
typedef struct{
unsigned type;
unsigned data0;
unsigned data1;
unsigned data2;
unsigned data3;
} decode_start_arg_t;
/* type of DECODERIO_START */
#define DECODE_ONE 0x1
#define I_ONLY 0x2
#define VMIX_COMP 0x4
#define BYPASS_DEINTERLACE 0x8
#define SET_PIC_SIZE 0x10
#define PLAY_RATE_15 6400
#define PLAY_RATE_23_976 4000//8008
#define PLAY_RATE_24 4000
#define PLAY_RATE_25 3840
#define PLAY_RATE_29_97 3200//6406
#define PLAY_RATE_30 3200
#define PLAY_RATE_50 1920
#define PLAY_RATE_59_94 1600//3203
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?