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;