Релиз v1.0.0
This commit is contained in:
@@ -0,0 +1,207 @@
|
||||
# YouTube Tools
|
||||
|
||||
Набор PowerShell-скриптов для Windows для скачивания видео и аудио с YouTube, а также создания видео с закадровым переводом.
|
||||
|
||||
> Используйте утилиты только для контента, который вы имеете право скачивать и обрабатывать.
|
||||
|
||||
## Возможности
|
||||
|
||||
В репозитории находятся три скрипта:
|
||||
|
||||
| Скрипт | Назначение |
|
||||
| ------------------------------- | ------------------------------------------------------------------------------------------------------------ |
|
||||
| `Get-YouTubeAudio.ps1` | Скачивание лучшей аудиодорожки и конвертация в FLAC |
|
||||
| `Get-YouTubeVideo.ps1` | Скачивание видео в максимально доступном качестве |
|
||||
| `Get-YouTubeVideoTranslate.ps1` | Скачивание видео, получение закадрового перевода через `vot-cli` и смешивание перевода с оригинальным звуком |
|
||||
|
||||
Все готовые файлы сохраняются в папку:
|
||||
|
||||
```text
|
||||
output/
|
||||
```
|
||||
|
||||
## Структура проекта
|
||||
|
||||
```text
|
||||
youtube-tools/
|
||||
├── scripts/
|
||||
│ ├── Get-YouTubeAudio.ps1
|
||||
│ ├── Get-YouTubeVideo.ps1
|
||||
│ └── Get-YouTubeVideoTranslate.ps1
|
||||
│
|
||||
├── tools/
|
||||
│ ├── yt-dlp.exe
|
||||
│ ├── ffmpeg.exe
|
||||
│ └── ...
|
||||
│
|
||||
├── output/
|
||||
│ └── .gitkeep
|
||||
│
|
||||
├── README.md
|
||||
├── LICENSE
|
||||
└── .gitignore
|
||||
```
|
||||
|
||||
Бинарные зависимости в Git не добавляются. Папка `tools` предназначена для локального размещения необходимых программ.
|
||||
|
||||
## Поиск зависимостей
|
||||
|
||||
Каждый скрипт ищет необходимые программы в следующем порядке:
|
||||
|
||||
1. В локальной папке `tools`.
|
||||
2. В системной переменной `PATH`.
|
||||
3. Если программа не найдена нигде, скрипт показывает ошибку и завершает работу.
|
||||
|
||||
Таким образом, можно использовать как локальные версии утилит, так и программы, установленные в Windows.
|
||||
|
||||
## Зависимости
|
||||
|
||||
Скачать всё с облака:
|
||||
|
||||
[Скачать (.zip)] (https://cloud.kolbox.duckdns.org/lib/b5d0b4e0-fd0c-40fe-b799-3ab0015550d0/file/Gitea%20%D1%80%D0%B5%D0%BF%D0%BE%D0%B7%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%B8/youtube-tools/tools.zip?dl=1)
|
||||
|
||||
### yt-dlp
|
||||
|
||||
Используется для скачивания видео и аудио с YouTube.
|
||||
|
||||
Последняя версия:
|
||||
|
||||
https://github.com/yt-dlp/yt-dlp/releases/latest
|
||||
|
||||
Для локального использования положите `yt-dlp.exe` в:
|
||||
|
||||
```text
|
||||
tools/yt-dlp.exe
|
||||
```
|
||||
|
||||
### FFmpeg
|
||||
|
||||
Используется для конвертации аудио, объединения потоков и обработки звуковых дорожек.
|
||||
|
||||
Сборка FFmpeg для Windows:
|
||||
|
||||
https://www.gyan.dev/ffmpeg/builds/
|
||||
|
||||
После распаковки архива возьмите из папки `bin` файл:
|
||||
|
||||
```text
|
||||
ffmpeg.exe
|
||||
```
|
||||
|
||||
и положите его в:
|
||||
|
||||
```text
|
||||
tools/ffmpeg.exe
|
||||
```
|
||||
|
||||
`ffprobe.exe` текущим скриптам напрямую не требуется.
|
||||
|
||||
### vot-cli
|
||||
|
||||
Используется только скриптом `Get-YouTubeVideoTranslate.ps1`.
|
||||
|
||||
Репозиторий:
|
||||
|
||||
https://github.com/FOSWLY/vot-cli
|
||||
|
||||
Установка:
|
||||
|
||||
```powershell
|
||||
npm install -g vot-cli
|
||||
```
|
||||
|
||||
После установки должна быть доступна команда:
|
||||
|
||||
```powershell
|
||||
vot-cli
|
||||
```
|
||||
|
||||
Скрипт также умеет искать локальный `vot-cli.cmd`, `vot-cli.exe` или `vot-cli.ps1` в папке `tools`.
|
||||
|
||||
### Node.js и npm
|
||||
|
||||
Необходимы для установки и работы `vot-cli`.
|
||||
|
||||
Проверка:
|
||||
|
||||
```powershell
|
||||
node --version
|
||||
npm --version
|
||||
```
|
||||
|
||||
Скрипт перевода проверяет `node` и `npm` как в папке `tools`, так и в системном `PATH`.
|
||||
|
||||
## Зависимости по скриптам
|
||||
|
||||
| Скрипт | yt-dlp | FFmpeg | Node.js / npm | vot-cli |
|
||||
| ------------------------------- |:------:|:------:|:-------------:|:-------:|
|
||||
| `Get-YouTubeAudio.ps1` | ✓ | ✓ | — | — |
|
||||
| `Get-YouTubeVideo.ps1` | ✓ | ✓ | — | — |
|
||||
| `Get-YouTubeVideoTranslate.ps1` | ✓ | ✓ | ✓ | ✓ |
|
||||
|
||||
## Использование
|
||||
|
||||
### Скачивание аудио
|
||||
|
||||
Запустите:
|
||||
|
||||
```powershell
|
||||
.\scripts\Get-YouTubeAudio.ps1
|
||||
```
|
||||
|
||||
Введите ссылку на YouTube. Результат будет сохранён в `output` в формате FLAC.
|
||||
|
||||
### Скачивание видео
|
||||
|
||||
Запустите:
|
||||
|
||||
```powershell
|
||||
.\scripts\Get-YouTubeVideo.ps1
|
||||
```
|
||||
|
||||
Введите ссылку на YouTube. Скрипт скачает видео в максимально доступном качестве и сохранит результат в `output`.
|
||||
|
||||
### Видео с закадровым переводом
|
||||
|
||||
Запустите:
|
||||
|
||||
```powershell
|
||||
.\scripts\Get-YouTubeVideoTranslate.ps1
|
||||
```
|
||||
|
||||
Можно ввести одну ссылку или несколько ссылок через запятую.
|
||||
|
||||
Скрипт:
|
||||
|
||||
1. скачивает исходное видео;
|
||||
2. получает переведённую дорожку через `vot-cli`;
|
||||
3. уменьшает громкость оригинального звука до `20%`;
|
||||
4. смешивает оригинальный звук с переводом;
|
||||
5. сохраняет итоговый MP4 в `output`;
|
||||
6. удаляет временные файлы.
|
||||
|
||||
## Политика выполнения PowerShell
|
||||
|
||||
Если Windows запрещает запуск `.ps1`, можно разрешить выполнение локальных скриптов для текущего пользователя:
|
||||
|
||||
```powershell
|
||||
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
|
||||
```
|
||||
|
||||
Изменяйте политику выполнения только если понимаете последствия этой настройки.
|
||||
|
||||
## Выходные файлы
|
||||
|
||||
Все результаты находятся в:
|
||||
|
||||
```text
|
||||
youtube-tools/output/
|
||||
```
|
||||
|
||||
Папка создаётся автоматически, если отсутствует.
|
||||
|
||||
Содержимое `output` исключено из Git.
|
||||
|
||||
## Лицензия
|
||||
|
||||
MIT. См. файл `LICENSE`.
|
||||
Reference in New Issue
Block a user