Video Speed Controller
🔍 Security Report Available View on Chrome Web StoreChrome will indicate if you already have this installed.
Blocks unwanted playback speed limitations, letting you speed up, slow down, advance and rewind HTML5 audio/video with shortcuts, giving you control over your video playback experience. Ideal for content creators, streamers, and viewers who want to manipulate playback speed without leaving the page. Most beneficial for those working with long-form videos or live streams where precise timing is crucial.
Overview
HTML5 video provides native APIs to accelerate playback of any video, but most implemented players either hide or limit this functionality. This extension fixes that, plus more...
It will help you optimize your video viewing by allowing you to make quick playback speed adjustments, as well as rewind the video to hear the last few second one more time. We don't read at a constant speed, and we talk much slower than we read - there is no reason why we have to listen at a constant speed and at a (very) slow rate.
Once the extension is installed simply navigate to any page that offers HTML5 video, and you'll see a speed indicator in top left corner of the video player. Hover over the indicator to reveal the controls to accelerate, slowdown, or rewind the video (10 seconds + lowers playback speed). Or, even better, use your keyboard:
- S - decrease playback speed.
- D - increase playback speed.
- R - reset playback speed.
- Z - rewind video by 10 seconds.
- X - advance video by 10 seconds.
- V - show/hide controller.
If you prefer other shortcuts, want to change the increment value, or want the player to remember your playback speed in the future, head into the settings page and customize it to your heart's content.
Tags
Privacy Practices
Security Analysis — Video Speed Controller
Permissions
Code Patterns Detected
External Connections
Package Contents 24 files · 331KB
What This Extension Does
The Video Speed Controller extension allows users to speed up, slow down, advance and rewind HTML5 audio/video with shortcuts. It solves the problem of limited playback control in most video players. This extension is suitable for anyone who wants more flexibility when watching videos online.
Permissions Explained
- storageexpected: This permission allows the extension to store data locally on your device, such as custom settings or playback history.
Technical: The extension uses thechrome.storageAPI to access and modify local storage. This could potentially allow unauthorized access to sensitive information if compromised. - activeTabexpected: This permission allows the extension to interact with the currently active tab, such as accessing its content or modifying its settings.
Technical: The extension uses thechrome.tabsAPI to access and modify the active tab. This could potentially allow unauthorized access to sensitive information if compromised.
Your Data
The extension accesses local storage on your device and sends data to github.com and www.netflix.com. It captures keystrokes, monitors storage changes, and uses postMessage for cross-origin communications.
Technical Details
document.addEventListener('keydown', ...) and monitors storage changes using chrome.storage.onChanged.addListener(...).Code Findings
The extension uses innerHTML to assign values to HTML elements, which could potentially lead to cross-site scripting (XSS) vulnerabilities if not properly sanitized.
Technical: The extension uses element.innerHTML = String.fromCharCode(...) to assign values to HTML elements. This pattern is commonly used in legitimate extensions for dynamic content rendering, but it requires proper sanitization to prevent XSS attacks.
💡 Legitimate use: Dynamic content rendering
The extension uses String.fromCharCode to obfuscate code, which could potentially make it harder for security analysts to understand the extension's behavior.
Technical: The extension uses String.fromCharCode(...) to convert integers to characters. This pattern is commonly used in legitimate extensions for encoding or decoding data, but it can also be used for obfuscation.
💡 Legitimate use: Encoding/decoding data
The extension creates script elements dynamically, which could potentially allow unauthorized access to sensitive information if compromised.
Technical: The extension uses document.createElement('script') to create script elements dynamically. This pattern is commonly used in legitimate extensions for dynamic content rendering or loading external scripts.
💡 Legitimate use: Dynamic content rendering/loading external scripts
The extension captures keystrokes, which could potentially allow unauthorized access to sensitive information if compromised.
Technical: The extension uses document.addEventListener('keydown', ...) to capture keystrokes. This pattern is commonly used in legitimate extensions for keyboard shortcuts or input validation.
💡 Legitimate use: Keyboard shortcuts/input validation
The extension monitors storage changes, which could potentially allow unauthorized access to sensitive information if compromised.
Technical: The extension uses chrome.storage.onChanged.addListener(...) to monitor storage changes. This pattern is commonly used in legitimate extensions for storing and retrieving data locally.
💡 Legitimate use: Storing/retrieving local data
The extension uses postMessage to communicate with other origins, which could potentially allow unauthorized access to sensitive information if compromised.
Technical: The extension uses window.postMessage(...) to communicate with other origins. This pattern is commonly used in legitimate extensions for cross-origin communication or messaging between web pages.
💡 Legitimate use: Cross-origin communication/messaging
The Video Speed Controller extension has some security concerns, including potential XSS vulnerabilities and unauthorized access to sensitive information. However, these concerns are mitigated by the extension's legitimate use of certain patterns for dynamic content rendering and local data storage. Users should exercise caution when installing this extension and regularly review its behavior to ensure it aligns with their expectations.