VDEC Exception Due to the Input of Multi-Frame Stream as a Single-Frame Stream
Symptom
Frame loss occurs during decoding, and an error log is generated.
A log example on the device is as follows:
User send more than one stream date, but only send one outbuf
In EP mode, after running the decoding process, log in to the host and run the msnpureport -a command in the directory on which you have the read, write, and execute permissions to export the log information of the device.
In RC mode, log in to the board environment and run the cat /proc/umap/vdec command to export decoding information.
Possible Cause
VDEC supports only the sending streams by frame. Therefore, when calling hi_mpi_vdec_send_stream, send a single-frame stream data and the corresponding output buffer each time. If multi-frames stream data is sent at a time (multiple frames of stream data in the input stream buffer), VDEC discards all frames except the first frame and prints an error log.
Solution
Check the code logic. Check whether multiple frames are read at a time in the input stream buffer (stream->addr) when hi_mpi_vdec_send_stream is called. If yes, modify the code logic.