diff --git a/player/youtube.coffee b/player/youtube.coffee index 7c94f8a9..fb3bc3b5 100644 --- a/player/youtube.coffee +++ b/player/youtube.coffee @@ -4,7 +4,6 @@ window.YouTubePlayer = class YouTubePlayer extends Player return new YouTubePlayer(data) @setMediaProperties(data) - @qualityRaceCondition = true @pauseSeekRaceCondition = false waitUntilDefined(window, 'YT', => @@ -34,9 +33,6 @@ window.YouTubePlayer = class YouTubePlayer extends Player @setMediaProperties(data) if @yt and @yt.ready @yt.loadVideoById(data.id, data.currentTime) - @qualityRaceCondition = true - if USEROPTS.default_quality - @setQuality(USEROPTS.default_quality) else console.error('WTF? YouTubePlayer::load() called but yt is not ready') @@ -45,15 +41,9 @@ window.YouTubePlayer = class YouTubePlayer extends Player @setVolume(VOLUME) onStateChange: (ev) -> - # For some reason setting the quality doesn't work - # until the first event has fired. - if @qualityRaceCondition - @qualityRaceCondition = false - if USEROPTS.default_quality - @setQuality(USEROPTS.default_quality) - - # Similar to above, if you pause the video before the first PLAYING - # event is emitted, weird things happen. + # If you pause the video before the first PLAYING + # event is emitted, weird things happen (or at least that was true + # whenever this comment was authored in 2015). if ev.data == YT.PlayerState.PLAYING and @pauseSeekRaceCondition @pause() @pauseSeekRaceCondition = false @@ -90,20 +80,7 @@ window.YouTubePlayer = class YouTubePlayer extends Player @yt.setVolume(volume * 100) setQuality: (quality) -> - if not @yt or not @yt.ready - return - - ytQuality = switch String(quality) - when '240' then 'small' - when '360' then 'medium' - when '480' then 'large' - when '720' then 'hd720' - when '1080' then 'hd1080' - when 'best' then 'highres' - else 'auto' - - if ytQuality != 'auto' - @yt.setPlaybackQuality(ytQuality) + # https://github.com/calzoneman/sync/issues/726 getTime: (cb) -> if @yt and @yt.ready