aboutsummaryrefslogtreecommitdiffstats
path: root/src/client/Player.hx
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/Player.hx')
-rw-r--r--src/client/Player.hx26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/client/Player.hx b/src/client/Player.hx
index 8e55b25..53a1168 100644
--- a/src/client/Player.hx
+++ b/src/client/Player.hx
@@ -21,6 +21,7 @@ class Player {
var itemPos = 0;
var isLoaded = false;
var skipSetTime = false;
+ var skipSetRate = false;
public function new(main:Main):Void {
this.main = main;
@@ -158,6 +159,19 @@ class Player {
});
}
+ public function onRateChange():Void {
+ if (skipSetRate) {
+ skipSetRate = false;
+ return;
+ }
+ if (!main.isLeader()) return;
+ main.send({
+ type: SetRate, setRate: {
+ rate: getPlaybackRate()
+ }
+ });
+ }
+
public function addVideoItem(item:VideoItem, atEnd:Bool):Void {
final url = item.url.htmlEscape(true);
final itemEl = nodeFromString(
@@ -322,4 +336,16 @@ class Player {
player.setTime(time);
}
+ public function getPlaybackRate():Float {
+ if (player == null) return 1;
+ return player.getPlaybackRate();
+ }
+
+ public function setPlaybackRate(rate:Float, isLocal = true):Void {
+ if (!main.isSyncActive) return;
+ if (player == null) return;
+ skipSetRate = isLocal;
+ player.setPlaybackRate(rate);
+ }
+
}
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage