amlv4l2dec: CB2 statistics of decoded error frames [1/1]

PD#SWPL-175658

Problem:
statistics of decoded error frames

Solution:
add property of decoding-error-frames
to statistics of decoded error frames

Verify:
ap222

Change-Id: Ibdb01eba31308f87b145d25003beabe06a44613d
Signed-off-by: fei.deng <fei.deng@amlogic.com>
diff --git a/src/gstamlv4l2videodec.c b/src/gstamlv4l2videodec.c
index b528334..1df101c 100644
--- a/src/gstamlv4l2videodec.c
+++ b/src/gstamlv4l2videodec.c
@@ -132,19 +132,7 @@
     switch (prop_id)
     {
     case PROP_CAPTURE_IO_MODE:
-        if (!gst_aml_v4l2_object_set_property_helper(self->v4l2capture,
-                                                     prop_id, value, pspec))
-        {
-            G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
-        }
-        break;
     case PROP_DUMP_FRAME_LOCATION:
-        if (!gst_aml_v4l2_object_set_property_helper(self->v4l2capture,
-                                                     prop_id, value, pspec))
-        {
-            G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
-        }
-        break;
     case PROP_CC_DATA:
         if (!gst_aml_v4l2_object_set_property_helper(self->v4l2capture,
                                                      prop_id, value, pspec))
@@ -213,13 +201,8 @@
     switch (prop_id)
     {
     case PROP_CAPTURE_IO_MODE:
-        if (!gst_aml_v4l2_object_get_property_helper(self->v4l2capture,
-                                                     prop_id, value, pspec))
-        {
-            G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
-        }
-        break;
     case PROP_CC_DATA:
+    case PROP_DECODING_ERROR_FRAMES:
         if (!gst_aml_v4l2_object_get_property_helper(self->v4l2capture,
                                                      prop_id, value, pspec))
         {
@@ -1228,6 +1211,11 @@
             g_mutex_unlock (&self->res_chg_lock);
             return;
         }
+        //decoding error happened
+        if (ret == GST_AML_V4L2_FLOW_DECODING_ERROR)
+        {
+            continue;
+        }
 
         if (ret != GST_FLOW_OK) {
             GST_WARNING_OBJECT(decoder, "gst_buffer_pool_acquire_buffer goto beach ret:%d",ret);
@@ -1246,7 +1234,9 @@
             return;
         }
 
-    } while ((ret == GST_AML_V4L2_FLOW_CORRUPTED_BUFFER) || (ret == GST_AML_V4L2_FLOW_CC_DATA));
+    } while ((ret == GST_AML_V4L2_FLOW_CORRUPTED_BUFFER) ||
+        (ret == GST_AML_V4L2_FLOW_CC_DATA) ||
+        (ret == GST_AML_V4L2_FLOW_DECODING_ERROR));
 
     if (ret != GST_FLOW_OK)
         goto beach;