This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TDA4VE-Q1: j721s2 sdk8.6 gstreamer decode got problem: num of output frames were less than input, but got eos

Part Number: TDA4VE-Q1

Hi,

    i'm working on j721s2 8.6 SDK(TDA4 VE), i used gstreamer api in sdk to decode h264 video, i guess the gstreamer is 1.0 version and glib is 2.0(i'm not very sure, but i saw them int the RTOS BSP SDK code), my pipeline was like:  "appsrc max-bytes=10000 ! h264parse ! v4l2h264dec capture-io-mode=dmabuf ! video/x-raw,format=(string)NV12 ! tiovxmemalloc pool-size=4 ! appsink",   i got a problem: the output NV12 frames were less than input h264 video frames but the "eos" signal was emitted. The call logic of gstreamer and glib api  i used as below:

(1)first in the decode_init(), register "new_sample" signal callback and "eos" callback

(2) parse the h264, and push each video frame data into "appsrc" element:

(3)after parsing the video(also means every frame data was push into appsrc),  then told gsteamer push-buffer operation was finished:

(4)waitting new-sample callback to get NV12

My problem: for example, i push 1511 frames into appsrc ,but i only get 1502 frames' new-sample callback

Please help, any suggestions are fine, thanks a lot!