From f8ecea8fb700059ee6eee7e5dd05d8ed772c0d12 Mon Sep 17 00:00:00 2001 From: Sam Potts Date: Mon, 6 Nov 2017 19:47:14 +1100 Subject: Added Vimeo playback speed --- src/js/plugins/vimeo.js | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/js/plugins/vimeo.js b/src/js/plugins/vimeo.js index 0f6aa4db..76846cf9 100644 --- a/src/js/plugins/vimeo.js +++ b/src/js/plugins/vimeo.js @@ -4,6 +4,7 @@ import utils from './../utils'; import captions from './../captions'; +import controls from './../controls'; import ui from './../ui'; const vimeo = { @@ -51,6 +52,7 @@ const vimeo = { byline: false, portrait: false, title: false, + speed: true, transparent: 0, }; const params = utils.buildUrlParameters(options); @@ -112,12 +114,16 @@ const vimeo = { }); // Playback speed - // Not currently supported in Vimeo + let { playbackRate } = player.media; Object.defineProperty(player.media, 'playbackRate', { get() { - return null; + return playbackRate; + }, + set(input) { + playbackRate = input; + player.embed.setPlaybackRate(input); + utils.dispatchEvent.call(player, player.media, 'ratechange'); }, - set() {}, }); // Volume @@ -155,6 +161,11 @@ const vimeo = { }, }); + // Get available speeds + if (player.config.controls.includes('settings') && player.config.settings.includes('speed')) { + controls.setSpeedMenu.call(player); + } + // Get title player.embed.getVideoTitle().then(title => { player.config.title = title; -- cgit v1.2.3