YT-DLP Web Player: универсальный веб-плеер для самостоятельного хостинга с минимальным интерфейсом и множеством функций

Полное руководство по установке и использованию YT-DLP Web Player. Узнайте, как настроить этот универсальный веб-плеер с минимальным интерфейсом для воспроизведения видео с множества источников на вашем домашнем сервере.

Не указано

Введение в YT-DLP Web Player

YT-DLP Web Player — это легковесный веб-интерфейс для утилиты yt-dlp. Он позволяет просматривать и воспроизводить видео и аудио с множества платформ (YouTube, Vimeo, SoundCloud, TikTok и многих других) непосредственно из браузера, не передавая данные сторонним сервисам. Приложение работает на вашем собственном оборудовании, что обеспечивает максимальный контроль над приватностью.

Установка зависимостей

Перед установкой YT-DLP Web Player необходимо установить все необходимые зависимости системы. Это включает Python, FFmpeg, yt-dlp, flask и gunicorn.

sudo apt update
sudo apt install python3 python3-pip ffmpeg
pip3 install yt-dlp flask gunicorn

Прямой запуск (для разработки)

Для тестирования или разработки можно запустить плеер напрямую, без продакшен-настройки.

cd yt-dlp-web-player
python3 app.py

Запуск через Gunicorn (для продакшена)

Для использования в продакшене рекомендуется запускать приложение через Gunicorn, что обеспечит лучшую производительность и стабильность.

cd yt-dlp-web-player
gunicorn --bind 0.0.0.0:8000 --workers 1 app:app

Запуск через Docker

Самый простой способ установки и развертывания YT-DLP Web Player - использовать Docker. Создайте docker-compose.yml файл с указанными параметрами.

version: '3'
services:
  yt-dlp-player:
    image: ghcr.io/hjiangsu/yt-dlp-web:latest
    container_name: yt-dlp-player
    ports:
      - "8000:8000"
    volumes:
      - ./downloads:/app/downloads
    environment:
      - UID=1000
      - GID=1000

Настройка автозапуска через systemd

Чтобы плеер запускался автоматически при загрузке системы, создайте systemd-сервис.

[Unit]
Description=YT-DLP Web Player
After=network.target

[Service]
User=your_user
Group=your_group
WorkingDirectory=/путь/к/плееру
ExecStart=/usr/local/bin/gunicorn --bind 0.0.0.0:8000 --workers 1 app:app
Restart=always

[Install]
WantedBy=multi-user.target

Настройка безопасности

Для доступа из интернета обязательно используйте HTTPS через reverse proxy (Nginx, Apache) и настройте файрвол для ограничения доступа.

# Разрешить доступ только из локальной сети
sudo ufw allow from 192.168.1.0/24 to any port 8000

# Или ограничить доступ до конкретного IP
sudo ufw allow from 192.168.1.100 to any port 8000

Использование API

YT-DLP Web Player предоставляет REST API для интеграции с другими приложениями или автоматизации.

# Получить информацию о видео
curl http://localhost:8000/api?url=https://www.youtube.com/watch?v=VIDEO_ID

# Скачать видео через API
curl -X POST http://localhost:8000/api/download -d "url=https://www.youtube.com/watch?v=VIDEO_ID&format=best"