[snappy] engine: add is_stream_seakable() function
- From: Luis de Bethencourt <luisbg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [snappy] engine: add is_stream_seakable() function
- Date: Sat, 12 May 2012 12:59:14 +0000 (UTC)
commit f3e884481e6e48a13753211fbc12b676de4cbbe8
Author: Luis de Bethencourt <luis debethencourt com>
Date: Sat May 12 13:57:48 2012 +0100
engine: add is_stream_seakable() function
src/gst_engine.c | 22 +++++++++++++++++++++-
1 files changed, 21 insertions(+), 1 deletions(-)
---
diff --git a/src/gst_engine.c b/src/gst_engine.c
index a6cabe5..400bf3b 100644
--- a/src/gst_engine.c
+++ b/src/gst_engine.c
@@ -54,11 +54,12 @@ gboolean add_uri_to_history (gchar * uri);
gboolean add_uri_unfinished_playback (GstEngine * engine, gchar * uri,
gint64 position);
gboolean discover (GstEngine * engine, gchar * uri);
+gboolean is_stream_seakable (GstEngine * engine);
gint64 is_uri_unfinished_playback (GstEngine * engine, gchar * uri);
static void print_tag (const GstTagList * list, const gchar * tag,
gpointer unused);
void remove_uri_unfinished_playback (GstEngine * engine, gchar * uri);
-void stream_done (GstEngine * engine, UserInterface *ui);
+void stream_done (GstEngine * engine, UserInterface * ui);
static void write_key_file_to_file (GKeyFile * keyfile, const char *path);
/* -------------------- static functions --------------------- */
@@ -235,6 +236,25 @@ discover (GstEngine * engine, gchar * uri)
return TRUE;
}
+/* Query if the current stream is seakable */
+gboolean
+is_stream_seakable (GstEngine * engine)
+{
+ GstQuery *query;
+ gboolean res;
+
+ query = gst_query_new_seeking (GST_FORMAT_TIME);
+ if (gst_element_query (engine->player, query)) {
+ gst_query_parse_seeking (query, NULL, &res, NULL, NULL);
+ GST_DEBUG ("seeking query says the stream is %s seekable",
+ (res) ? "" : " not");
+ } else {
+ GST_DEBUG ("seeking query failed");
+ }
+
+ gst_query_unref (query);
+ return res;
+}
/* Check if URI is in the unfinished playback list */
gint64
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]