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

📄 mv_inp.h

📁 tuner扫描
💻 H
📖 第 1 页 / 共 2 页
字号:

    INPUT DATA format : ES
    UNDER level : 10000 bytes from the bottom of the video buffer
    OVER level  : 160000 bytes from the bottom of the video buffer
    EVENT to notify to application : MV_INP_NO_EVENT
    CALLBACK notification function : NULL


    PRECONDITIONS:
    In this API, The video input fifo is reset, that implies the
    read_pointer and the buffer fullness measurement are setted to 0,
    so application must reset before the write pointer to stay coherent.

    POSTCONDITIONS:
    None
    
    CALLING SEQUENCE:
*/
void
MV_INP_set_defaults(    
   void
   );
/*EMP=======================================================================*/

/*MPF=======================================================================*/
/*  
    FUNCTION NAME:     MV_INP_term

    PACKAGE:           INP

    SCOPE:             PLATEFORM

    DESCRIPTION:
    Deinitialise the video input buffer package.
    Frees all resources allocated by MV_INP_init call.

    PRECONDITIONS:
    None

    POSTCONDITIONS:
    After calling to this API, only MV_INP_bufuse() and MV_INP_init()
    can be called.
    
    CALLING SEQUENCE:
*/
void
MV_INP_term(    
void
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*  
    FUNCTION NAME:     MV_INP_reset_buffer

    PACKAGE:           INP

    SCOPE:             PLATEFORM

    DESCRIPTION:
    Flush the video input buffer.

    The video input buffer is cleared. This can be useful when video data
    in the input buffer should be discarded for instance when changing to
    another video stream.

    NOTES:
    This function should not be called during decoding because internal
    decoder pipelines are not cleared.

    This function coulb be called directly from an ISR

    In this API, the read_pointer and the buffer fullness measurement
    are setted to 0,so application must reset before the write pointer
    to stay coherent.

    PRECONDITIONS:
    None

    POSTCONDITIONS:
    None
    
    CALLING SEQUENCE:
*/
void
MV_INP_reset_buffer(    
void
);
/*EMP=======================================================================*/

/*MPF=======================================================================*/
/*  
    FUNCTION NAME:     MV_INP_set_warning_levels

    PACKAGE:           INP

    SCOPE:             PLATEFORM

    DESCRIPTION:
    Configures of the underflow and overflow levels for the video input buffer.
    underflow and overflow level are specified in units of bytes.

    NOTES:
    in_under_level and in_over_level must be multiple of 4 bytes

    PRECONDITIONS:
    None

    POSTCONDITIONS:
    None
    
    CALLING SEQUENCE:

*/
void
MV_INP_set_warning_levels(    
   MV_INP_BUF_SIZE    in_under_level, /* in unit of bytes */
   MV_INP_BUF_SIZE    in_over_level   /* in unit of bytes */
   );
/*EMP=======================================================================*/

/*MPF=======================================================================*/
/*  
    FUNCTION NAME:     MV_INP_get_status

    PACKAGE:           INP

    SCOPE:             PLATEFORM

    DESCRIPTION:
    Get the video input buffer status.
    It retrieves :
    - size of the video fifo
    - under level
    - over level
    - fullness of video buffer
    - freespace in the video buffer
    - SDRAM base address

    Units are bytes.
    
    PRECONDITIONS:
    None

    POSTCONDITIONS:
    None

    CALLING SEQUENCE: 
*/
void
MV_INP_get_status(    
   MV_INP_BUF_SIZE   * ou_buf_size_ptr,         /* in unit of bytes */
   MV_INP_BUF_SIZE   * ou_under_level_ptr,      /* in unit of bytes */
   MV_INP_BUF_SIZE   * ou_over_level_ptr,       /* in unit of bytes */
   MV_INP_BUF_SIZE   * ou_fullness_ptr,         /* in unit of bytes */
   MV_INP_BUF_SIZE   * ou_freespace_ptr,        /* in unit of bytes */
   unsigned long     * ou_SDRAM_base_addr_ptr
   );
/*EMP=======================================================================*/

/*MPF=======================================================================*/
/*  
    FUNCTION NAME:     MV_INP_set_format

    PACKAGE:           INP

    SCOPE:             PLATEFORM

    DESCRIPTION:
    Set the format of the data going into the video input buffer.
    The format can be PES, MPEG1 or ES. 

    PRECONDITIONS:
    None

    POSTCONDITIONS:
    None
    
    CALLING SEQUENCE:
*/
void
MV_INP_set_format(    
   MV_INP_FORMAT    in_format   /* In: Video data format */
   );
/*EMP=======================================================================*/

/*MPF=======================================================================*/
/*  
    FUNCTION NAME:     MV_INP_fill_buffer

    PACKAGE:           INP

    SCOPE:             PLATEFORM

    DESCRIPTION:
    Put data into the video input buffer. The maximum number of MV_INP_DATA
    to load must be specified. When the video input buffer is full before
    this maximum number is loaded, no more data is loaded and a
    MV_INP_BUFFER_FULL_EVENT is notify to application if it has enabled event.
    The actual number of MV_INP_DATA loaded is returned.

    NOTES:
    data are written in the video fifo from current write ptr.
    So, to use correctly this API, MSP must stop to send data before call
    MV_INP_fill_buffer().

    PRECONDITIONS:
    MSP must stop to send data before call this API.

    POSTCONDITIONS:
    MSP must update its write_pointer with returned ou_data_loaded_ptr
    parameter, if after it wants to restart to send data into video
    fifo without lose the data we have written via CPU.
    
    CALLING SEQUENCE:
    */
void
MV_INP_fill_buffer(    
   MV_INP_DATA * in_data_ptr,           /* In:  Pointer to video data */
   MV_INP_SIZE  in_data_size,           /* In:  Nr of MV_INP_DATA to load */
   MV_INP_SIZE * ou_data_loaded_ptr     /* Out: Nr of MV_INP_DATA loaded */
   );
/*EMP=======================================================================*/

/*MPF=======================================================================*/
/*  
    FUNCTION NAME:     MV_INP_fill_still_buffer

    PACKAGE:           INP

    SCOPE:             PLATEFORM

    DESCRIPTION:
    Put data into the still fifo. The maximum number of MV_INP_DATA
    to load must be specified. When the still fifo is full before
    this maximum number is loaded, no more data is loaded and a
    MV_INP_STILL_FIFO_FULL_EVENT is notify to application if it has enabled event.
    The actual number of MV_INP_DATA loaded is returned.

    NOTES:
    data can be written in the still fifo in 2 different ways :
    - in_enabled = MV_INP_FROM_START_ENABLED means data will be written from
    start address of the still fifo.
    - in_enabled = MV_INP_FROM_START_DISABLED means data will be written from
    a write_pointer which is maintain by SW in the still fifo.

    Moreover, there is no wrap around on this still_fifo, that is to say when
    write_pointer is at the end it stops to write data inside.
    
    PRECONDITIONS:
    None

    POSTCONDITIONS:
    None
    
    CALLING SEQUENCE:
*/
void
MV_INP_fill_still_buffer(
   MV_INP_FROM_START in_enabled,
   MV_INP_DATA * in_data_ptr,           /* In:  Pointer to video data */
   MV_INP_SIZE  in_data_size,           /* In:  Nr of MV_INP_DATA to load */
   MV_INP_SIZE * ou_data_loaded_ptr     /* Out: Nr of MV_INP_DATA loaded */
   );
/*EMP=======================================================================*/

/*MPF=======================================================================*/
/*  
    FUNCTION NAME:     MV_INP_install_notify

    PACKAGE:           INP

    SCOPE:             PLATEFORM

    DESCRIPTION:
    Install a notification callback function.
    The function installed must be provided by the application.
    When an event occurs and when the event has been enabled, the notify function
    is called back with the occurring event as parameter (in_event).
    By default, the events are disabled.
    With MV_INP_enable_notification(), they can be enabled. 

    PRECONDITIONS:
    None

    POSTCONDITIONS:
    after call to this function, calling to MV_INP_enable_notification() or
    MV_INP_disable_notification() is possible
    
    CALLING SEQUENCE:
*/
void
MV_INP_install_notify(    
   void    (*in_function_ptr)(MV_INP_EVENT in_event)
   );
/*EMP=======================================================================*/

/*MPF=======================================================================*/
/*  
    FUNCTION NAME:     MV_INP_enable_notification

    PACKAGE:           INP

    SCOPE:             PLATEFORM

    DESCRIPTION:
    This function enables the events for which a notification will be given.
    When an event  occurs, the notify function is called that is installed
    for the event.
    By default, no events are enabled. 

    NOTES:
    Notify functions themselves are not part of the API but must be provided
    by the application.   

    PRECONDITIONS:
    Notify functions for the events are installed via MV_INP_install_notify().

    POSTCONDITIONS:
    None
    
    CALLING SEQUENCE:
*/
void
MV_INP_enable_notification(    
   MV_INP_EVENT        in_events
   );
/*EMP=======================================================================*/

/*MPF=======================================================================*/
/*  
    FUNCTION NAME:     MV_INP_disable_notification

    PACKAGE:           INP

    SCOPE:             PLATEFORM

    DESCRIPTION:
    This function disables that a notification is given for the specified
    events. The notification can be enabled via the MV_INP_enable_notification.
    Note that notify functions themselves are not part of the API but must
    be provided by the application.

    PRECONDITIONS:
    Notify functions for the events are installed via MV_INP_install_notify().

    POSTCONDITIONS:
    None
    
    CALLING SEQUENCE:
*/
void
MV_INP_disable_notification(    
   MV_INP_EVENT        in_events
   );
/*EMP=======================================================================*/
/*EEMP======================================================================*/

#ifdef __cplusplus
}
#endif

#endif /* End #ifndef _MV_INP_INCLUDED_ */
/*==========================================================================*/
/*        H I S T O R Y                                                     */
/*==========================================================================*/

⌨️ 快捷键说明

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