From 214e296b04999d1f10fb4b9eae1a1247bdd13e74 Mon Sep 17 00:00:00 2001 From: Ilya Grigorik Date: Sun, 29 Mar 2015 11:01:55 -0700 Subject: [PATCH] set min/max on playback speed Video playback range in Chrome: [0.0625, 16] Audio playback range in Chrome: [0.05, 4] Setting min to 0.05 and max to 16, since outside of this range you're not getting audio or video. closes #26 --- inject.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/inject.js b/inject.js index 29add4a..87647f8 100644 --- a/inject.js +++ b/inject.js @@ -102,9 +102,13 @@ chrome.extension.sendMessage({}, function(response) { if (action === 'rewind') { v.currentTime -= rewindTime; } else if (action === 'faster') { - v.playbackRate += speedStep + // Maxium playback speed in Chrome is set to 16: + // https://code.google.com/p/chromium/codesearch#chromium/src/media/blink/webmediaplayer_impl.cc&l=64 + v.playbackRate = Math.Min(v.playbackRate + speedStep, 16); } else if (action === 'slower') { - v.playbackRate = Math.max(v.playbackRate - speedStep, 0.00); + // Audio playback is cut at 0.05: + // https://code.google.com/p/chromium/codesearch#chromium/src/media/filters/audio_renderer_algorithm.cc&l=49 + v.playbackRate = Math.max(v.playbackRate - speedStep, 0.05); } } });