Вопрос 1: .mpg
качество плохое
Вы используете кодер mpeg1video, используемый по умолчанию для .mpg
, который выводит очень старый, устаревший формат (видео MPEG-1).Значение битрейта по умолчанию для этого древнего кодера недостаточно для видео современного размера.Если это тот формат, который вы хотите, то добавьте параметр вывода -q:v 3
.Увеличьте значение для меньшего качества.Или выберите битрейт, например -b:v 8000k
(это просто произвольное значение битрейта для демонстрационных целей).
Если MPEG-1 не тот формат, который вам нужен, используйте опцию -c:v
, чтобы выбрать нужный кодер,и / или измените формат выходного контейнера (например, .mkv
или .mp4
).
Пример:
ffmpeg -i inter.mpg -filter_complex "[0]scale=hd1080,setsar=1,boxblur=20:20[b]; [0]scale=-1:1080[v];[b][v]overlay=(W-w)/2" -c:v mpeg2video -q:v 3 inter_1920x1080.mpg
Вопрос 2: Невозможно найти подходящий выходной формат для [0]scale=hd1080...
Вы добавили -c:v
, но не указали фактическое значение, поэтому предполагается, что ваш фильтр-график - это имя кодера, который вы хотите использовать.Правильный пример: -c:v libx264
.
Теперь вы используете .mp4
, поэтому просто опустите -c:v
, потому что он выберет нормальный кодировщик по умолчанию, который будет libx264.Этот кодировщик выводит видео H.264.
libx264 также имеет стандартное значение битрейта по умолчанию, поэтому удалите -b:v 800k
.
Теперь ваша команда должна выглядеть следующим образом:
ffmpeg -i 6691602248444677381.mp4 -filter_complex "[0]scale=hd1080,setsar=1,boxblur=20:20[b]; [0]scale=-1:1080[v];[b][v]overlay=(W-w)/2" output.mp4