4.1 KiB
4.1 KiB
layout, hero, features
| layout | hero | features | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| home |
|
|
Быстрая установка
::: code-group
npm install -g @grom13/adaptive-video-converter
npx @grom13/adaptive-video-converter video.mp4
:::
Использование
# Базовая конвертация
avc video.mp4
# С параметрами
avc video.mp4 ./output -r 720,1080,1440 -c dual -f both
# Только HLS для Safari/iOS
avc video.mp4 -f hls -c h264
# Высокий FPS для игровых стримов
avc video.mp4 -r 720@60,1080@60,1440@120
Системные требования
- Node.js ≥ 18.0.0
- FFmpeg (с поддержкой NVENC для GPU)
- MP4Box (gpac)
- Опционально: NVIDIA GPU с NVENC
::: tip Проверьте наличие необходимых инструментов:
ffmpeg -version
MP4Box -version
:::
Результат
После конвертации вы получите:
video/
├── manifest.mpd # DASH манифест
├── master.m3u8 # HLS мастер-плейлист
├── 720p-h264/ # Сегменты по профилям
├── 720p-av1/
├── 1080p-h264/
├── 1080p-av1/
├── thumbnails.jpg # Спрайт превью
├── thumbnails.vtt # WebVTT временные метки
└── poster.jpg # Постер
Программное использование
import { convertToDash } from '@grom13/adaptive-video-converter';
const result = await convertToDash({
inputPath: './video.mp4',
outputDir: './output',
codecType: 'dual',
format: 'both',
onProgress: (progress) => {
console.log(`${progress.percent}% - ${progress.stage}`);
}
});
console.log('Готово:', result.manifestPath);