YouTube Tools
Набор PowerShell-скриптов для Windows для скачивания видео и аудио с YouTube, а также создания видео с закадровым переводом.
Используйте утилиты только для контента, который вы имеете право скачивать и обрабатывать.
Возможности
В репозитории находятся три скрипта:
| Скрипт | Назначение |
|---|---|
Get-YouTubeAudio.ps1 |
Скачивание лучшей аудиодорожки и конвертация в FLAC |
Get-YouTubeVideo.ps1 |
Скачивание видео в максимально доступном качестве |
Get-YouTubeVideoTranslate.ps1 |
Скачивание видео, получение закадрового перевода через vot-cli и смешивание перевода с оригинальным звуком |
Все готовые файлы сохраняются в папку:
output/
Структура проекта
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 предназначена для локального размещения необходимых программ.
Поиск зависимостей
Каждый скрипт ищет необходимые программы в следующем порядке:
- В локальной папке
tools. - В системной переменной
PATH. - Если программа не найдена нигде, скрипт показывает ошибку и завершает работу.
Таким образом, можно использовать как локальные версии утилит, так и программы, установленные в Windows.
Зависимости
Скачать всё с облака:
yt-dlp
Используется для скачивания видео и аудио с YouTube.
Последняя версия:
https://github.com/yt-dlp/yt-dlp/releases/latest
Для локального использования положите yt-dlp.exe в:
tools/yt-dlp.exe
FFmpeg
Используется для конвертации аудио, объединения потоков и обработки звуковых дорожек.
Сборка FFmpeg для Windows:
https://www.gyan.dev/ffmpeg/builds/
После распаковки архива возьмите из папки bin файл:
ffmpeg.exe
и положите его в:
tools/ffmpeg.exe
ffprobe.exe текущим скриптам напрямую не требуется.
vot-cli
Используется только скриптом Get-YouTubeVideoTranslate.ps1.
Репозиторий:
https://github.com/FOSWLY/vot-cli
Установка:
npm install -g vot-cli
После установки должна быть доступна команда:
vot-cli
Скрипт также умеет искать локальный vot-cli.cmd, vot-cli.exe или vot-cli.ps1 в папке tools.
Node.js и npm
Необходимы для установки и работы vot-cli.
Проверка:
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 |
✓ | ✓ | ✓ | ✓ |
Использование
Скачивание аудио
Запустите:
.\scripts\Get-YouTubeAudio.ps1
Введите ссылку на YouTube. Результат будет сохранён в output в формате FLAC.
Скачивание видео
Запустите:
.\scripts\Get-YouTubeVideo.ps1
Введите ссылку на YouTube. Скрипт скачает видео в максимально доступном качестве и сохранит результат в output.
Видео с закадровым переводом
Запустите:
.\scripts\Get-YouTubeVideoTranslate.ps1
Можно ввести одну ссылку или несколько ссылок через запятую.
Скрипт:
- скачивает исходное видео;
- получает переведённую дорожку через
vot-cli; - уменьшает громкость оригинального звука до
20%; - смешивает оригинальный звук с переводом;
- сохраняет итоговый MP4 в
output; - удаляет временные файлы.
Политика выполнения PowerShell
Если Windows запрещает запуск .ps1, можно разрешить выполнение локальных скриптов для текущего пользователя:
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
Изменяйте политику выполнения только если понимаете последствия этой настройки.
Выходные файлы
Все результаты находятся в:
youtube-tools/output/
Папка создаётся автоматически, если отсутствует.
Содержимое output исключено из Git.
Лицензия
MIT. См. файл LICENSE.