📄 mv_dec.h
字号:
None
CALLING SEQUENCE:
*/
extern void
MV_DEC_soft_reset(
void
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_DEC_abort_decoding_by_user
PACKAGE: MV_DEC
SCOPE: PLATFORM
DESCRIPTION:
Allows application to abort decoding.
PRECONDITIONS:
None
POSTCONDITIONS:
None
CALLING SEQUENCE:
*/
extern void
MV_DEC_abort_decoding_by_user(
void
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_DEC_get_dec_delay
PACKAGE: MV_DEC
SCOPE: PLATFORM
DESCRIPTION:
Give the MPEG video decoder latency.
PRECONDITIONS:
None
POSTCONDITIONS:
None
CALLING SEQUENCE:
*/
extern void
MV_DEC_get_dec_delay(
MV_DEC_STC *ou_dec_delay_ptr
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_DEC_enable_user_data
PACKAGE: DEC
SCOPE: PLATEFORM
DESCRIPTION:
Enable extraction of the specified type(s) of user data (SEQUENCE, GOP
or PICTURE level) from the video data stream.
Input parameter can be :
- MV_DEC_SEQ_UD : enable extraction of UD at sequence level
- MV_DEC_GOP_UD : enable extraction of UD at gop level
- MV_DEC_PICT_UD : enable extraction of UD at picture level
When user data is available to be parsed an
MV_DEC_UD_PROCESSING_NEEDED_EVENT is generated.
The user data should then be parsed using the MV_DEC_user_data_process()
routine.
Afterthat, when the user data are available, an MV_DEC_UD_AVAILABLE_EVENT
is notified to application, so that it can retrieve it by calling the
MV_DEC_get_user_data() routine.
Extraction of more than one type of user data can be initiated by
logically OR-ing the masks for the desired types of user data.
Initially no user data extraction is requested.
PRECONDITIONS:
To retrieve correctly User Data, Application must enable notification of
MV_DEC_UD_PROCESSING_NEEDED_EVENT and MV_DEC_UD_AVAILABLE_EVENT via API
MV_DEC_enable_notification() before calling MV_DEC_enable_user_data()
routine
POSTCONDITIONS:
Once, MV_DEC_enable_user_data() has been called, application can call
MV_DEC_play() to begin retrieval of User Data
CALLING SEQUENCE:
*/
extern void
MV_DEC_enable_user_data(
const MV_DEC_UD_TYPE in_type /* type of User Data to extract */
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_DEC_disable_user_data
PACKAGE: DEC
SCOPE: PLATEFORM
DESCRIPTION:
Disable extraction of the specified type(s) of user data (SEQUENCE, GOP
or PICTURE level) from the video data stream.
Input parameter can be :
- MV_DEC_SEQ_UD : disable extraction of UD at sequence level
- MV_DEC_GOP_UD : disable extraction of UD at gop level
- MV_DEC_PICT_UD : disable extraction of UD at picture level
Disabling of more than one type of user data can be initiated by
logically OR-ing the masks for the desired types of user data.
PRECONDITIONS:
None
POSTCONDITIONS:
None
CALLING SEQUENCE:
*/
extern void
MV_DEC_disable_user_data(
const MV_DEC_UD_TYPE in_type /* type of User Data to extract */
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_DEC_get_user_data
PACKAGE: DEC
SCOPE: PLATEFORM
DESCRIPTION:
Get user data extracted from the video data stream.
Get the extracted user data. The user data is stored in the data area
pointed to by `ou_data_read_ptr'. The size of the data area must be
specified in `in_nbytes_to_read'. The number of MV_DEC_UD_DATA read and
stored is returned in `ou_nbytes_read_ptr'.
Extraction of user data was initiated by a call to MV_DEC_enable_user_data(),
on arrival of MV_DEC_UD_PROCESSING_NEEDED_EVENT, application must call
MV_DEC_user_data_process() for parsing user data which are stored in the
User Data buffer.
Avaibility of the user data in the buffer is signalled through an
MV_DEC_UD_AVAILABLE_EVENT.
NOTE:
The size of the User Data buffer is given by the application at the
initialisation phase, when it calls MV_DEC_bufuse().
PRECONDITIONS:
Application must wait for MV_DEC_UD_AVAILABLE_EVENT before calling
the routine.
POSTCONDITIONS:
None
NOTE:
CALLING SEQUENCE:
*/
extern void
MV_DEC_get_user_data(
MV_DEC_UD_SIZE in_nbytes_to_read, /* In: Nr of bytes to read */
MV_DEC_UD_DATA * ou_data_read_ptr, /* Out: Pointer to video data (byte) */
MV_DEC_UD_SIZE * ou_nbytes_read_ptr, /* Out: Nr of bytes read */
MV_DEC_UD_SIZE * ou_nbytes_remaining_ptr /* Out: Nr of bytes still unread */
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_DEC_user_data_process
PACKAGE: DEC
SCOPE: PLATEFORM
DESCRIPTION:
This function contain the User Data parsing action to be done on the
application thread.
The application thread must call the MV_DEC_user_data_process() routine
once for each notification of the MV_DEC_UD_PROCESSING_NEEDED_EVENT.
This routine will stock User Data in a specific buffer, which size has
been set by application during initialisation phase. This buffer can be read
via MV_DEC_get_user_data() API.
PRECONDITIONS:
To be inform to call User Data parsing routine, Application must enable
notification of MV_DEC_UD_PROCESSING_NEEDED_EVENT via API
MV_DEC_enable_notification().
POSTCONDITIONS:
None
NOTE:
CALLING SEQUENCE:
*/
extern MV_DEC_ERROR
MV_DEC_user_data_process(
void
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_DEC_install_notify
PACKAGE: DEC
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_DEC_enable_notification(), they can be enabled.
PRECONDITIONS:
None
POSTCONDITIONS:
after call to this function, calling to MV_DEC_enable_notification() or
MV_DEC_disable_notification() is possible
CALLING SEQUENCE:
*/
extern void
MV_DEC_install_notify(
void (*in_function_ptr)(MV_DEC_EVENT in_event)
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_DEC_enable_notification
PACKAGE: DEC
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_DEC_install_notify().
POSTCONDITIONS:
None
CALLING SEQUENCE:
*/
extern void
MV_DEC_enable_notification(
MV_DEC_EVENT in_events
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_DEC_disable_notification
PACKAGE: DEC
SCOPE: PLATEFORM
DESCRIPTION:
This function disables that a notification is given for the specified
events. The notification can be enabled via the MV_DEC_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_IDEC_install_notify().
POSTCONDITIONS:
None
CALLING SEQUENCE:
*/
extern void
MV_DEC_disable_notification(
MV_DEC_EVENT in_events
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_DEC_get_seq_info
PACKAGE: DEC
SCOPE: PLATFORM
DESCRIPTION:
Get informations about the sequence currently found in the video fifo,
and which will be decoded.
The sequence informations retrieved are :
- Sequence width in pixels
- Sequence height in pixels
- Sequence aspect ratio
- Sequence frame rate
Drivers notify MV_DEC_NEW_SEQ_FOUND_EVENT to application when
sequence informations are available.
NOTES:
MV_DEC_get_seq_info() can be call in an ISR.
PRECONDITIONS:
Before calling this routine, application must enable notification of
MV_DEC_NEW_SEQ_FOUND_EVENT via
MV_DEC_enable_notification(MV_DEC_NEW_SEQ_FOUND_EVENT) routine.
POSTCONDITIONS:
None
CALLING SEQUENCE:
*/
void
MV_DEC_get_seq_info(
MV_DEC_SEQ_INFO *ou_seq_info_ptr /* Out: structure with seq info */
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_DEC_get_picture_info
PACKAGE: DEC
SCOPE: PLATFORM
DESCRIPTION:
Get informations about the picture currently found in the video fifo, and
which will be decoded or not (depends of the picture).
The picture informations retrieved are :
- Sequence width in pixels
- Sequence height in pixels
- Window width in pixels
- Window height in pixels
- Centre hor offset in 1/16 of pixels
- Centre ver offset in 1/16 of pixels
- Temporal reference
- Coding_type on 8 bits
- Luma odd start addr (offset % beginning of SDRAM)
- Luma even start addr (offset % beginning of SDRAM)
- Chroma odd start addr (offset % beginning of SDRAM)
- Chroma even start addr (offset % beginning of SDRAM)
- Line memory storing alignement
- DTS of the picture (the real one, otherwise the HW emulated one) on 24 bits
- PTS of the picture (the real one, if it's present in the stream)
Drivers notify MV_DEC_EOPH_EVENT or MV_DEC_PIP_EOPH_EVENT (if PIP
trickmode is enabled) to application when picture informations
are available.
NOTES:
MV_DEC_get_picture_info() can be call in an ISR.
PRECONDITIONS:
Before calling this routine, application must enable notification of
MV_DEC_EOPH_EVENT or MV_DEC_PIP_EOPH_EVENT (when PIP enabled) via
MV_DEC_enable_notification(MV_DEC_EOPH_EVENT) or
MV_DEC_enable_notification(MV_DEC_PIP_EOPH_EVENT)
routine.
POSTCONDITIONS:
None
CALLING SEQUENCE:
*/
void
MV_DEC_get_picture_info(
MV_DEC_PICT_INFO *ou_pict_info_ptr /* Out: structure with pict info */
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_DEC_get_decoding_state
PACKAGE: DEC
SCOPE: PLATFORM
DESCRIPTION:
Retrieve the state of the video decoder
NOTES:
MV_DEC_get_picture_info() can be call in an ISR.
PRECONDITIONS:
None
POSTCONDITIONS:
None
CALLING SEQUENCE:
*/
void
MV_DEC_get_decoding_state(
MV_DEC_DECODING_STATE *ou_state_ptr /* Out: decoder state */
);
/*EMP=======================================================================*/
/*EEMP======================================================================*/
#ifdef __cplusplus
}
#endif
#endif /* End #ifndef _MV_DEC_INCLUDED_ */
/*==========================================================================*/
/* H I S T O R Y */
/*==========================================================================*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -