Check remaining time with Youtube Javascript API -



Check remaining time with Youtube Javascript API -

i embedding youtube video , using yt js api. user encouraged utilize chromecast view embedded video. however, when video cast button in player, player.getcurrenttime() , player.getplayerstate() become frozen, , onstatechange event doesn't fire.

is there can work around these issues, or problem youtube can fix? thanks!

my code:

var player; function onyoutubeiframeapiready() { player = new yt.player('ytplayer', { events:{ 'onstatechange': onplayerstatechange } }); } function onplayerstatechange(event){ console.log('player statechange: '+event.data); //this never runs when casting video. }

here's code

var tag = document.createelement('script'); tag.src = "https://www.youtube.com/iframe_api"; var firstscripttag = document.getelementsbytagname('script')[0]; firstscripttag.parentnode.insertbefore(tag, firstscripttag); var player; //execute player api code downloads function onyoutubeiframeapiready() { player = new yt.player('player', { height: '390', width: '640', videoid: 'm7lc1uvf-ve', events: { 'onready': onplayerready, 'onstatechange': onplayerstatechange } }); } // execute when onready event fires //starts video function onplayerready(event) { console.log("onplayerready"); console.log(event); var duration = event.target.getduration(); console.log("duration:" + duration); fillplaybackrates(); } // when onstatechange event fires function onplayerstatechange(event) { console.log("onplayerstatechange") console.log(event) if (event.data == yt.playerstate.playing) { console.log(yt); } } var pause = $("#pause"), start = $("#start"), mute = $("#mute"); pause.on('click', function () { player.pausevideo(); }); start.on('click', function () { player.playvideo(); }); var fillplaybackrates = function () { var playbackdropdownmenu = $(".dropdown-menu"); var playbackrates = player.getavailableplaybackrates(); console.log(playbackrates); (var = 0; < playbackrates.length; i++) { playbackdropdownmenu.append('<li role="presentation"><a role="menuitem" tabindex="-1" href="#">' + playbackrates[i] + '</a></li>'); } } var playbackratesbutton = $("#playback-rates"); $(document).on('click','.dropdown-menu > li > a', function () { var alternative = $(this).text(); playbackratesbutton.text(option); player.setplaybackrate(option); });

here's total gist: iframeyoutubeapi.html

you can have here: continuing chromecast: embedding youtube custom receivers

javascript youtube chromecast youtube-javascript-api

Comments

Popular posts from this blog

php - Android app custom user registration and login with cookie using facebook sdk -

django - Access session in user model .save() -

php - .htaccess Multiple Rewrite Rules / Prioritizing -