2025-11-09 13:24:10 +03:00
2025-11-09 13:24:10 +03:00
2025-11-09 01:28:42 +03:00
2025-11-09 01:28:42 +03:00
2025-11-09 13:24:10 +03:00
2025-11-08 19:41:20 +03:00
2025-11-09 01:30:52 +03:00
2025-11-09 01:28:42 +03:00
2025-11-08 19:41:20 +03:00
2025-11-09 01:28:42 +03:00
2025-11-09 13:24:10 +03:00
2025-11-09 13:24:10 +03:00
2025-11-08 19:41:20 +03:00

DASH Video Converter 🎬

CLI инструмент для конвертации видео в формат DASH с поддержкой GPU ускорения (NVENC), адаптивным стримингом и автоматической генерацией превью.

Возможности: NVENC ускорение • 🎯 Множественные битрейты • 🖼️ Thumbnail спрайты • 📸 Генерация постера • 📊 Прогресс в реальном времени

Быстрый старт

# Использование через npx (без установки)
npx @grom13/dvc-cli video.mp4

# Или глобальная установка
npm install -g @grom13/dvc-cli
dvc-cli video.mp4

Системные требования:

# Arch Linux
sudo pacman -S ffmpeg gpac

# Ubuntu/Debian
sudo apt install ffmpeg gpac

# macOS
brew install ffmpeg gpac

Результат: В текущей директории будет создана папка video/ с файлами manifest.mpd, видео сегментами, постером и превью спрайтами.

Параметры CLI

dvc-cli <input-video> [output-dir] [-r resolutions] [-p poster-timecode]

Основные параметры

Параметр Описание По умолчанию Обязательный
input-video Путь к входному видео файлу -
output-dir Директория для выходных файлов . (текущая папка)

Опциональные ключи

Ключ Описание Формат Пример
-r, --resolutions Выбор профилей качества 360, 720@60, 1080-60 -r 720,1080,1440@60
-p, --poster Таймкод для постера HH:MM:SS или секунды -p 00:00:05 или -p 10

Примеры использования

# Базовая конвертация (результат в текущей папке)
dvc-cli video.mp4

# Указать выходную директорию
dvc-cli video.mp4 ./output

# Только выбранные разрешения
dvc-cli video.mp4 -r 720,1080,1440

# Высокий FPS для игровых стримов
dvc-cli video.mp4 -r 720@60,1080@60

# Постер с 5-й секунды
dvc-cli video.mp4 -p 5

# Постер в формате времени
dvc-cli video.mp4 -p 00:01:30

# Комбинация параметров
dvc-cli video.mp4 ./output -r 720,1080@60,1440@60 -p 00:00:10

Поддерживаемые разрешения

Разрешение Стандартное название FPS варианты
360 360p (640×360) 30, 60, 90, 120
480 480p (854×480) 30, 60, 90, 120
720 720p HD (1280×720) 30, 60, 90, 120
1080 1080p Full HD (1920×1080) 30, 60, 90, 120
1440 1440p 2K (2560×1440) 30, 60, 90, 120
2160 2160p 4K (3840×2160) 30, 60, 90, 120

Примечание: Высокие FPS (60/90/120) создаются автоматически только если исходное видео поддерживает соответствующий FPS.

Автоматические настройки

  • Длительность сегментов: 2 секунды
  • NVENC: автоопределение (GPU если доступен, иначе CPU)
  • Профили качества: автоматический выбор на основе разрешения исходного видео
  • Битрейт: динамический расчет по формуле BPP (Bits Per Pixel)
  • Превью спрайты: генерируются автоматически (160×90px, интервал 1 сек)
  • Постер: извлекается с 1-й секунды видео (можно изменить через -p)
  • Параллельное кодирование: включено

Требования: Node.js ≥18.0.0, FFmpeg, MP4Box (gpac), опционально NVIDIA GPU для ускорения

Description
No description provided
Readme MIT 185 KiB
Languages
TypeScript 84.2%
JavaScript 13.8%
HTML 2%