<?php get_header(); ?> <style> .ofhr-text-center { text-align: center; } </style> <?php // set this to 0 if there is something not working with the stream player code // (people will still have the Streaming page with all the links to the streams) if (0) { ?> <script> var g_streams_info = [ { "hall": <?php echo json_encode(pll__('BULGARIA_HALL')); ?>, "default": true, "qualities": [ { "label": <?php echo json_encode(pll__('LOW_QUALITY'));?>, "iframe_url": "http://stream.openfest.org/bulgaria-low.html", "rtmp_url": "rtmp://stream.openfest.org/st/bulgaria-low", "hls_url": "http://stream.openfest.org/hls/bulgaria-low.m3u8", }, { "label": <?php echo json_encode(pll__('NORMAL_QUALITY'));?>, "default": true, "iframe_url": "http://stream.openfest.org/bulgaria.html", "rtmp_url": "rtmp://stream.openfest.org/st/bulgaria", "hls_url": "http://stream.openfest.org/hls/bulgaria.m3u8", }, { "label": <?php echo json_encode(pll__('HIGH_QUALITY'));?>, "iframe_url": "http://stream.openfest.org/bulgaria-hd.html", "rtmp_url": "rtmp://stream.openfest.org/st/bulgaria-hd", "hls_url": "http://stream.openfest.org/hls/bulgaria-hd.m3u8", }, ] }, { "hall": <?php echo json_encode(pll__('CHAMBER_HALL'));?>, "qualities": [ { "label": <?php echo json_encode(pll__('LOW_QUALITY'));?>, "iframe_url": "http://stream.openfest.org/chamber-low.html", "rtmp_url": "rtmp://stream.openfest.org/st/chamber-low", "hls_url": "http://stream.openfest.org/hls/chamber-low.m3u8", }, { "label": <?php echo json_encode(pll__('NORMAL_QUALITY'));?>, "default": true, "iframe_url": "http://stream.openfest.org/chamber.html", "rtmp_url": "rtmp://stream.openfest.org/st/chamber", "hls_url": "http://stream.openfest.org/hls/chamber.m3u8", }, ] }, { "hall": <?php echo json_encode(pll__('MUSIC_HALL'));?>, "qualities": [ { "label": <?php echo json_encode(pll__('LOW_QUALITY'));?>, "iframe_url": "http://stream.openfest.org/music-low.html", "rtmp_url": "rtmp://stream.openfest.org/st/music-low", "hls_url": "http://stream.openfest.org/hls/music-low.m3u8", }, { "label": <?php echo json_encode(pll__('NORMAL_QUALITY'));?>, "default": true, "iframe_url": "http://stream.openfest.org/music.html", "rtmp_url": "rtmp://stream.openfest.org/st/music", "hls_url": "http://stream.openfest.org/hls/music.m3u8", } ] } ]; </script> <section class="content"> <h3>Streaming | <small><a href="streaming"><?php echo htmlentities(pll__('ALL_STREAMS'));?></a></small></h3> <h3 id="of-stream-halls-container" class="ofhr-text-center"> </h3> <p id="of-stream-iframe-container"> <iframe id="of-stream-iframe" style="border: none; height: 395px; width: 100%; overflow: none;" allowfullscreen> <p>Браузърът Ви не поддържа iframes</p> </iframe> </p> <p class="ofhr-text-center"> <a id="of-stream-rtmp-link" href="#">RTMP</a> | <a id="of-stream-hls-link" href="#">HLS</a> </p> <p id="of-stream-qualities-container" class="ofhr-text-center"> </p> <div class="separator"></div> <script> function of_hall_link_on_click(event) { event.preventDefault(); var hall_node = event.target; var stream_id = hall_node.getAttribute("data-stream-id"); of_update_player(stream_id); } function of_quality_link_on_click(event) { event.preventDefault(); var quality_node = event.target; var stream_id = quality_node.getAttribute("data-stream-id"); var quality_id = quality_node.getAttribute("data-quality-id"); of_update_player(stream_id, quality_id); } function of_update_player(desired_stream_id, desired_quality_id) { var default_stream_id = -1; // if there is a provided stream id use it (otherwise use the one // with default property set to true) if (desired_stream_id !== undefined) { default_stream_id = desired_stream_id; } // clear halls list var halls_container = document.getElementById("of-stream-halls-container"); while (halls_container.lastChild) { halls_container.removeChild(halls_container.lastChild); } // build halls list var stream_id = 0; for (stream_id = 0; stream_id < g_streams_info.length; stream_id++) { var stream = g_streams_info[stream_id]; // if we have to find the default stream, find it and set it as default if (stream["default"] && (default_stream_id == -1)) { default_stream_id = stream_id; } // append the hall name to the halls list container var small = document.createElement("small"); var text = document.createTextNode(stream["hall"]); // if this is not the default stream id, make links and attach listeners // so that you can switch between halls if (stream_id != default_stream_id) { var anchor = document.createElement("a"); anchor.setAttribute("href", "#"); anchor.setAttribute("data-stream-id", stream_id); anchor.appendChild(text); if (anchor.addEventListener) { // For all major browsers, except IE 8 and earlier anchor.addEventListener("click", of_hall_link_on_click); } else if (x.attachEvent) { // For IE 8 and earlier versions anchor.attachEvent("onclick", of_hall_link_on_click); } small.appendChild(anchor); } else { small.appendChild(text); } halls_container.appendChild(small); // insert separator if not the last element if (stream_id != (g_streams_info.length - 1)) { var separator = document.createTextNode(" | "); halls_container.appendChild(separator); } } var stream = g_streams_info[default_stream_id]; var qualities = stream["qualities"]; var default_quality_id = -1; // if there is a provided quality id use it (otherwise use the one // with default property set to true) if (desired_quality_id !== undefined) { default_quality_id = desired_quality_id; } // clear the qualities list var qualities_container = document.getElementById("of-stream-qualities-container"); while (qualities_container.lastChild) { qualities_container.removeChild(qualities_container.lastChild); } // build the qualities list var quality_id = 0; for (quality_id = 0; quality_id < qualities.length; quality_id++) { var quality = qualities[quality_id]; // if we have to find the default quality, find it and set it as default if (quality["default"] && (default_quality_id == -1)) { default_quality_id = quality_id; } var text = document.createTextNode(quality["label"]); // if this is not the default quality, make links and attach listeners // so that you can switch between qualities if (quality_id != default_quality_id) { var anchor = document.createElement("a"); anchor.setAttribute("href", "#"); anchor.setAttribute("data-stream-id", default_stream_id); anchor.setAttribute("data-quality-id", quality_id); anchor.appendChild(text); if (anchor.addEventListener) { // For all major browsers, except IE 8 and earlier anchor.addEventListener("click", of_quality_link_on_click); } else if (x.attachEvent) { // For IE 8 and earlier versions anchor.attachEvent("onclick", of_quality_link_on_click); } qualities_container.appendChild(anchor); } else { qualities_container.appendChild(text); } // append separator if this is not the last element if (quality_id != qualities.length - 1) { var separator = document.createTextNode(" | "); qualities_container.appendChild(separator); } } var default_quality = qualities[default_quality_id]; // update the RTMP link var rtmp = document.getElementById("of-stream-rtmp-link"); rtmp.setAttribute("href", default_quality["rtmp_url"]); // update the HLS link var hls = document.getElementById("of-stream-hls-link"); hls.setAttribute("href", default_quality["hls_url"]); // update the iframe var iframe = document.getElementById("of-stream-iframe"); iframe.setAttribute("src", default_quality["iframe_url"]); } // updates the player with the default one in g_streams_info of_update_player(); </script> </section> <?php } ?> <section class="content"> <?php echo do_shortcode( '[sh-latest-posts cat="news" label="'.pll__('Новини').'"]' ); ?> <div class="separator"></div> <div class="col-right sponsors sponsors-frontpage"> <?php echo do_shortcode( '[sponsors]' ); ?> <?php echo do_shortcode( '[partners]' ); ?> </div> <div class="separator"></div> </section> <?php echo do_shortcode( '[transport]' ); ?> <?php get_footer(); ?>