Video Controls Plus โ a project by Ahsan Mahmood
Playback speed, loops and shortcuts on any HTML5 video. Chrome, Firefox and Edge.
A recorded lecture plays at the speed the lecturer talked.
You want it faster through the explanation and slower through the part with the equations, and the player hands you a short menu of presets where the one you actually need sits between two of them.
Then you want the same passage again.
The scrubber is the only tool on offer, and it is blunt enough that landing on the same point twice becomes a small task in its own right.
None of that is the site's fault. A video player is built to play a video once, in order, for somebody watching rather than somebody studying.
An extension that fixes it lives under a rule most web applications never meet.
It may load no remote code. Not a Firebase Auth SDK, not Firebase or Google Analytics, not a script pulled from a CDN and nothing constructed at runtime with eval.
That rule is written down here because it was learned the expensive way: a Chrome Web Store rejection, and every extension since has been built to the rule it produced.
Everything this one runs is in the bundle the reviewer downloaded.
Speed runs from 0.1x to 16x rather than through a preset menu. A-B loops take exact points. Audio boosts to 400%, with an equaliser, a compressor and a limiter sitting behind that number so the boost is usable rather than merely loud.
Visual filters, zoom and picture-in-picture. Screenshots in one click. Notes that carry a timestamp and a thumbnail of the frame they were taken on, which is the difference between a note you can find in a month and one you cannot.
40+ keyboard shortcuts are configurable and they sync across devices, so a setup built once follows you to the next machine.
460+ per-platform services handle the named sites individually. YouTube, Netflix, Udemy, LinkedIn Learning, Coursera and Vimeo each build their player differently, and any other HTML5 element falls back to a generic path that still gets speed, loops and shortcuts.
One WXT codebase produces three builds: Chrome and Edge on Manifest V3, Firefox on Manifest V2. 985 automated tests hold the shared half of that together.
The companion site at vcpeai.aoneahsan.com ships 413 prerendered routes, including roughly 75 long-form posts, so an AI crawler reads the content instead of an empty shell.
Three stores means three review queues.
Manifest V2 and Manifest V3 are genuinely different platforms, so a feature is not finished when it works in Chrome โ it is finished when the Firefox build does the same thing through a different API. That gap is where most of the release effort goes.
A per-site service is a promise about markup somebody else owns. When a video platform redesigns its player, one service breaks and the rest keep working, which is the tolerable version of that failure and still a failure I have to go and fix.
There is no analytics vendor and no session recorder, so there is also no dashboard telling me which of these features anyone uses. Store reviews are the feedback channel.
There is no Safari version and no iOS build, because there is no Apple Developer account behind any of this.
The extension is on the Chrome Web Store, on Edge and on Firefox, and the site is at vcpeai.aoneahsan.com. Open any of the four and the claims on this page are either there or they are not.
What it does, and what that costs to build
- Speed control 0.1x-16x with presets
- A-B loop with precise custom points
- 400% audio boost + EQ/compressor/limiter
- Visual filters, zoom, picture-in-picture
- One-click screenshots & timestamped notes
- 40+ configurable keyboard shortcuts
- Cross-device cloud sync of settings
- 460+ per-platform services (YouTube/Netflix/LinkedIn)
Built with
- WXT
- React 19
- TypeScript
- Radix UI
- TailwindCSS
- Zustand
- Firebase
- CapacitorJS
Worth knowing
- video
- media
- controls
- extension
- wxt
- manifest-v3
Who built Video Controls Plus?
Ahsan Mahmood built it on his own, and the companion site is at vcpeai.aoneahsan.com. One WXT codebase, one person through the store submissions, and the same person wrote the per-site services that make it behave correctly on each video platform.
Which video sites does it work on?
YouTube, Netflix, Udemy, LinkedIn Learning, Coursera and Vimeo have their own handling, and any other HTML5 player falls back to the generic path. The named ones get individual treatment because each site builds its player differently, and a control that assumes one shape breaks on the rest. Sites outside that list still get speed, loops and shortcuts wherever the page uses a standard video element.
Does Video Controls Plus work on iPhone?
No โ it is a desktop browser extension, and there is no iOS build or Safari version because there is no Apple Developer account behind this work. Chrome, Edge and Firefox are the three browsers it ships to, and they are the three it is tested against.
What does the extension collect about me?
Nothing goes to an analytics vendor, because the extension loads no remote code at all โ no Firebase Analytics, no session recorder and no script fetched from a CDN. That rule came out of a Chrome Web Store rejection and it is now the standard across every extension here. The practical consequence is that I have no dashboard showing which features people use.
Do my shortcuts and notes follow me to another computer?
Yes, settings sync across devices, so the shortcut map and preferences you set on one machine are there on the next one. Notes are timestamped and carry a thumbnail of the frame they were taken on, which is what makes them findable weeks later.
https://aoneahsan.com/projects/com.aoneahsan.videocontrolsplus