diff options
| author | RblSb <msrblsb@gmail.com> | 2020-04-03 04:48:36 +0300 |
|---|---|---|
| committer | RblSb <msrblsb@gmail.com> | 2020-04-03 04:48:36 +0300 |
| commit | 5f2a3b89eaa1199d9bc2ddd10622f9803cec983f (patch) | |
| tree | ee9064ee7b683cfe2ac7b504ba81674b490367b6 /src/client/players | |
| parent | 62c9be74228549ff888b684a62f77fb056571470 (diff) | |
Sync playback rate
Diffstat (limited to 'src/client/players')
| -rw-r--r-- | src/client/players/Iframe.hx | 6 | ||||
| -rw-r--r-- | src/client/players/Raw.hx | 9 | ||||
| -rw-r--r-- | src/client/players/Youtube.hx | 13 |
3 files changed, 27 insertions, 1 deletions
diff --git a/src/client/players/Iframe.hx b/src/client/players/Iframe.hx index f0a04c5..d79196b 100644 --- a/src/client/players/Iframe.hx +++ b/src/client/players/Iframe.hx @@ -59,4 +59,10 @@ class Iframe implements IPlayer { public function setTime(time:Float):Void {} + public function getPlaybackRate():Float { + return 1; + } + + public function setPlaybackRate(rate:Float):Void {} + } diff --git a/src/client/players/Raw.hx b/src/client/players/Raw.hx index c7fa980..cd01a42 100644 --- a/src/client/players/Raw.hx +++ b/src/client/players/Raw.hx @@ -67,6 +67,7 @@ class Raw implements IPlayer { player.onPlay(); } video.onpause = player.onPause; + video.onratechange = player.onRateChange; playerEl.appendChild(video); } @@ -102,4 +103,12 @@ class Raw implements IPlayer { video.currentTime = time; } + public function getPlaybackRate():Float { + return video.playbackRate; + } + + public function setPlaybackRate(rate:Float):Void { + video.playbackRate = rate; + } + } diff --git a/src/client/players/Youtube.hx b/src/client/players/Youtube.hx index f582ba7..eff407e 100644 --- a/src/client/players/Youtube.hx +++ b/src/client/players/Youtube.hx @@ -208,7 +208,10 @@ class Youtube implements IPlayer { player.onSetTime(); case CUED: } - } + }, + onPlaybackRateChange: e -> { + player.onRateChange(); + }, } }); } @@ -239,4 +242,12 @@ class Youtube implements IPlayer { youtube.seekTo(time, true); } + public function getPlaybackRate():Float { + return youtube.getPlaybackRate(); + } + + public function setPlaybackRate(rate:Float):Void { + youtube.setPlaybackRate(rate); + } + } |
