var head = document.getElementsByTagName("head")[0]; var streamURL = "https://admin.satellitetvfeed.net/CurrentStreamURL.m3u8?station=hmongusatv"; //Add the CSS var cssId = "vjscss"; // you could encode the css path itself to generate id.. if (!document.getElementById(cssId)) { var link = document.createElement("link"); link.id = cssId; link.rel = "stylesheet"; link.type = "text/css"; link.href = "//vjs.zencdn.net/7.10.2/video-js.min.css"; link.media = "all"; head.appendChild(link); } //Add videoJS vjsID = "vjsscript"; if (!document.getElementById(vjsID)) { var vjs = document.createElement("script"); vjs.id = vjsID; vjs.src = "//vjs.zencdn.net/7.10.2/video.min.js"; head.appendChild(vjs); } //Create the video tag let vid = document.createElement("video"); vid.id = "liveembedvid"; vid.className = "video-js vjs-default-skin"; vid.controls = true; vid.poster = "https://admin.satellitetvfeed.net/hmongusatv/liveposter"; let vidsrc = document.createElement("source"); vidsrc.src = streamURL; vidsrc.type = "application/x-mpegURL"; vid.appendChild(vidsrc); //Add video to page let cont = document.getElementById("liveembedcont"); cont.appendChild(vid); //When vjs is loaded, start vjs.addEventListener("load", () => { var player = videojs("liveembedvid"); player.preload(true); player.fluid(true); player.loop(true); setInterval(() => { fetch(streamURL, { method: "HEAD" }).then((res) => { if (res.url != player.tech().vhs.playlists.src) { fetch(res.url, { method: "HEAD" }).then((resp) => { if (resp.status != 404) { player.src(streamURL); player.play(); } }); } }); }, 10000); player.on("ended", () => { player.src(streamURL); player.play(); }); console.log("File loaded"); });