ext/ogg/gstoggdemux.c: Implement SEEKING query in its most basic form, so that we...
authorTim-Philipp Müller <tim@centricular.net>
Thu, 10 Aug 2006 08:56:22 +0000 (08:56 +0000)
committerTim-Philipp Müller <tim@centricular.net>
Thu, 10 Aug 2006 08:56:22 +0000 (08:56 +0000)
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_src_query):
Implement SEEKING query in its most basic form, so that we can
at least check if we're seekable or not (#350655).

ChangeLog
ext/ogg/gstoggdemux.c

index 03075b3603542d236af3c887c1b8fc187bfdc3e1..ef0c8de40a35610d87cb4b9614d0169c4364665c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2006-08-10  Tim-Philipp Müller  <tim at centricular dot net>
+
+       * ext/ogg/gstoggdemux.c: (gst_ogg_pad_src_query):
+         Implement SEEKING query in its most basic form, so that we can
+         at least check if we're seekable or not (#350655).
+
 2006-08-09  Tim-Philipp Müller  <tim at centricular dot net>
 
        * gst/typefind/gsttypefindfunctions.c: (mpeg2_sys_type_find):
index a76f5b4278672e927fbe6dbb91b980d0859a9f08..08daa1433ffb6e3e5191b0a4e79a921d5bdc2a94 100644 (file)
@@ -416,6 +416,20 @@ gst_ogg_pad_src_query (GstPad * pad, GstQuery * query)
       gst_query_set_duration (query, GST_FORMAT_TIME, ogg->total_time);
       break;
     }
+    case GST_QUERY_SEEKING:
+    {
+      GstFormat format;
+
+      gst_query_parse_seeking (query, &format, NULL, NULL, NULL);
+      if (format == GST_FORMAT_TIME) {
+        gst_query_set_seeking (query, GST_FORMAT_TIME, ogg->seekable,
+            0, ogg->total_time);
+      } else {
+        res = FALSE;
+      }
+      break;
+    }
+
     default:
       res = gst_pad_query_default (pad, query);
       break;