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);