Freescale / libimxvpuapi

i.MX VPU API Library
GNU Lesser General Public License v2.1
88 stars 54 forks source link

Failed to decode H264 frames received through webrtcbin #55

Closed ghensto closed 1 year ago

ghensto commented 1 year ago

The remote video stream received using webrtcbin from GStreamer is only decoded for couple of seconds before the following errors is shown and the whole app crashes.

The Gstreamer pipeline was created in Qt and the decoded stream was being displayed in QML using qmlglsink

The test was conducted on iMX 6 D/L.

0:01:27.712276376  1837 0x68ad2890 ERROR              imxvpuapi imxvpuapi2_imx6_coda_ipu.c:126:imx_vpu_api_imx6_coda_detile_and_copy_frame_with_ipu_vdoa: queuing IPU task failed: Invalid argument (22)
0:01:27.713205111  1837 0x68ad2890 ERROR              imxvpuapi imxvpuapi2_imx6_coda.c:2518:imx_vpu_api_dec_get_decoded_frame: could not detile and copy decoded frame pixels
0:01:27.714210184  1837 0x68ad2890 ERROR              imxvpudec gstimxvpudec.c:1501:gst_imx_vpu_dec_decode_queued_frames:<imxvpudech264-0> could not retrieve decoded frame: error
0:01:27.723005494  1837 0x68ad2890 ERROR              imxvpuapi imxvpuapi2_imx6_coda_ipu.c:126:imx_vpu_api_imx6_coda_detile_and_copy_frame_with_ipu_vdoa: queuing IPU task failed: Invalid argument (22)
0:01:27.734430329  1837 0x68ad2890 ERROR              imxvpuapi imxvpuapi2_imx6_coda.c:2518:imx_vpu_api_dec_get_decoded_frame: could not detile and copy decoded frame pixels
0:01:27.735342063  1837 0x68ad2890 ERROR              imxvpudec gstimxvpudec.c:1501:gst_imx_vpu_dec_decode_queued_frames:<imxvpudech264-0> could not retrieve decoded frame: error
0:01:27.742891948  1837 0x68ad2890 ERROR              imxvpuapi imxvpuapi2_imx6_coda_ipu.c:126:imx_vpu_api_imx6_coda_detile_and_copy_frame_with_ipu_vdoa: queuing IPU task failed: Invalid argument (22)
0:01:27.743848685  1837 0x68ad2890 ERROR              imxvpuapi imxvpuapi2_imx6_coda.c:2518:imx_vpu_api_dec_get_decoded_frame: could not detile and copy decoded frame pixels
0:01:27.752438313  1837 0x68ad2890 ERROR              imxvpudec gstimxvpudec.c:1501:gst_imx_vpu_dec_decode_queued_frames:<imxvpudech264-0> could not retrieve decoded frame: error
0:01:27.758708105  1837 0x68ad2890 ERROR              imxvpuapi imxvpuapi2_imx6_coda_ipu.c:126:imx_vpu_api_imx6_coda_detile_and_copy_frame_with_ipu_vdoa: queuing IPU task failed: Invalid argument (22)
0:01:27.759706511  1837 0x68ad2890 ERROR              imxvpuapi imxvpuapi2_imx6_coda.c:2518:imx_vpu_api_dec_get_decoded_frame: could not detile and copy decoded frame pixels
0:01:27.760484235  1837 0x68ad2890 ERROR              imxvpudec gstimxvpudec.c:1501:gst_imx_vpu_dec_decode_queued_frames:<imxvpudech264-0> could not retrieve decoded frame: error
0:01:27.764672207  1837 0x68ad2890 ERROR              imxvpuapi imxvpuapi2_imx6_coda_ipu.c:126:imx_vpu_api_imx6_coda_detile_and_copy_frame_with_ipu_vdoa: queuing IPU task failed: Invalid argument (22)
0:01:27.765679948  1837 0x68ad2890 ERROR              imxvpuapi imxvpuapi2_imx6_coda.c:2518:imx_vpu_api_dec_get_decoded_frame: could not detile and copy decoded frame pixels
0:01:27.767551085  1837 0x68ad2890 ERROR              imxvpudec gstimxvpudec.c:1501:gst_imx_vpu_dec_decode_queued_frames:<imxvpudech264-0> could not retrieve decoded frame: error
0:01:27.785961764  1837 0x68ad2890 ERROR              imxvpuapi imxvpuapi2_imx6_coda_ipu.c:126:imx_vpu_api_imx6_coda_detile_and_copy_frame_with_ipu_vdoa: queuing IPU task failed: Invalid argument (22)
0:01:27.787758896  1837 0x68ad2890 ERROR              imxvpuapi imxvpuapi2_imx6_coda.c:2518:imx_vpu_api_dec_get_decoded_frame: could not detile and copy decoded frame pixels
0:01:27.788742967  1837 0x68ad2890 ERROR              imxvpudec gstimxvpudec.c:1501:gst_imx_vpu_dec_decode_queued_frames:<imxvpudech264-0> could not retrieve decoded frame: error
0:01:27.794574060  1837 0x68ad2890 ERROR              imxvpuapi imxvpuapi2_imx6_coda_ipu.c:126:imx_vpu_api_imx6_coda_detile_and_copy_frame_with_ipu_vdoa: queuing IPU task failed: Invalid argument (22)
0:01:27.795523463  1837 0x68ad2890 ERROR              imxvpuapi imxvpuapi2_imx6_coda.c:2518:imx_vpu_api_dec_get_decoded_frame: could not detile and copy decoded frame pixels
0:01:27.796886896  1837 0x68ad2890 ERROR              imxvpudec gstimxvpudec.c:1501:gst_imx_vpu_dec_decode_queued_frames:<imxvpudech264-0> could not retrieve decoded frame: error
0:01:27.802210619  1837 0x68ad2890 ERROR              imxvpuapi imxvpuapi2_imx6_coda.c:2346:imx_vpu_api_dec_decode: internal error; not enough output framebuffers were available even though enough were added prior to decoding
0:01:27.803201358  1837 0x68ad2890 ERROR              imxvpudec gstimxvpudec.c:970:gst_imx_vpu_dec_decode_queued_frames:<imxvpudech264-0> decoding frames failed: error
0:01:27.843677318  1837 0x60f2c4e8 WARN                 basesrc gstbasesrc.c:3127:gst_base_src_loop:<nicesrc0> error: Internal data stream error.
0:01:27.843810327  1837 0x60f2c4e8 WARN                 basesrc gstbasesrc.c:3127:gst_base_src_loop:<nicesrc0> error: streaming stopped, reason error (-5)
0:01:27.844632054  1837 0x60f2c4e8 WARN                   queue gstqueue.c:992:gst_queue_handle_sink_event:<queue0> error: Internal data stream error.
0:01:27.845280768  1837 0x60f2c4e8 WARN                   queue gstqueue.c:992:gst_queue_handle_sink_event:<queue0> error: streaming stopped, reason error (-5)
dv1 commented 1 year ago

This looks like the VDOA issue https://github.com/Freescale/meta-freescale/issues/1337 . That one has been fixed. Did you apply the associated fix?

dv1 commented 1 year ago

Closing this due to inactivity. Please test if the VDOA fix addresses this. If not, reopen.