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

📄 fmpeg4_avcodec.h

📁 gm8120的video控制
💻 H
📖 第 1 页 / 共 3 页
字号:
  /// The minimum quantization value.  unsigned int   u32MinQuant;      /**< To set the minimum quantization value range.                                                                 */  /// The address of current reconstruct frame buffer.  unsigned char *pu8ReConFrameCur; /**<                                     *  To specify the current reconstruct frame buffer address.\n                                    *  In some occasions,user may want to provide his own reconstructed                                     *  buffer.\n                                    *  Hence, if this variable is not set to NULL, the user-provided current                                    *  reconstruct frame buffer is used and pointed by this variable.\n                                    *  Otherwise, if this variable is set to NULL, encoder will internally                                    *  use the installed @ref pfnDmaMalloc function to allocate the necessary                                    *  current reconstruct frame buffer.\n\n                                    *                                    *  <B>value of @ref pu8ReConFrameCur</B>:                                    *     <ul>                                    *       <li> != <B>NULL</B> : Use user-provided buffer as current reconstruct                                    *                             frame buffer. The requirement of the buffer size in bytes                                    *                             is '( ((frame width + 15)/16) * (2+((frame height + 15)/16)) + 2) x 256 x 1.5'                                    *       <li> == <B>NULL</B> : Use internally current reconstruct frame buffer                                    *                             which is allocated by using installed @ref pfnDmaMalloc                                    *                             function.                                    *     </ul>                                    *   <B>N.B.</B> : the current reconstruct frame buffer address must be <B>physical address</B> with <B>8-byte aligned</B>.                                    *                                                                        *   @see pfnDmaMalloc                                    *   @see pfnDmaFree                                    */  /// The address of reference reconstruct frame buffer.  unsigned char *pu8ReConFrameRef; /**<                                     *  To specify the reference reconstruct frame buffer address.\n                                    *  In some occasions,user may want to provide his own reconstructed                                     *  buffer.\n                                    *  Hence, if this variable is not set to NULL, the user-provided reference                                    *  reconstruct frame buffer is used and pointed by this variable.\n                                    *  Otherwise, if this variable is set to NULL, encoder will internally                                    *  use the installed @ref pfnDmaMalloc function to allocate the necessary                                    *  reference reconstruct frame buffer.\n\n                                    *                                    *  <B>value of @ref pu8ReConFrameRef</B>:                                    *     <ul>                                    *       <li> != <B>NULL</B> : Use user-provided buffer as reference reconstruct                                    *                             frame buffer. The requirement of the buffer size in bytes                                    *                             is '( ((frame width + 15)/16) * (2+((frame height + 15)/16)) + 2) x 256 x 1.5'                                    *       <li> == <B>NULL</B> : Use internally reference reconstruct frame buffer                                    *                             which is allocated by using installed @ref pfnDmaMalloc                                    *                             function.                                    *     </ul>                                    *   <B>N.B.</B> : the reference reconstruct frame buffer address must be <B>physical address</B> with <B>8-byte aligned</B>.                                    *                                                                        *   @see pfnDmaMalloc                                    *   @see pfnDmaFree                                    */  /// The address of internal AC DC predictor buffer.  unsigned short *p16ACDC; /**<                    *  To specify the internal AC DC perdictor buffer address for encoder.\n                   *  If this variable is not set to NULL, the user-provided buffer                   *  pointed by this variable is used.\n                   *  Otherwise, if this variable is set to NULL, encoder will internally                   *  use the installed @ref pfnDmaMalloc function to allocate the necessary                   *  AC DC predictor buffer.\n\n                   *                   *  <B>value of @ref p16ACDC</B>:                   *     <ul>                   *       <li> != <B>NULL</B> : Use user-provided buffer as AC DC predictor buffer.                   *                             The requirement of the buffer size in bytes                   *                             is '((frame width + 15)/16) * 64'                   *       <li> == <B>NULL</B> : Use internally AC DC predictor buffer                   *                             which is allocated by using installed @ref pfnDmaMalloc                   *                             function.                   *     </ul>                   *   <B>N.B.</B> : the AC DC predictor buffer address must be <B>physical address</B> with <B>16-byte aligned</B>.                   *                   *   @see pfnDmaMalloc                   *   @see pfnDmaFree                   */    /// The function pointer to user-defined DMA memory allocation function.  void* pfnDmaMalloc;  /**< This variable contains the function pointer to the user-defined                                  *   DMA malloc function since under OS environment, our hardware device                                 *   may need the physical address instead of virtual address.                                 *                                 *   @see pfnDmaFree                                 *   @see DMA_MALLOC_PTR_enc                                 *   @see DMA_FREE_PTR_enc                                 */  /// The function pointer to user-defined DMA free allocation function.  void*   pfnDmaFree;    /**< This variable contains the function pointer to the user-defined                                  *   DMA free function since under OS environment, our hardware device                                 *   may need the physical address instead of virtual address.                                 *                                 *   @see pfnDmaFree                                 *   @see DMA_MALLOC_PTR_enc                                 *   @see DMA_FREE_PTR_enc                                 */  void* pfnMalloc;  void* pfnFree;} FMP4_ENC_PARAM;typedef struct {  // for the sake of motion detection  int motion_dection_enable;  //1:enable 0:disable  /// The x-component of coordinate of motion detection region 0, upper-left point  int 	range_mb_x0_LU; /**< The x-component of coordinate of motion detection region 0, upper-left point. */  /// The y-component of coordinate of motion detection region 0, upper-left point.  int 	range_mb_y0_LU; /**< The y-component of coordinate of motion detection region 0, upper-left point. */  /// The x-component of coordinate of motion detection region 0, lower-right point.  int 	range_mb_x0_RD; /**< The x-component of coordinate of motion detection region 0, lower-right point. */  /// The y-component of coordinate of motion detection region 0, lower-right point.  int 	range_mb_y0_RD; /**< The y-component of coordinate of motion detection region 0, lower-right point. */  /// The x-component of coordinate of motion detection region 1, upper-left point.  int 	range_mb_x1_LU; /**< The x-component of coordinate of motion detection region 1, upper-left point. */  /// The y-component of coordinate of motion detection region 1, upper-left point.  int 	range_mb_y1_LU; /**< The y-component of coordinate of motion detection region 1, upper-left point. */  /// The x-component of coordinate of motion detection region 1, lower-right point.  int 	range_mb_x1_RD; /**< The x-component of coordinate of motion detection region 1, lower-right point. */  /// The y-component of coordinate of motion detection region 1, lower-right point.  int 	range_mb_y1_RD; /**< The y-component of coordinate of motion detection region 1, lower-right point. */  /// The x-component of coordinate of motion detection region 2, upper-left point.  int 	range_mb_x2_LU; /**< The x-component of coordinate of motion detection region 2, upper-left point. */  /// The y-component of coordinate of motion detection region 2, upper-left point.  int 	range_mb_y2_LU; /**< The y-component of coordinate of motion detection region 2, upper-left point. */  /// The x-component of coordinate of motion detection region 2, lower-right point.  int 	range_mb_x2_RD; /**< The x-component of coordinate of motion detection region 2, lower-right point. */  /// The y-component of coordinate of motion detection region 2, lower-right point  int 	range_mb_y2_RD; /**< The y-component of coordinate of motion detection region 2, lower-right point. */  /// The threshold of motion vector in region 0.  int	MV_th0;         /**< This variable specifies the threshold of motion vector in region 0. */  /// The threshold of sad in region 0.  int	sad_th0;        /**< This variable specifies the threshold of sad in region 0. */  /// The threshold of delta deviation in region 0.  int	delta_dev_th0;  /**< This variable specifies the threshold of delta deviation in region 0. */  /// The threshold of motion vector in region 1.  int	MV_th1;         /**< This variable specifies the threshold of motion vector in region 1. */  /// The threshold of sad in region 1.  int	sad_th1;        /**< This variable specifies the threshold of sad in region 1. */  /// The threshold of delta deviation in region 1.  int	delta_dev_th1;  /**< This variable specifies the threshold of delta deviation in region 1. */  /// The threshold of motion vector in region 2.  int	MV_th2;         /**< This variable specifies the threshold of motion vector in region 2. */  /// The threshold of sad in region 2.  int	sad_th2;        /**< This variable specifies the threshold of sad in region 2. */  /// The threshold of delta deviation in region 2.  int	delta_dev_th2;  /**< This variable specifies the threshold of delta deviation in region 2. */  /// The interval of frame/time for motion detection operation.  int	md_interval;  /**< This variable specifies the interval of frame/time for motion detection operation. */} MOTION_INFO;union VECTOR1{	unsigned int u32num;	struct	{		short s16y;		short s16x;	} vec;};//same as MACROBLOCK_Etypedef struct {	int16_t quant;  /**< This variable indicates the macroblock level quantization value (1 ~ 31)		*/	int16_t mode;  /**< This variable indicates the mode of macroblock.		*   Possible values are :		*   <ul>		*     <li> == INTER_MODE   : Indicate that this macroblock is encoded in INTER mode		*                                   with 1MV.		*     <li> == INTER4V_MODE : Indicate that this macroblock is encoded in INTER mode		*                                   with 4MV.		*     <li> == INTRA_MODE   : Indicate that this macroblock is encoded in INTRA mode.		*   </ul>		*		*/	union VECTOR1 mvs[4];/*		*   - when mode = INTER_MODE :		*			mvs[n]		*			--n = 0 ~ 2: invalid.		*			--n = 3: indicates the motion vector of whole macroblock.		*   - when mode = INTER4V_MODE :		*			mvs[n]		*			--n = 0 ~3: indicates the motion vector of block n within this macroblock.		*   - when mode = INTRA_MODE :		*			mvs[n]		*			--n = 0 ~ 3: invalid.		*/	int32_t dev;	int32_t sad16;        // SAD value for inter-VECTOR} MACROBLOCK_INFO;#endif

⌨️ 快捷键说明

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