Start working on player rewrite
This commit is contained in:
parent
dd48da19c0
commit
f0c75211fb
5 changed files with 178 additions and 0 deletions
37
player/base.coffee
Normal file
37
player/base.coffee
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
class Player
|
||||
constructor: (data) ->
|
||||
@load(data)
|
||||
@paused = false
|
||||
|
||||
load: (data) ->
|
||||
@mediaId = data.id
|
||||
@mediaType = data.type
|
||||
|
||||
play: ->
|
||||
@paused = false
|
||||
|
||||
pause: ->
|
||||
@paused = true
|
||||
|
||||
seekTo: (time) ->
|
||||
|
||||
setVolume: (volume) ->
|
||||
|
||||
getTime: (cb) ->
|
||||
cb(0)
|
||||
|
||||
isPaused: (cb) ->
|
||||
cb(@paused)
|
||||
|
||||
getVolume: (cb) ->
|
||||
cb(VOLUME)
|
||||
|
||||
window.Player = Player
|
||||
|
||||
window.removeOld = (replace) ->
|
||||
$('#sc_volume').remove()
|
||||
replace ?= $('<div/>').addClass('embed-responsive-item')
|
||||
old = $('#ytapiplayer')
|
||||
replace.insertBefore(old)
|
||||
old.remove()
|
||||
replace.attr('id', 'ytapiplayer')
|
||||
6
player/videojs.coffee
Normal file
6
player/videojs.coffee
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
class VideoJSPlayer extends Player
|
||||
constructor: (data) ->
|
||||
|
||||
load: (data) ->
|
||||
video = $('<video/>')
|
||||
.addClass('video-js vjs-default-skin embed-responsive-item')
|
||||
27
player/youtube.coffee
Normal file
27
player/youtube.coffee
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
class YouTubePlayer extends Player
|
||||
constructor: (data) ->
|
||||
super()
|
||||
waitUntilDefined(window, 'YT', =>
|
||||
removeOld()
|
||||
|
||||
wmode = if USEROPTS.wmode_transparent then 'transparent' else 'opaque'
|
||||
@yt = new YT.Player('ytapiplayer',
|
||||
videoId: data.id
|
||||
playerVars:
|
||||
autohide: 1
|
||||
autoplay: 1
|
||||
controls: 1
|
||||
iv_load_policy: 3
|
||||
rel: 0
|
||||
wmode: wmode
|
||||
events:
|
||||
onReady: @onReady.bind(this)
|
||||
onStateChange: @onStateChange.bind(this)
|
||||
)
|
||||
)
|
||||
|
||||
onReady: ->
|
||||
@yt.setVolume(VOLUME)
|
||||
|
||||
onStateChange: (ev) ->
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue