Вернуться назад

kdenlive

Дефолтные пресеты в программе не редактируются. Если я хочу подправить дефолтный пресет, то его нужно сначала скопировать. Для этого можно его найти по имени в файле /usr/share/kdenlive/export/profiles.xml и вставить внутрь тега <profiles> в файл ~/.local/share/kdenlive/export/customprofiles.xml.

Горячие клавиши

Как выровнить звук. дорожку

У нас есть кусок видео, который мы покрамсали и кусок аудио, который изначально был привязан к этому видео, но потом мы его сдвигали много раз и изначальная привязка потерялась. Как вернуть им изначальную синхронизацию?

Параметры кодека FFmpeg

Если выбрать формат MP4-H264/AAC, то в окне рендера в самом низу есть текстовое поле со строкой:

ab=160k acodec=aac channels=2 crf=23 f=mp4 g=15 movflags=+faststart preset=veryfast real_time=-1 threads=0 vcodec=libx264

Это параметры кодека FFmpeg, которые Kdenlive передаёт кодировщику FFmpeg. Она полностью описывает как будет сжиматься видео и звук.

Она же в развёрнутом виде:

ab=160k
acodec=aac
channels=2
crf=23
f=mp4
g=15
movflags=+faststart
preset=veryfast
real_time=-1
threads=0
vcodec=libx264

Для уменьшения размера конечного файла можно посоветовать: поменять CRF на 26 или на 27, поменять preset на medium. И ещё можно использовать кодек H.265. Он может уменьшить размер в 2 раза, но не все старые устройства его поддерживают.

Если мы хотим создать свой собственный пресет, то:

FFmpeg без GUI

Самый простой пример:

ffmpeg -i input.mp4 -c:v libx264 -c:a aac output.mp4
  # -с:v – видео-кодек
  # -c:a – аудио-кодек

Перекодировал очень хорошо. Я взял минутное видео. Kdenlive сжимал у меня его максимум в 19-22 MB, а эта команда сжала файл в 6,9 MB.

Контроль качества (CRF)

ffmpeg -i input.mkv -c:v libx264 -crf 23 -preset medium -c:a aac output.mp4
  # -crf 23 - качество (меньше = лучше)
  # -preset=medium – скорость кодирования

Здесь файл тоже перекодировался в 6,9 MB

Можно комбинировать CRF + Max Bitrate:

ffmpeg -i input.mp4 -c:v libx264 -crf 23 -maxrate 3000k -bufsize 6000k output.mp4
  # maxrate – не даст превышать битрейт
  # bufsize – помогает кодеку распределять поток

  # тут видео получилось 6,8 MB

bufsize — это размер буфера кодека, который используется при переменном битрейте (VBR) или при ограничении максимального битрейта (-maxrate).

Сильное сжатие:

ffmpeg -i input.mp4 -c:v libx265 -crf 28 -preset slow -c:a aac output.mp4

Файл сжался до 4.3 MB.

Популярная команда FFmpeg, которая обычно делает файл на 30-50% меньше, чем стандартное перекодирование:

ffmpeg -i input.mp4 -c:v libx264 -preset slow -crf 23 -c:a aac -b:a 128k output.mp4
  # файл получился 6.9 MB – такой же, как и при дефолтном перекодировании

# То есть эта команда делает то же самое:
ffmpeg -i input.mp4 -c:v libx264 -c:a aac output.mp4
   # по дефолтну только -preset medium вроде бы как, но "slow" ничего особо не поменяло

Посмотреть информацию о файле:

ffmpeg -i filename.mp4

# Или:
ffprobe filename.mp4