ffmpeg кодирование mp4
Подходит для телеги (mov)
С указанием битрейта и простым копированием звука
ffmpeg -i inputfile -c:v libx264 -b:v 1500k -c:a copy outfile.mov
С указанием качества и кодированием звука в mp3
ffmpeg -i inputfile -c:v libx264 -crf 16 -codec:a libmp3lame -qscale:a 4 outfile.mov
Чем выше параметр -crf тем ниже качество видео и меньше размер файла.
Аналогично, чем выше параметр -qscale тем ниже качество звука и меньше размер файла.
Подходит для показа в браузере chromium (webm)
С указанием качества и кодированием звука
OPTS=-c:v libvpx -b:v 0 -crf 16 -codec:a libvorbis -ac 2 -b:a 160k ffmpeg -i inputfile $OPTS outfile.webm
Чем выше параметр -crf тем ниже качество видео и меньше размер файла.
Параметр -b:a - битрейт аудио.
Кодирование видео снятого с экрана
ffmpeg -i inputfile -c:v libx264 -tune stillimage -preset slower -crf 16 -codec:a libmp3lame -qscale:a 4 outfile.mp4
Включение субтитров
ffmpeg -i inputfile -filter:v subtitles=subtitles.srt -c:v libx264 -crf 16 -codec:a libmp3lame -qscale:a 4 outfile.mp4
В имени файла субтитров нежелательны пробелы (по крайней мере для версии под Windows).
Более подробно о субтитрах в ffmpeg.
Видео из одного файла, звук из отдельного
# копирование данных без перекодирования ffmpeg -i input_video.mov -i input_audio.mp3 -c:v copy -c:a copy -map 0:v:0 -map 1:a:0 outfile.mp4 # перекодирование видео, копирование звука ffmpeg -i input_video.mov -i input_audio.mp3 -c:v libx264 -crf 20 -c:a copy -map 0:v:0 -map 1:a:0 outfile.mp4