Skip to content

Commit

Permalink
Merge pull request #869 from ilyhalight/fix-audio-player
Browse files Browse the repository at this point in the history
Rewrited audio player logic with Tone.js (temporary)
  • Loading branch information
ilyhalight authored Oct 24, 2024
2 parents a6cab79 + 3e7eb81 commit 4d6b8a4
Show file tree
Hide file tree
Showing 105 changed files with 6,056 additions and 4,848 deletions.
7 changes: 6 additions & 1 deletion .webpack/config.shared.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ const __dirname = path.resolve(path.dirname(__filename));

export default {
resolve: {
extensions: [".js"],
extensions: [".js", ".ts"],
},
performance: {
hints: "error",
Expand All @@ -25,6 +25,11 @@ export default {
// use: ["style-loader", "css-loader", "sass-loader"],
use: ["lightning-loader"],
},
{
test: /\.ts$/,
use: "ts-loader",
exclude: /node_modules/,
},
],
},
};
3 changes: 3 additions & 0 deletions .webpack/webpack.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ import {
sitesProxiTok,
sitesPeertube,
sitesPoketube,
sitesCoursehunterLike,
} from "vot.js/alternativeUrls";
import configShared from "./config.shared.js";

Expand Down Expand Up @@ -78,6 +79,7 @@ export default (env) => {
sitesProxiTok,
sitesPeertube,
sitesPoketube,
sitesCoursehunterLike,
]
.map((sites) =>
sites.map((site) => {
Expand Down Expand Up @@ -144,6 +146,7 @@ export default (env) => {
}),
new webpack.DefinePlugin({
DEBUG_MODE: dev,
// DEBUG_MODE: true,
IS_BETA_VERSION: isBeta,
AVAILABLE_LOCALES: JSON.stringify(availableLocales),
...(() => {
Expand Down
51 changes: 1 addition & 50 deletions README-EN.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,54 +44,7 @@ The voice-over translation of the video is now available not only in YandexBrows

## List of supported sites:

You can see all the restrictions related to site support in [wiki](https://github.com/ilyhalight/voice-over-translation/wiki/%5BEN%5D-Supported-sites).

- **[YouTube](https://www.youtube.com)**
- **[Twitch](https://www.twitch.tv)**
- **[VK](https://vk.com)**
- **[OK](https://ok.ru/)**
- **[Twitter](https://twitter.com/)**
- **[9GAG](https://9gag.com/gag/)**
- **[Rutube](https://rutube.ru/)**
- **[Bilibili](https://bilibili.com/)**
- **[Video Mail.ru](https://my.mail.ru/video)**
- **[Vimeo](https://vimeo.com/)**
- **[XVideos](https://xvideos.com/)**
- **[PornHub](https://rt.pornhub.com/)**
- **[Bitchute](https://www.bitchute.com/)**
- **[Coursera](https://www.coursera.org/)**
- **[[⚠️] Udemy](https://www.udemy.com/)**
- **[Facebook\*](https://facebook.com/)**
- **[TikTok](https://tiktok.com/)**
- **[Rumble](https://rumble.com/)**
- **[EPorner](https://www.eporner.com/)**
- **[Peertube](https://tube.shanti.cafe/)**
- **[Dailymotion](https://www.dailymotion.com/)**
- **[Trovo](https://trovo.live/)**
- **[Yandex Disk](https://disk.yandex.ru/)**
- **[Google Drive](https://drive.google.com/)**
- **[Banned Video](https://banned.video/)**
- **[Weverse](https://weverse.io/)**
- **[Egghead](https://egghead.io)**
- **[Youku](https://youku.com)**
- **[Archive.org](https://archive.org)**
- **[Newgrounds](https://newgrounds.com)**
- **[ProxiTok](https://proxitok.pabloferreiro.es/)**
- **[Invidious](https://yewtu.be)**
- **[Piped](https://piped.video)**
- **[Kodik (player)](https://kodik.cc)**
- **[Patreon](https://patreon.com)**
- **[Reddit](https://reddit.com)**
- **[Kick](https://kick.com)**
- **[Apple Developer](https://developer.apple.com)**
- **[EpicGames Developers](https://dev.epicgames.com)**
- **[9AnimeTV](https://9animetv.to/)**
- **[Sap learning](https://learning.sap.com/)**
- **[Watchporn.to](https://watchporn.to/)**
- **[Linkedin learning](https://www.linkedin.com/)**
- **Any direct web links to `.mp4` or `.webm`**

⚠️ - Requires additional actions, more in **[Wiki](https://github.com/ilyhalight/voice-over-translation/wiki/%5BEN%5D-Supported-sites)**
You can see the full list of supported websites and all restrictions related to their support in **[wiki](https://github.com/ilyhalight/voice-over-translation/wiki/%5BEN%5D-Supported-sites)**

### Our domains:

Expand Down Expand Up @@ -263,5 +216,3 @@ To activate the script in Tampermonkey (MV3), you must [enable "Developer Mode"]
| ⠀[Install guide](https://github.com/ilyhalight/voice-over-translation/wiki/%5BEN%5D-FAQ#how-to-use-the-extension-with-user-js-and-css) | Any | User Javascript and CSS |

![example btn](https://github.com/ilyhalight/voice-over-translation/blob/master/img/example_en.png "btn")

\*: Banned on the territory of the Russian Federation
51 changes: 1 addition & 50 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,54 +45,7 @@

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

Все ограничения, связанные с поддержкой сайтов вы можете увидеть в [вики](https://github.com/ilyhalight/voice-over-translation/wiki/%5BRU%5D-Supported-sites).

- **[YouTube](https://www.youtube.com)**
- **[Twitch](https://www.twitch.tv)**
- **[VK](https://vk.com)**
- **[OK](https://ok.ru/)**
- **[Twitter](https://twitter.com/)**
- **[9GAG](https://9gag.com/gag/)**
- **[Rutube](https://rutube.ru/)**
- **[Bilibili](https://bilibili.com/)**
- **[Видео Mail.ru](https://my.mail.ru/video)**
- **[Vimeo](https://vimeo.com/)**
- **[XVideos](https://xvideos.com/)**
- **[PornHub](https://rt.pornhub.com/)**
- **[Bitchute](https://www.bitchute.com/)**
- **[Coursera](https://www.coursera.org/)**
- **[[⚠️] Udemy](https://www.udemy.com/)**
- **[Facebook\*](https://facebook.com/)**
- **[TikTok](https://tiktok.com/)**
- **[Rumble](https://rumble.com/)**
- **[EPorner](https://www.eporner.com/)**
- **[Peertube](https://tube.shanti.cafe/)**
- **[Dailymotion](https://www.dailymotion.com/)**
- **[Trovo](https://trovo.live/)**
- **[Yandex Disk](https://disk.yandex.ru/)**
- **[Google Drive](https://drive.google.com/)**
- **[Banned Video](https://banned.video/)**
- **[Weverse](https://weverse.io/)**
- **[Egghead](https://egghead.io)**
- **[Youku](https://youku.com)**
- **[Archive.org](https://archive.org)**
- **[Newgrounds](https://newgrounds.com)**
- **[ProxiTok](https://proxitok.pabloferreiro.es/)**
- **[Invidious](https://yewtu.be)**
- **[Piped](https://piped.video)**
- **[Kodik (player)](https://kodik.cc)**
- **[Patreon](https://patreon.com)**
- **[Reddit](https://reddit.com)**
- **[Kick](https://kick.com)**
- **[Apple Developer](https://developer.apple.com)**
- **[EpicGames Developers](https://dev.epicgames.com)**
- **[9AnimeTV](https://9animetv.to/)**
- **[Sap learning](https://learning.sap.com/)**
- **[Watchporn.to](https://watchporn.to/)**
- **[Linkedin learning](https://www.linkedin.com/)**
- **Любые прямые веб-ссылки на `.mp4` или `.webm`**

⚠️ - Требует дополнительных действий, подробнее в **[Wiki](https://github.com/ilyhalight/voice-over-translation/wiki/%5BRU%5D-Supported-sites)**
Полный список поддерживаемых веб-сайтов и все ограничения, связанные с их поддержкой, вы можете увидеть в **[вики](https://github.com/ilyhalight/voice-over-translation/wiki/%5BRU%5D-Supported-sites)**

### Наши домены:

Expand Down Expand Up @@ -266,5 +219,3 @@ bun l10n
| ⠀[Гайд по установке](https://github.com/ilyhalight/voice-over-translation/wiki/%5BRU%5D-FAQ#%D0%BA%D0%B0%D0%BA-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D1%8C-%D1%80%D0%B0%D1%81%D1%88%D0%B8%D1%80%D0%B5%D0%BD%D0%B8%D0%B5-%D1%81-user-js-and-css) | Любой | User Javascript and CSS |

![example btn](https://github.com/ilyhalight/voice-over-translation/blob/master/img/example.png "btn")

\*: Запрещена на территории РФ
Binary file modified bun.lockb
Binary file not shown.
38 changes: 32 additions & 6 deletions changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,46 @@

# 1.7.1 [WIP]

- Включен обход Media CSP для player.vimeo.com
- Добавлена поддержка Coursetrain (coursetrain.net) (#706)
- Добавлена поддержка Ricktube (ricktube.ru)
- Добавлена поддержка Bilibili Bangumi (#852)
- Добавлена поддержка Incestflix (#705)
- Добавлена поддержка субтитров от сайта для Vimeo
- Включен обход Media CSP для player.vimeo.com
<!-- - Добавлена поддержка просмотра видео в плеере без перехода по публичной ссылке для Яндекс Диска (Вы все еще должны открыть публичный доступ к файлу (Не к папке!!!)) (#837) -->
- Исправлено неверное название переменной при отключение чекбокса усилителя громкости аудио, что могло приводить к ошибке
- Исправлено долгое ожидание перевода для новых запросов на перевод для YouTube (статус = 6) ([1#issuecomment-2433274910](https://github.com/ilyhalight/voice-over-translation/issues/1#issuecomment-2433274910), [868#issuecomment-2436080833](https://github.com/ilyhalight/voice-over-translation/issues/868#issuecomment-2436080833))
- Исправлено неверное название переменной для отключения чекбокса усилителя громкости аудио, что могло приводить к ошибке
- Исправлена работа встраиваемого плеера Vimeo (player.vimeo.com), если видео залито в приватный доступ и доступно только через встраивание (#543, #828)
- Исправлена работа медиаклавиш, если в браузере есть поддержка AudioContext (#192, #357, #841)

В меню расширения добавлен чекбокс "Restoring multimedia keys". По умолчанию чекбокс включен, если браузер поддерживает AudioContext. С включением чекбокса "Restoring multimedia keys", изменение значения чекбокса "Bypassing Media CSP" становится недоступным т.к. эти два чекбокса выполняют один и тот же функционал, но "Bypassing Media CSP" действует для ограниченного числа веб-сайтов, а "Restoring multimedia keys" для всех веб-сайтов с которыми работает расширение. Если после этого перехода не возникнет серьезных проблем, то чекбокс "Bypassing Media CSP" будет полностью удален.
- Добавлен новый аудиоплеер, который полностью работает на AudioContext

- Исправлена работа медиаклавиш, если включен новый плеер (#192, #357, #841)
- Опция "Обходить Media CSP" заменена на "Использовать только для обхода Media CSP" (речь про новый плеер), а так же, теперь, данная опция зависит от состояния опции "Использовать новый аудио плеер"

# 1.7.1 Beta 2 [WIP]

<!-- Доделать минимальную версию нового плеера и перейти на нее с Tone.js + в будущем добавить чанковую загрузку аудио файла -->

- Добавлена поддержка Coursetrain (coursetrain.net) (#706)
- Добавлена поддержка Ricktube (ricktube.ru)
- Добавлена поддержка Bilibili Bangumi (#852)
- Добавлена поддержка Incestflix (#705)
- Частично исправлено добавление питча при увеличение/уменьшение скорости с новым плеером (#849, #853, #840)
- (ПРОВЕРИТЬ ЕЩЕ РАЗ) Исправлена ошибка из-за которой озвучка иногда могла не стартовать со старым плеером (#840)
- Исправлена логика работы расширенного увеличения громкости с новым плеером
- (WORKER ЕЩЕ НЕ ОБНОВЛЕН) Исправлено долгое ожидание перевода для новых запросов на перевод для YouTube (статус = 6) ([1#issuecomment-2433274910](https://github.com/ilyhalight/voice-over-translation/issues/1#issuecomment-2433274910), [868#issuecomment-2436080833](https://github.com/ilyhalight/voice-over-translation/issues/868#issuecomment-2436080833))
- Опция "Восстановление мультимедийных клавиш" заменена на "Использовать новый аудио плеер"
- Опция "Обходить Media CSP" заменена на "Использовать только для обхода Media CSP" (речь про новый плеер), а так же, теперь, зависит от состояния опции "Использовать новый аудио плеер"
<!-- Вынести HLS в отдельный плеер (?) -->
- Исправлено добавление обводки для слайдеров на некоторых сайтах
- Исправлено некорректное отображение чекбоксов на некоторых сайтах
- Переработана логика работы с аудио плеерами
- Часть кода переписана на TypeScript

# 1.7.1 Beta 1

- Включен обход Media CSP для player.vimeo.com
- Добавлена поддержка субтитров от сайта для Vimeo
- Исправлено неверное название переменной при отключение чекбокса усилителя громкости аудио, что могло приводить к ошибке
- Исправлено неверное название переменной для отключения чекбокса усилителя громкости аудио, что могло приводить к ошибке
- Исправлена работа встраиваемого плеера Vimeo (player.vimeo.com), если видео залито в приватный доступ и доступно только через встраивание (#543, #828)
- Исправлена работа медиаклавиш, если в браузере есть поддержка AudioContext (#192, #357, #841)

Expand Down
57 changes: 31 additions & 26 deletions dist/vot-min.user.js

Large diffs are not rendered by default.

4,901 changes: 2,725 additions & 2,176 deletions dist/vot.user.js

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions eslint.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ export default [
protobuf: "readonly",
Hls: "readonly",
anime: "readonly",
Tone: "readonly",
// WEBPACK ENVIRONMENT
DEBUG_MODE: "readonly",
AVAILABLE_LOCALES: "readonly",
Expand Down
Loading

0 comments on commit 4d6b8a4

Please sign in to comment.