Find a file
2025-04-15 00:55:19 +03:00
.github docs: fix visual problems 2025-03-18 20:27:07 +03:00
.husky Updated dev packages 2024-05-24 20:06:22 +03:00
.webpack chore: revert exec -> match 2025-04-04 03:13:23 +03:00
dist build 2025-04-15 00:52:22 +03:00
img docs: updated example images 2025-04-04 03:07:45 +03:00
patches chore: revert remove VOTStreamNotSupportedUrl phrase 2025-02-25 03:09:42 +03:00
scripts/wiki-gen docs: added new paths for vimeo 2025-04-15 00:55:19 +03:00
src chore: double if replaced with if/else if 2025-04-15 00:51:56 +03:00
tests chore: jsdelivr -> unpkg 2025-02-23 16:13:33 +03:00
.gitignore ignore test file 2024-11-05 01:12:25 +03:00
.oxlintignore rewrited to eslint 9 2024-07-08 03:24:25 +03:00
.prettierignore Updated dev packages 2024-05-24 20:06:22 +03:00
.prettierrc.json Updated dev packages 2024-05-24 20:06:22 +03:00
bun.lock chore: bump vot.js to 2.4.0 and other depends 2025-04-15 00:51:29 +03:00
changelog.md chore: bump vot.js to 2.4.0 and other depends 2025-04-15 00:51:29 +03:00
CONTRIBUTING.md migrated from vot.js to @vot.js/ext and @vot.js/shared 2024-11-22 00:48:30 +03:00
eslint.config.js chore: updated define config logic 2025-03-15 18:41:45 +03:00
l10n.config.json chore: small fixes after migration to localize-tui 2025-01-11 03:13:48 +03:00
LANG_SUPPORT.md improved readme (634#discussioncomment-9788714) 2024-06-17 15:30:07 +03:00
LICENSE docs: changed license 2025-03-15 18:42:13 +03:00
package-lock.json chore: bump vot.js to 2.3.12 (#1198, #1199, #1202) 2025-04-08 00:26:30 +03:00
package.json chore: bump vot.js to 2.4.0 and other depends 2025-04-15 00:51:29 +03:00
README-EN.md docs: updated readme 2025-04-08 17:46:10 +03:00
README.md docs: updated readme 2025-04-08 17:46:10 +03:00
tsconfig.json chore: enabled gm v4 api types 2025-04-04 03:06:15 +03:00

Закадровый перевод видео

en ru

Caution

Перед созданием Issues настоятельно рекомендуем ознакомиться с разделом FAQ и уже существующими Issues.

Warning

Расширение создано исключительно в исследовательских целях и не предназначено для коммерческого использования. Все права на оригинальное программное обеспечение принадлежат их правообладателям. Расширение не связано с оригинальными правообладателями

Закадровый перевод видео, теперь, доступен не только в YandexBrowser. Очень признателен разработчикам создающим Yandex.Translate, а также всем контрибьюторам за помощь в улучшении расширения. Спасиб <3

Установка расширения:

Warning

Если вы пользуетесь Tampermonkey 5.2.0+, не забудьте включить "Режим разработчика"!

  1. Установите расширение Tampermonkey (Альтернатива для Safari: UserScripts)
  2. «Установите Скрипт»

Список функционала:

  • Перевод видео на русский, английский или казахский с поддерживаемых языков
  • Перевод прямых трансляций на YouTube (с небольшой задержкой)
  • Отображение субтитров, сгенерированных нейросетью
  • Отображение субтитров с сайта (например, автопереведенные субтитры YouTube)
  • Сохранение субтитров в форматах .srt, .vtt, .json
  • Сохранение аудиодорожки перевода в формате .mp3
  • Автоматический перевод видео при открытии
  • Отдельные ползунки громкости для оригинального и переведённого звука
  • Автонастройка громкости перевода как в Яндекс Браузере
  • Синхронизация громкости перевода с громкостью видео
  • Ограничение перевода видео на родном языке (язык можно выбрать в меню)
  • Перевод по горячей клавише
  • Простая настройка внешнего вида субтитров
  • Отображение перевода отдельных слов в субтитрах

Полезные ссылки:

  1. Библиотека для JS (vot.js): Ссылка
  2. Версия для терминала (vot-cli): Ссылка
  3. Вики: Ссылка

Примечание:

  1. Рекомендую разрешить автовоспроизведение "аудио и видео", чтобы избежать ошибок при работе расширения
  2. Расширение не может переводить видео длиной более 4 часов (ограничение API переводчика)

Список поддерживаемых сайтов:

Полный список поддерживаемых веб-сайтов и все ограничения, связанные с их поддержкой, вы можете увидеть в вики

Наши домены:

Эти домены могут быть установлены в настройках расширения (здесь указаны только те домены, которые можно изменить без пересборки):

Proxy-сервер

Необходим для проксирования запросов, если не получается сделать прямой запрос к серверам Яндекса

Media Proxy-сервер

Необходим для проксирования .m3u8 файлов и исправления перевода для непрямых ссылок на .mp4 или .webm (подробнее в репозитории)

VOT-Backend

Необходим для перевода дополнительных сайтов, которые используют формат видео, который не поддерживается серверами Яндекса.

Как собрать расширение?

  1. Установите Node.js 18.18+ / Bun.sh
  2. Установите зависимости:

NPM:

npm install

Bun:

bun install --yarn
  1. Сборка расширения:

    3.0. Все версии сразу:

    npm run build
    

    3.1. Все минифицированные версии сразу:

    npm run build:min
    

    3.2. Только обычная версии:

    npm run build:default
    

    3.3. Только обычная мин. версии:

    npm run build:default-min
    

Как патчить vot.js?

  1. Внесите нужные изменения в node_modules/@vot.js/package_name/нужный файл
  2. Сохраните изменения с помощью:

NPM:

npx patch-package @vot.js/package_name

Bun:

bunx patch-package --use-yarn @vot.js/package_name

Не пользуйтесь патчами из bun patch или из каких-либо других npm пакетов. Они будут несовместимы с patch-package, а так же могут ломаться при обновлении пакета.

Как обновлять файлы локализации?

Для всего взаимодействия с файлами локализации сделана консольная утилита localize-tui.

Для вызова утилиты используйте команду:

bun localize

Подробнее о утилите можно прочитать тут

Кастомизация внешнего вида:

Расширение поддерживает кастомизацию внешнего вида с помощью Stylus, Stylish и других подобных расширений.

Пример изменения стилей:

/* ==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));
}

Проотестированные браузеры и загрузчики

Расширение протестировано в следующих браузерах:

Статус Браузер Мин. версия браузера Платформа Расширение
⠀✅ 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
⠀✅ 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)

Мин. версия браузера - это минимальная версия, на которой расширение было протестировано. Однако это не означает, что оно не запустится в более старых версиях. Учтите, что поддержкой и исправление ошибок в устаревших браузерах мы не занимаемся.

Для активации скрипта в Tampermonkey (MV3) необходимо включить "Режим разработчика"

Расширение было протестировано в следующих расширениях-загрузчиках для юзерскриптов:

Статус Браузер Расширение
⠀✅ Любой Tampermonkey Legacy (MV2)
⠀✅ Opera Tampermonkey Opera
⠀✅ Chrome Tampermonkey (MV3)
⠀❔ Safari Userscripts
⠀✅ Любой Violetmonkey
⠀❔ Любой AdGuard Usercripts
⠀Гайд по установке Firefox Firemonkey
⠀✅ Firefox Greasemonkey
⚠️ RequestIdleCallback сыпет ошибками, но работает Любой OrangeMonkey
⠀Гайд по установке Любой User Javascript and CSS

example btn