summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Schleef <david.schleef@rd.io>2013-11-04 16:51:34 -0800
committerDavid Schleef <david.schleef@rd.io>2013-11-07 21:16:45 -0800
commited6a39b243de70eaf634afcf564246c0da5ed020 (patch)
treefb69f3963a7894447a6b6c3a4a61a0f288d9dbdf
parent2234480233eccf1b110232b1c8f061dfbc7b32e7 (diff)
vod: handle content_id in vod-player url
-rw-r--r--gst-streaming-server/gss-vod.c20
1 files changed, 17 insertions, 3 deletions
diff --git a/gst-streaming-server/gss-vod.c b/gst-streaming-server/gss-vod.c
index 1a11a3e..5a33a60 100644
--- a/gst-streaming-server/gss-vod.c
+++ b/gst-streaming-server/gss-vod.c
@@ -25,6 +25,7 @@
#include "gss-html.h"
#include "gss-adaptive.h"
#include "gss-playready.h"
+#include "gss-soup.h"
enum
@@ -420,12 +421,23 @@ gss_vod_player_get_resource (GssTransaction * t)
{
//GssVod *vod = GSS_VOD (t->resource->priv);
GString *s = g_string_new ("");
- const char *url;
+ char *url;
+ char *base_url;
+ const char *content_id;
t->s = s;
- url =
- "http://localhost:8080/vod/elephantsdream/0/clear/isoff-ondemand/manifest.mpd";
+ content_id = NULL;
+ if (t->query) {
+ content_id = g_hash_table_lookup (t->query, "content_id");
+ }
+ if (content_id == NULL) {
+ content_id = "elephantsdream";
+ }
+ base_url = gss_soup_get_base_url_http (t->server, t->msg);
+ url = g_strdup_printf ("%s/vod/%s/0/clear/isoff-ondemand/manifest.mpd",
+ base_url, content_id);
+ g_free (base_url);
gss_html_header (t);
@@ -460,4 +472,6 @@ gss_vod_player_get_resource (GssTransaction * t)
GSS_A ("\n");
gss_html_footer (t);
+
+ g_free (url);
}