📄 mv_inp.h
字号:
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 + -