13 KiB
Voice Over Translation
Caution
Before creating Issues, we strongly recommend that you read the FAQ section and with existing Issues.
Warning
All rights to the original software belong to their respective right holders. The extension isn't affiliated with the original rights holders
The voice-over translation of the video is now available not only in YandexBrowser. Very grateful to devs who create Yandex.Translate, and all contributors who help make the extension better. Thanks <3
Installing the extension:
Warning
If you use Tampermonkey 5.2.0+, don't forget to enable "Developer Mode"!
- Install the extension Tampermonkey
- «Install the Script»
List of features:
- Translate videos into Russian, English, or Kazakh from supported source languages
- Translate live streams on YouTube (with slight delay)
- Display AI-generated subtitles
- Show site subtitles (e.g., YouTube's auto-translated subs)
- Save subtitles in
.srt,.vtt, or.jsonformats - Save translated audio as
.mp3 - Auto-translate videos on open
- Separate volume sliders for original and translated audio
- Auto-adjust translated audio volume like in Yandex Browser
- Sync translation volume with video volume
- Limit translation for your native language (selectable in menu)
- Trigger translation with a hotkey
- Easy customize subtitle appearance
- Show word-by-word translation in subtitles
Useful links:
Note:
- I recommend allowing autoplay of "audio and video" to avoid errors when working with the extension
- The extension cannot translate videos longer than 4 hours (translator API limitation)
List of supported sites:
You can see the full list of supported websites and all restrictions related to their support in wiki
Our domains:
These domains can be set in the extension settings (only those domains that can be changed without rebuilding are listed here):
Proxy-server
It's necessary for proxying requests if it is not possible to make a direct request to the Yandex servers
- vot-worker.toil.cc (Load balancer between proxy servers)
- vot-worker-s1.toil.cc
- vot-worker-s2.toil.cc
- vot.deno.dev
- vot-new.toil-dump.workers.dev (⚠️ doesn't work in Russia)
Media Proxy-server
It's necessary for proxying .m3u8 files and correcting the translation for indirect links to .mp4 or .webm(for more information in the repository)
VOT-Backend
It's necessary to translate additional sites that use the .m3u8 or .mpd video format.
How to build an extension?
- Install Node.js 22+ / Bun.sh
- Install dependencies:
npm install
Bun:
bun install --yarn
-
Building an extension:
3.0. All versions at once:
npm run build3.1. All minified versions at once:
npm run build:min3.2. Only the regular version:
npm run build:default3.3. Only the usual min. versions:
npm run build:default-min
Customization of appearance:
The extension supports customization of the appearance using Stylus, Stylish and other similar extensions.
Example of changing styles:
/* ==UserStyle==
@name VOT-styles
@version 16.09.2023
@namespace vot-styles
@description LLL
@author Toil
@license No License
==/UserStyle== */
:root {
--vot-font-family: "Roboto", "Segoe UI", BlinkMacSystemFont, system-ui,
-apple-system;
--vot-primary-rgb: 139, 180, 245;
--vot-onprimary-rgb: 32, 33, 36;
--vot-surface-rgb: 32, 33, 36;
--vot-onsurface-rgb: 227, 227, 227;
--vot-subtitles-color: rgb(var(--vot-onsurface-rgb, 227, 227, 227));
--vot-subtitles-passed-color: rgb(var(--vot-primary-rgb, 33, 150, 243));
}
Tested browsers and loaders
This list is updated quite rarely, but in most cases the data in it will be relevant.
The extension has been tested in the following browsers:
| Status | Browser | Min. Browser Version | Platform | Extension |
|---|---|---|---|---|
| ⠀✅ | Firefox Developer Edition | v106 | Windows | Tampermonkey (MV2), FireMonkey, VioletMonkey, Greasemonkey |
| ⠀✅ | Firefox | v116.0.2 | Windows, Linux, Android | Tampermonkey (MV2), Violetmonkey |
| ⠀✅ | Firefox Nightly | v118.0a1 | Windows, Android | Tampermonkey (MV2) |
| ⠀✅ | LibreWolf | v100.0.2-1 | Windows | Tampermonkey (MV2) |
| ⠀✅ | Brave | v1.46 | Windows | Tampermonkey (MV2) |
| ⠀✅ | MS Edge | v106.0.1370.34 | Windows, Linux | Tampermonkey (MV2) |
| ⠀✅ | Cent Browser | v4.3.9.248 | Windows | Tampermonkey (MV2) |
| ⠀✅ | Cent Browser Beta | v5.0.1002.182 | Windows | Tampermonkey (MV2) |
| ⠀✅ | Google Chrome | v106 | Windows, MacOS, Linux | Tampermonkey (MV2), Tampermonkey (MV3), Violetmonkey, OrangeMonkey, User Javascript and CSS |
| ⠀✅ | Opera GX (LVL4) | core91 | Windows | Tampermonkey Opera |
| ⠀✅ | Opera GX (LVL5) | core109 | Windows | Tampermonkey Opera |
| ⠀✅ | Opera | v92.0.4561.43 | Windows | Tampermonkey Opera |
| ⠀✅ | Vivaldi | 5.7.2921.63 | Windows, Linux | Tampermonkey (MV2) |
| ⠀✅ | Safari | v15.6.1 | MacOS, iOS | Userscripts, Tampermonkey |
| ⠀✅ | Kiwi Browser | v116.0.5845.61 | Android | Tampermonkey (MV2) |
| ⠀✅ | Yandex Browser | v24.4 | Windows | Tampermonkey (MV2), Tampermonkey (MV3) |
| ⠀✅ | Arc | v1.6.1 | Windows | Tampermonkey (MV3) |
| ⠀✅ | Incognition | v4.1.1.0 (v125) | Windows | Tampermonkey (MV3), Tampermonkey (MV2) |
Min. Browser version it's a minimal version of which extension has been tested. However, this doesn't mean that it willn't run in older versions. Please note that we don't support or fix errors in outdated browsers.
To activate the script in Tampermonkey (MV3), you must enable "Developer Mode"
Tested in the following extensions-loaders for userscripts:
| Status | Browser | Extension |
|---|---|---|
| ⠀✅ | Any | Tampermonkey Legacy (MV2) |
| ⠀✅ | Opera | Tampermonkey Opera |
| ⠀✅ | Chrome | Tampermonkey (MV3) |
| ⠀⚠️¹ | Safari | Userscripts |
| ⠀✅ | Any | Violetmonkey |
| ⠀❔ | Any | AdGuard Usercripts |
| ⠀Install guide | Firefox | Firemonkey |
| ⠀✅ | Firefox | Greasemonkey |
| ⚠️² | Any | OrangeMonkey |
| ⠀Install guide¹ | Any | User Javascript and CSS |
¹ - It works in proxying mode, the important "Use audio download" function is unavailable due to the lack of the unsafeWindow API, which may lead to problems with translating new videos.
² - requestIdleCallback throws a lot of errors in the console, but the extension works.
Contributing
Please refer to the contributing guide.
Based on sodapng/voice-over-translation project (license MIT)
