Files
youtube-tools/README.md
T
2026-08-09 11:43:39 +03:00

208 lines
6.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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`.