FFmpeg M3U8 в MP4 [Полное руководство 2026]

Практическое руководство 2026 по преобразованию streaming playlists в MP4 с FFmpeg.

Содержание

  • FFmpeg: введение и установка
  • Базовые команды
  • Расширенные параметры
  • Частые проблемы и решения
  • Batch scripts
  • Онлайн-альтернативы

Введение

Научитесь конвертировать M3U8/HLS playlists в MP4 с помощью FFmpeg: установка, основные команды, настройка качества и troubleshooting.

Требования

  • Установленный FFmpeg
  • Доступный M3U8 URL или локальный файл
  • Базовые навыки command line

Установка FFmpeg

Windows

  1. Скачайте свежую версию с ffmpeg.org.
  2. Распакуйте архив в C:\\ffmpeg.
  3. Добавьте C:\\ffmpeg\\bin в PATH.

macOS

brew install ffmpeg

Linux (Ubuntu/Debian)

sudo apt install ffmpeg

Базовые команды

Простое копирование (самое быстрое)

ffmpeg -i "https://example.com/playlist.m3u8" -c copy output.mp4

-c copy сохраняет исходные аудио/видео codecs и работает быстрее всего, если MP4 container их поддерживает.

Re-encode для совместимости

ffmpeg -i input.m3u8 -c:v libx264 -c:a aac output.mp4

H.264 video и AAC audio дают максимальную совместимость с browsers, TV и mobile devices.

Расширенные параметры

Высокое качество

ffmpeg -i input.m3u8 -c:v libx264 -crf 18 -preset slow output.mp4

Параметр -crf управляет качеством: ниже значение — выше качество. Preset slow улучшает сжатие.

Быстрая конвертация с bitstream filter

ffmpeg -i input.m3u8 -c copy -bsf:a aac_adtstoasc output.mp4

aac_adtstoasc делает AAC в ADTS совместимым с MP4 без полного re-encode.

Пользовательское разрешение

ffmpeg -i input.m3u8 -s 1920x1080 -c:v libx264 -c:a copy output.mp4

Используйте -s для масштабирования видео и copy для аудио, если его менять не нужно.

Частые проблемы и решения

CORS или Referer errors

Добавьте нужные headers при запросе protected playlists.

ffmpeg -headers "Referer: https://example.com" -i playlist.m3u8 -c copy output.mp4

Protocol not supported

ffmpeg -protocol_whitelist file,http,https,tcp,tls -i playlist.m3u8 -c copy output.mp4

Network timeouts

ffmpeg -timeout 10000000 -i playlist.m3u8 -c copy output.mp4

Batch conversion scripts

Bash script

#!/bin/bash
for file in *.m3u8; do
  ffmpeg -i "$file" -c copy "${file%.m3u8}.mp4"
done

Windows Batch

for %%f in (*.m3u8) do ffmpeg -i "%%f" -c copy "%%~nf.mp4"

Онлайн-альтернатива

Нужен browser workflow? Используйте наш онлайн M3U8 to MP4 converter с прогрессом, batch queue и без локальной установки.

FAQ

Почему conversion fails? Проверьте network access, protocol whitelist и отсутствие DRM.

Как сохранить quality? Используйте -c copy, если целевое устройство поддерживает исходные codecs.

Можно ли записывать live streams? Да. Добавьте -t 3600, чтобы ограничить запись одним часом.

Итог

FFmpeg дает точный контроль M3U8 to MP4 conversion. Для быстрого варианта откройте онлайн converter прямо в браузере.