Item logo image for UniTube

UniTube

ExtensionTools12 users
Item media 2 (screenshot) for UniTube
Item media 1 (screenshot) for UniTube
Item media 2 (screenshot) for UniTube
Item media 1 (screenshot) for UniTube
Item media 1 (screenshot) for UniTube
Item media 2 (screenshot) for UniTube

Overview

Enhances video playback (e.g., long-press 2x speed) across platforms and hides hardcoded subtitles with a draggable mask.

A lightweight browser extension that enhances your web video playback experience across multiple platforms (Bilibili, Douyin, iQIYI, etc.) and hides hardcoded subtitles with a draggable mask. UniTube offers two main core features: 1. **Multi-platform Playback Enhancements**: Brings YouTube-like smooth controls to supported sites like Bilibili, Douyin, and iQIYI (e.g., long-press mouse or Spacebar for 2x speed). 2. **Subtitle Masking**: Built for listening-focused video watching. When subtitles are always on screen, it is too easy to read instead of actually listening. BiliTube places a resizable mask over them so you rely more on audio and context. 2. **Subtitle Masking**: Built for listening-focused video watching. When subtitles are always on screen, it is too easy to read instead of actually listening. UniTube places a resizable mask over them so you rely more on audio and context. ## Quick start 1. Install UniTube from the Chrome Web Store. 2. Open a video page, click the extension icon, and enable the features. Normal limitations: - some sites may behave differently in fullscreen - some players may need manual repositioning of the mask ## Features - Draggable subtitle mask - Resizable from the corners - Adjustable opacity - Per-site saved position and size - **Multi-platform Enhancements**: - **Long-press speedup**: Hold left mouse button or Spacebar for 2x speed playback on supported sites (Bilibili, Douyin, iQIYI, etc.). - **Smart distinction**: Short clicks still trigger the native play/pause. - **Visual indicator**: Displays a sleek "2x ⏩" pill-shaped indicator while speeding up. - **YouTube-style shortcuts**: - `k`: Play/pause - `j` / `l`: Rewind / Fast-forward 10 seconds - `0`..`9`: Jump to 0%..90% of the video length - `Shift` + `p` / `n`: Previous / Next video - `f` / `ggle Mute - `d`: Toggle Danmaku (on supported sites) - Works on many video sites without site-specific setup - Site-specific fullscreen handling when needed ## How to use 1. Open a video page. 2. Click the extension icon and enable the mask. 3. Drag the mask to the subtitle area. 4. Resize it from the corners if needed. 5. Adjust opacity from the popup. 6. Double-click the mask to reset its default position. ## Fullscreen behavior There are two kinds of fullscreen on the web: 1. **Native video fullscreen** - Triggered by the browser/player's built-in video control - Usually fills the screen perfectly - But normal web page overlays often cannot appear above it 2. **Container fullscreen** - Triggered by the page or extension on a normal DOM container - Lets the subtitle mask stay visible - Some sites may use a custom fullscreen button for this reason Because of browser limitations, some sites may need the extension's custom fullscreen path to keep the mask visible. ## Known limitations - Native video fullscreen may hide the subtitle mask on some sites. - Video players behave differently across websites, so fullscreen behavior is not identical everywhere. - Some sites may show a custom fullscreen button added by the extension to keep the mask visible. ## Privacy UniTube runs locally in your browser. - No account - No analytics - No video data upload - No subtitle data upload The extension only stores local settings such as mask position, size, and opacity. ## Installation **Recommended**: Install directly from the [Chrome Web Store](https://chromewebstore.google.com/detail/bilitube/pmgdfclndepngncnacmegcfplgdecmgh). *(For developers: You can also clone this repository, turn on **Developer mode** in your browser's extensions page, and choose **Load unpacked** to load this folder.)* ## Permissions - `storage`: save opacity and mask position - `activeTab`: grant temporary access to the current site when you click the extension icon or use a shortcut. This is a secure way to enable the subtitle mask on any site without granting permanent access. - `scripting`: inject the mask UI and playback enhancement code into video pages. - `host_permissions` for `bilibili.com` and `douyin.com`: allow playback enhancements to load automatically on specific sites. ## Why `activeTab` is used instead of broad site access To respect user privacy and security, UniTube uses the `activeTab` permission. This means the extension has no access to any website until you explicitly activate it by clicking its icon or using a keyboard shortcut. When activated, it gains temporary permission to inject the subtitle mask into the current page. This model provides the flexibility to work on any video site while being much more secure than requesting permanent access to all websites. For Bilibili and Douyin, specific host permissions are requested to allow the playback enhancement features to load automatically for the best user experience. It does **not** upload browsing history, video data, subtitle data, or page content to any remote server. ## Security philosophy UniTube is intended to stay a local, single-purpose tool. Its goal is simple: place a mask over visible subtitle areas on video pages. ### Non-goals - no account system - no analytics or tracking - no cloud sync - no remote code or remote rule execution - no collection or upload of page content, subtitles, or browsing history # Changelog ## 1.0.27 (Current) - **Fix**: Fixed the play/pause synchronization issue on Bilibili and other sites. The extension now perfectly simulates a click on the native UI play button instead of poking the raw HTML5 video API, solving the "cannot pause" and "double toggle" state mismatch bugs during short spacebar presses. ## 1.0.26 (Current) - **Enhancement**: Refined "YouTube-style" keyboard shortcuts to better align with Bilibili's native shortcuts. Re-mapped `T` to Theater mode (Wide screen), added `W` for Web Fullscreen, and added `D` for toggling Danmaku. ## 1.0.28 (Current) - **Fix**: Upgraded event interception strategy to guarantee the extension handles spacebar events before Bilibili's native player. Switched injection time to `document_start` and added `stopImmediatePropagation()` to completely eliminate the "double toggle" play/pause collision. ## 1.0.25 - **Fix**: Fixed a "double toggle" play/pause bug on Bilibili when pressing the spacebar. Reverted the simulated click approach and restored direct HTML5 video API calls, paired with stronger native event blocking (keydown/keypress) for a flawless short-press experience. ## 1.0.24 (Current) - **Fix**: Resolved an issue where pressing the spacebar wouldn't toggle play/pause on Bilibili due to virtual DOM event delegation. Now it flawlessly simulates a native mouse click on the video area. ## 1.0.23 - **Branding**: Renamed the extension to UniTube to better reflect its multi-platform support (Bilibili, Douyin, iQIYI, Tencent, Baidu, etc.). ## 1.0.22 - **UI**: Added a supported websites list with an expandable/collapsible toggle to the popup panel. ## 1.0.21 - **Feature**: Added playback enhancement support (like long-press 2x speed) for iQIYI (`iqiyi.com`). ## 1.0.20 - **Feature**: Added playback enhancement support (like long-press 2x speed) for Tencent Video (`v.qq.com`) and Baidu Video (`mbd.baidu.com`). ## 1.0.15 - **Compliance**: Removed unused `webNavigation` permission to comply with Chrome Web Store policies. This does not affect any existing functionality. - **Docs**: Added official Chrome Web Store download links to the documentation. ## 1.0.14 - **Security**: Improved extension security and privacy by replacing the broad `<all_urls>` host permission with the `activeTab` permission. The extension now only gains access to a site when the user explicitly clicks the extension icon or uses a shortcut. A specific host permission for `bilibili.com` is retained for automatic feature loading. ## 1.0.13 - **UI**: Removed the default keyboard shortcut hint (`Alt+M` / `Ctrl+M`) from the popup UI and READMEs to prevent user confusion, as macOS frequently overrides these combinations. Custom shortcut binding is still supported. ## 1.0.12 - **Fix**: Resolved an issue where releasing the long-press mouse button wouldn't restore original playback speed due to conflicts with Bilibili's native long-press state. Replaced `pointerup` event blocking with a 200ms `video.pause()` hijack for a flawless experience. ## 1.0.11 - **Remove**: Removed unstable shortcuts (CC toggle, speed adjustment via `<`, `>`, and frame stepping `,`, `.`) due to compatibility issues with various Bilibili player versions. ## 1.0.10 - **Fix**: Bilibili playback enhancements (like long-press for speed) now activate immediately on page load, without needing to first toggle the subtitle mask. The content script is now automatically injected into Bilibili pages. ## 1.0.9 - **Fix**: Improved the long-press speed-up feature on Bilibili to prevent the video from pausing upon mouse release. The fix involves more robust event handling to avoid conflicts with the player's native controls. ## 1.0.0 - Initial public release - Added draggable and resizable subtitle mask - Added opacity control in popup - Added keyboard shortcut (`Alt+M` / `Control+M`) - Added per-site saved mask position and size - Added Bilibili playback enhancements (YouTube-like experience) - Long-press mouse left click or Spacebar for 2x speed playback - Added visual pill-shaped indicator for playback speed changes - Supported extensive YouTube-style keyboard shortcuts (k, j, l, f, t, i, etc.) - Improved fullscreen handling for difficult video players - Added site-specific handling for pages where native fullscreen hides normal DOM overlays

Details

  • Version
    1.0.28
  • Updated
    May 10, 2026
  • Offered by
    ggg
  • Size
    2.09MiB
  • Languages
    English
  • Developer
    Email
    gggxin1@gmail.com
  • Non-trader
    This developer has not identified itself as a trader. For consumers in the European Union, please note that consumer rights do not apply to contracts between you and this developer.

Privacy

Manage extensions and learn how they're being used in your organization
The developer has disclosed that it will not collect or use your data.

This developer declares that your data is

  • Not being sold to third parties, outside of the approved use cases
  • Not being used or transferred for purposes that are unrelated to the item's core functionality
  • Not being used or transferred to determine creditworthiness or for lending purposes

Support

For help with questions, suggestions, or problems, please open this page on your desktop browser

Google apps