Lines Matching refs:manifest
249 _gst_mss_stream_init (GstMssManifest * manifest, GstMssStream * stream, in _gst_mss_stream_init() argument
270 manifest->is_live ? "yes" : "no", manifest->look_ahead_fragment_count); in _gst_mss_stream_init()
271 stream->has_live_fragments = manifest->is_live in _gst_mss_stream_init()
272 && manifest->look_ahead_fragment_count; in _gst_mss_stream_init()
291 if (manifest->is_live) { in _gst_mss_stream_init()
321 _gst_mss_parse_protection (GstMssManifest * manifest, in _gst_mss_parse_protection() argument
346 manifest->protection_system_id = system_id; in _gst_mss_parse_protection()
347 manifest->protection_data = (gchar *) xmlNodeGetContent (nodeiter); in _gst_mss_parse_protection()
357 GstMssManifest *manifest; in gst_mss_manifest_new() local
368 manifest = g_malloc0 (sizeof (GstMssManifest)); in gst_mss_manifest_new()
370 manifest->xml = xmlReadMemory ((const gchar *) mapinfo.data, in gst_mss_manifest_new()
372 root = manifest->xmlrootnode = xmlDocGetRootElement (manifest->xml); in gst_mss_manifest_new()
375 gst_mss_manifest_free (manifest); in gst_mss_manifest_new()
381 manifest->is_live = g_ascii_strcasecmp (live_str, "true") == 0; in gst_mss_manifest_new()
386 if (!manifest->is_live) { in gst_mss_manifest_new()
387 manifest->dvr_window = 0; in gst_mss_manifest_new()
388 manifest->look_ahead_fragment_count = 0; in gst_mss_manifest_new()
394 manifest->dvr_window = g_ascii_strtoull (dvr_window_str, NULL, 10); in gst_mss_manifest_new()
396 if (manifest->dvr_window <= 0) { in gst_mss_manifest_new()
397 manifest->dvr_window = 0; in gst_mss_manifest_new()
404 manifest->look_ahead_fragment_count = in gst_mss_manifest_new()
407 if (manifest->look_ahead_fragment_count <= 0) { in gst_mss_manifest_new()
408 manifest->look_ahead_fragment_count = 0; in gst_mss_manifest_new()
418 manifest->streams = g_slist_append (manifest->streams, stream); in gst_mss_manifest_new()
419 _gst_mss_stream_init (manifest, stream, nodeiter); in gst_mss_manifest_new()
424 _gst_mss_parse_protection (manifest, nodeiter); in gst_mss_manifest_new()
430 return manifest; in gst_mss_manifest_new()
453 gst_mss_manifest_free (GstMssManifest * manifest) in gst_mss_manifest_free() argument
455 g_return_if_fail (manifest != NULL); in gst_mss_manifest_free()
457 g_slist_free_full (manifest->streams, (GDestroyNotify) gst_mss_stream_free); in gst_mss_manifest_free()
459 if (manifest->protection_system_id != NULL) in gst_mss_manifest_free()
460 g_string_free (manifest->protection_system_id, TRUE); in gst_mss_manifest_free()
461 xmlFree (manifest->protection_data); in gst_mss_manifest_free()
463 xmlFreeDoc (manifest->xml); in gst_mss_manifest_free()
464 g_free (manifest); in gst_mss_manifest_free()
468 gst_mss_manifest_get_protection_system_id (GstMssManifest * manifest) in gst_mss_manifest_get_protection_system_id() argument
470 if (manifest->protection_system_id != NULL) in gst_mss_manifest_get_protection_system_id()
471 return manifest->protection_system_id->str; in gst_mss_manifest_get_protection_system_id()
476 gst_mss_manifest_get_protection_data (GstMssManifest * manifest) in gst_mss_manifest_get_protection_data() argument
478 return manifest->protection_data; in gst_mss_manifest_get_protection_data()
482 gst_mss_manifest_get_streams (GstMssManifest * manifest) in gst_mss_manifest_get_streams() argument
484 return manifest->streams; in gst_mss_manifest_get_streams()
938 gst_mss_manifest_get_timescale (GstMssManifest * manifest) in gst_mss_manifest_get_timescale() argument
944 (gchar *) xmlGetProp (manifest->xmlrootnode, in gst_mss_manifest_get_timescale()
954 gst_mss_manifest_get_duration (GstMssManifest * manifest) in gst_mss_manifest_get_duration() argument
961 (gchar *) xmlGetProp (manifest->xmlrootnode, in gst_mss_manifest_get_duration()
972 for (iter = manifest->streams; iter; iter = g_slist_next (iter)) { in gst_mss_manifest_get_duration()
998 gst_mss_manifest_get_gst_duration (GstMssManifest * manifest) in gst_mss_manifest_get_gst_duration() argument
1004 duration = gst_mss_manifest_get_duration (manifest); in gst_mss_manifest_get_gst_duration()
1005 timescale = gst_mss_manifest_get_timescale (manifest); in gst_mss_manifest_get_gst_duration()
1016 gst_mss_manifest_get_min_fragment_duration (GstMssManifest * manifest) in gst_mss_manifest_get_min_fragment_duration() argument
1022 for (iter = manifest->streams; iter; iter = g_slist_next (iter)) { in gst_mss_manifest_get_min_fragment_duration()
1220 gst_mss_manifest_seek (GstMssManifest * manifest, gboolean forward, in gst_mss_manifest_seek() argument
1225 for (iter = manifest->streams; iter; iter = g_slist_next (iter)) { in gst_mss_manifest_seek()
1311 gst_mss_manifest_get_current_bitrate (GstMssManifest * manifest) in gst_mss_manifest_get_current_bitrate() argument
1316 for (iter = gst_mss_manifest_get_streams (manifest); iter; in gst_mss_manifest_get_current_bitrate()
1330 gst_mss_manifest_is_live (GstMssManifest * manifest) in gst_mss_manifest_is_live() argument
1332 return manifest->is_live; in gst_mss_manifest_is_live()
1369 gst_mss_manifest_reload_fragments_from_xml (GstMssManifest * manifest, in gst_mss_manifest_reload_fragments_from_xml() argument
1373 GSList *streams = manifest->streams; in gst_mss_manifest_reload_fragments_from_xml()
1388 gst_mss_manifest_reload_fragments (GstMssManifest * manifest, GstBuffer * data) in gst_mss_manifest_reload_fragments() argument
1400 gst_mss_manifest_reload_fragments_from_xml (manifest, root); in gst_mss_manifest_reload_fragments()
1469 gst_mss_manifest_change_bitrate (GstMssManifest * manifest, guint64 bitrate) in gst_mss_manifest_change_bitrate() argument
1483 for (iter = gst_mss_manifest_get_streams (manifest); iter; in gst_mss_manifest_change_bitrate()
1535 gst_mss_manifest_get_dvr_window_length_clock_time (GstMssManifest * manifest) in gst_mss_manifest_get_dvr_window_length_clock_time() argument
1540 if (manifest->dvr_window == 0) in gst_mss_manifest_get_dvr_window_length_clock_time()
1543 timescale = gst_mss_manifest_get_timescale (manifest); in gst_mss_manifest_get_dvr_window_length_clock_time()
1544 return (GstClockTime) gst_util_uint64_scale_round (manifest->dvr_window, in gst_mss_manifest_get_dvr_window_length_clock_time()
1572 gst_mss_manifest_get_live_seek_range (GstMssManifest * manifest, gint64 * start, in gst_mss_manifest_get_live_seek_range() argument
1578 for (iter = manifest->streams; iter; iter = g_slist_next (iter)) { in gst_mss_manifest_get_live_seek_range()
1588 if (ret && gst_mss_manifest_is_live (manifest)) { in gst_mss_manifest_get_live_seek_range()
1590 gst_mss_manifest_get_dvr_window_length_clock_time (manifest); in gst_mss_manifest_get_live_seek_range()