amlvideosink: CB1 add video pts property  [1/1]

PD#SWPL-177362

Problem:
add video pts property

Solution:
add video pts property

Verify:
AH212

Change-Id: I2ba991426e07958ee73e3f0fc5ec3c399717e1c2
Signed-off-by: kaiqiang.xiang <kaiqiang.xiang@amlogic.com>
diff --git a/src/gstamlvideosink.c b/src/gstamlvideosink.c
index 2ab5492..4e4be9b 100644
--- a/src/gstamlvideosink.c
+++ b/src/gstamlvideosink.c
@@ -108,6 +108,7 @@
     PROP_ENABLE_USER_RENDERING,
     PROP_IMMEDIATELY_RENDER,
     PROP_VIDEO_FRAME_DISPLAY_NUM,
+    PROP_VIDEO_PTS,
 #if GST_IMPORT_LGE_PROP
     PROP_LGE_RESOURCE_INFO,
     PROP_LGE_CURRENT_PTS,
@@ -339,6 +340,12 @@
                              0, G_MAXINT32, 0, G_PARAM_READABLE));
 
     g_object_class_install_property(
+        G_OBJECT_CLASS (klass), PROP_VIDEO_PTS,
+           g_param_spec_int64 ("video_pts", "video PTS",
+               "current video PTS value",
+               G_MININT64, G_MAXINT64, 0, G_PARAM_READABLE));
+
+    g_object_class_install_property(
         G_OBJECT_CLASS(klass), PROP_WINDOW_SET,
         g_param_spec_string("rectangle", "rectangle",
                             "Window Set Format: x,y,width,height",
@@ -528,6 +535,14 @@
         g_value_set_int(value, sink->droped);
         GST_OBJECT_UNLOCK(sink);
         break;
+    case PROP_VIDEO_PTS:
+    {
+        GST_OBJECT_LOCK(sink);
+        gint64 currentPTS = sink->last_displayed_buf_pts;
+        GST_OBJECT_UNLOCK(sink);
+        g_value_set_int64(value, currentPTS);
+        break;
+    }
     case PROP_VIDEO_FRAME_DISPLAY_NUM:
         GST_OBJECT_LOCK(sink);
         GST_DEBUG_OBJECT(sink, "displayed frame num: %d", sink->queued);