Видео эффекты исчезают между кадрами



Я хочу создать слайд-шоу из моих изображений с переходами fade in & fade out между ними, и я использую ffmpeg fade filter.



Если я использую команду:



ffmpeg -i input.mp4 "fade=in:5:8" output.mp4


Чтобы создать выходное видео с эффектом затухания, затем он дает выходное видео с первыми 5 кадрами черного цвета, а затем изображения отображаются с эффектом затухания, но я хочу эффект затухания:in: out между сменой кадров.



Как я могу это сделать?



Пожалуйста, скажите решение для Centos server, потому что я использую FFmpeg на этом только сервер

579   3  

3 ответов:

Чтобы создать видео с эффектом затухания, просто разбейте видео на части и создайте отдельные видео для каждого изображения. Например, если у вас есть 5 изображений, то сначала создайте 50-60 копий каждого изображения и получите видео для этого:

  $command= "ffmpeg -r 20 -i images/%d.jpg -y -s 320x240 -aspect 4:3 slideshow/frame.mp4";
  exec($command." 2>&1", $output);

Это позволит вам создать 5 различных видео. Затем вам нужно 10-12 различных копий этих пяти изображений и снова создать отдельные видео с эффектами затухания.

ffmpeg -i input.mp4 "fade=in:5:8" output.mp4

После этого у вас будут такие видео, как: video for image 1 и его fade эффект затем для изображения 2 и его эффект затухания и так далее. Теперь объедините эти видео в соответствующем порядке, чтобы получить все видео.

Для объединения видео вам нужно:

$command = "cat pass.mpg slideshow/frame.mpg > final.mpg";

Это означает, что вы соединяете видео с помощью cat, а затем вам нужно преобразовать их в mpg, соединить их и снова преобразовать их в mp4 или avi, чтобы просмотреть их должным образом. Кроме того, преобразованные mpg видео не будет правильным, так что не беспокойтесь. Когда вы преобразуете их в mp4, это будет работать нормально.

Вы можете использовать gifblender для создания смешанных промежуточных кадров из ваших изображений, а затем конвертировать их в фильм с помощью ffmpeg.

Вы можете создать слайд-шоу с перекрестными штрихами между изображениями, используя фильтр частоты кадров. В следующем примере 0,25-это частота кадров, используемая для чтения изображений, в данном случае 4 секунды для каждого изображения. Параметр fps задает выходную частоту кадров. Параметры interp_start и interp_end можно использовать для изменения эффекта затухания: interp_start=128: interp_end=128 означает отсутствие затухания вообще. interp_start=0: interp_end=255 означает непрерывное затухание. Когда одна картинка потускнела и следующая картина полностью исчезла, третья картина немедленно начнет исчезать. Нет паузы для показа второй картины. interp_start=64: interp_end=191 означает, что половина времени-это пауза для показа картинок, а другая половина-затухание. К сожалению, это не будет полное затухание от 0 до 100%, а только от 25% до 75%. Это не совсем то, что вы могли бы хотеть, но лучше, чем вообще не исчезать.

Ffmpeg-частота кадров 0.25-i IMG_%3d.jpg -ВФ "частота=ФПС=30:interp_start=64:interp_end=192:сцена=100" тест.МР4

Comments

    Ничего не найдено.