float MediaPlayerPrivateGStreamer::playbackPosition() const
{
+#if ENABLE(TIZEN_GSTREAMER_VIDEO)
+ static float cachedTime;
+#endif
+
if (m_isEndReached) {
// Position queries on a null pipeline return 0. If we're at
// the end of the stream the pipeline is null but we want to
if (!gst_element_query(m_playBin.get(), query)) {
LOG_MEDIA_MESSAGE("Position query failed...");
gst_query_unref(query);
+#if ENABLE(TIZEN_GSTREAMER_VIDEO)
+ return cachedTime;
+#else
return ret;
+#endif
}
gint64 position;
if (position != static_cast<gint64>(GST_CLOCK_TIME_NONE))
ret = static_cast<double>(position) / GST_SECOND;
+#if ENABLE(TIZEN_GSTREAMER_VIDEO)
+ cachedTime = ret;
+#endif
LOG_MEDIA_MESSAGE("Position %" GST_TIME_FORMAT, GST_TIME_ARGS(position));
gst_query_unref(query);