amlv4l2dec: add a new interface for getting and sending cc data [1/1]

PD#SH-19658

Problem:
add a new interface for getting and sending cc data

Solution:
add the process for getting and sending cc data

Verify:
yocto-4.0-smarthome

Signed-off-by: zengliang.li <zengliang.li@amlogic.com>
Change-Id: If7a0d23e872a95b99df995e276a0204672577066
diff --git a/src/gstamlv4l2object.c b/src/gstamlv4l2object.c
index b31af56..c1fad8b 100644
--- a/src/gstamlv4l2object.c
+++ b/src/gstamlv4l2object.c
@@ -413,11 +413,17 @@
                                                          "TRUE for stream mode, FALSE for frame mode",
                                                          FALSE,
                                                          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
     g_object_class_install_property(gobject_class, PROP_LOW_LATENCY_MODE,
                                     g_param_spec_boolean("low-latency-mode", "set low latency mode",
                                                          "enable is TURE, disable is FALSE, default is disable",
                                                          FALSE,
                                                          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+   g_object_class_install_property (gobject_class, PROP_CC_DATA,
+                                    g_param_spec_boolean ("enable-cc-data",
+                                                          "enable get cc data",
+                                                          "0: disable; 1: enable", FALSE, G_PARAM_READWRITE));
 }
 
 /* Support for 32bit off_t, this wrapper is casting off_t to gint64 */
@@ -487,6 +493,7 @@
     v4l2object->keep_aspect = TRUE;
     v4l2object->stream_mode = FALSE;
     v4l2object->have_set_par = FALSE;
+    v4l2object->enable_cc_data = FALSE;
 
     v4l2object->n_v4l2_planes = 0;
 
@@ -692,6 +699,10 @@
         v4l2object->low_latency_mode = g_value_get_boolean(value);
         GST_DEBUG_OBJECT(v4l2object, "set low latency: %d",v4l2object->low_latency_mode);
         break;
+    case PROP_CC_DATA:
+        v4l2object->enable_cc_data = g_value_get_boolean(value);
+        GST_DEBUG_OBJECT(v4l2object, "enable cc data: %d",v4l2object->enable_cc_data);
+        break;
     default:
         return FALSE;
         break;
@@ -796,6 +807,9 @@
     case PROP_STREAM_MODE:
         g_value_set_boolean(value, v4l2object->stream_mode);
         break;
+    case PROP_CC_DATA:
+        g_value_set_boolean(value, v4l2object->enable_cc_data);
+        break;
     default:
         return FALSE;
         break;