fyf_vout.h
上传用户:sunhongbo
上传日期:2022-01-25
资源大小:3010k
文件大小:5k
源码类别:

数据库系统

开发平台:

C/C++

  1. /******************************************************************************/
  2. /*    Copyright (c) 2008 Embedded Internet Solutions, Inc                     */
  3. /*    All rights reserved. You are not allowed to copy or distribute          */
  4. /*    the code without permission.                                            */
  5. /*    This is the demo implenment of the Porting APIs needed by            */
  6. /*    MiddleWare.                                                             */
  7. /*    Maybe you should modify it accorrding to Platform.                      */
  8. /*                                                                            */
  9. /*    $author szhy 2008/09/26                                              */
  10. /******************************************************************************/
  11. #ifndef  __FYF_VOUT_H_
  12. #define __FYF_VOUT_H_
  13. typedef enum
  14. {
  15.     FYF_VIDEO_OUTPUT_CVBS    = 1<<0,
  16.     FYF_VIDEO_OUTPUT_SVIDEO  = 1<<1,
  17.     FYF_VIDEO_OUTPUT_RGB     = 1<<2,
  18.     FYF_VIDEO_OUTPUT_YPBPR   = 1<<3,
  19.     FYF_VIDEO_OUTPUT_HDMI    = 1<<4,
  20.     FYF_VIDEO_OUTPUT_YUV     = 1<<5
  21. }FYF_VOUT_VIDEO_OUTPUT_e;
  22. typedef enum
  23. {
  24.     FYF_VOUT_TVENC_NTSC,
  25.     FYF_VOUT_TVENC_PAL,
  26.     FYF_VOUT_TVENC_SECAM,
  27.     FYF_VOUT_TVENC_AUTO
  28. }FYF_VOUT_TVENC_MODE_e;
  29. typedef enum
  30. {
  31.     FYF_VOUT_AR_FULL_SCREEN,
  32.     FYF_VOUTS_AR_PILLARBOX,
  33.     FYF_VOUT_AR_LETTERBOX,
  34.     FYF_VOUT_AR_PAN_SCAN
  35. }FYF_VOUT_AR_MODE_e;
  36. typedef enum
  37. {
  38.     FYF_VOUT_SELECT_DEV = 1,
  39.     FYF_VOUT_ENABLE_DEV,
  40.     FYF_VOUT_SET_MODE,
  41.     FYF_VOUT_SET_VISABLE,
  42.     FYF_VOUT_SET_ASPECT_RATIO,
  43.     FYF_VOUT_SET_WIN_LOCATION,
  44.     FYF_VOUT_SET_WIN_TRANSPARENT,
  45.     FYF_VOUT_SET_CONTRAST,
  46.     FYF_VOUT_SET_HUE,
  47.     FYF_VOUT_SET_BRIGHTNESS,
  48.     FYF_VOUT_SET_SATURATION,
  49.     FYF_VOUT_SET_SHARPNESS,
  50.     FYF_VOUT_SET_RATIO
  51. }FYF_VOUT_IOCTL_e;
  52. typedef enum
  53. {
  54. FYF_VOUT_SET_AR_16TO9,
  55. FYF_VOUT_SET_AR_4TO3
  56. }FYF_VOUT_SET_ASPECT_RATIO_e;
  57. typedef struct
  58. {
  59. BU32 (*FYF_CPI_vout_open)(void);
  60. BS32 (*FYF_CPI_vout_close)(BU32 display);
  61. BU32 (*FYF_CPI_vout_open_window)(BU32 display, BS32 type);
  62.   BS32 (*FYF_CPI_vout_close_window)(BU32 display, BU32 window);
  63. BS32 (*FYF_CPI_vout_ioctl)(BU32 display, FYF_VOUT_IOCTL_e op, void *arg);
  64. }FYF_VOUT_PORTING;
  65. /******************************************************************************/
  66. /*Description: register vout                                                 */
  67. /*Input      : porting       */
  68. /*Output     : no                                                             */
  69. /*Return     : no                                                             */
  70. /******************************************************************************/
  71. void FYF_API_vout_register(FYF_VOUT_PORTING *porting);
  72. /******************************************************************************/
  73. /*Description: vout open                                                      */
  74. /*Input      : no                      */
  75. /*Output     : no                                                             */
  76. /*Return     : >0 success, 0 failure                                          */
  77. /******************************************************************************/
  78. BU32 FYF_API_vout_open(void);
  79. /******************************************************************************/
  80. /*Description: vout close                                                     */
  81. /*Input      : display                   */
  82. /*Output     : no                                                             */
  83. /*Return     : FYF_OK: success, FYF_ERR: failure                              */
  84. /******************************************************************************/
  85. BS32 FYF_API_vout_close(BU32 display);
  86. /******************************************************************************/
  87. /*Description: vout open window                                               */
  88. /*Input      : display,type               */
  89. /*Output     : no                                                             */
  90. /*Return     : >0 success, 0 failure                                          */
  91. /******************************************************************************/
  92. BU32 FYF_API_vout_open_window(BU32 display, BS32 type);
  93. /******************************************************************************/
  94. /*Description: vout close window                                              */
  95. /*Input      : display,window             */
  96. /*Output     : no                                                             */
  97. /*Return     : FYF_OK: success, FYF_ERR: failure                              */
  98. /******************************************************************************/
  99. BS32 FYF_API_vout_close_window(BU32 display, BU32 window);
  100. /******************************************************************************/
  101. /*Description: vout ioctl                                                     */
  102. /*Input      : display,op                 */
  103. /*Output     : arg                                                            */
  104. /*Return     : FYF_OK: success, FYF_ERR: failure                              */
  105. /******************************************************************************/
  106. BS32 FYF_API_vout_ioctl(BU32 display, FYF_VOUT_IOCTL_e op, void *arg);
  107. #endif