图片生成视频-右进

右侧进入

复制代码
ffmpeg -loop 1 -i image.jpg -f lavfi -i color=c=black:s=1280x720:d=20 -filter_complex "[1:v]format=rgba[bg];[0:v]format=rgba,scale=1280:720[img];[bg][img]overlay=x='if(lt(t,3),W,if(lt(t,8),W-(t-3)*W/5,0))':y=(H-h)/2:enable='gte(t,3)'" -c:v libx264 -t 20 -pix_fmt yuv420p output.mp4

命令说明

  1. 输入源

    • -loop 1 -i image.jpg:将静态图片循环为无限帧。
    • -f lavfi -i color=c=black:s=1280x720:d=20:生成一个黑色背景,分辨率为 1280×720,持续 20 秒。
  2. overlay 滤镜

    • x='if(lt(t,3),W,if(lt(t,8),W-(t-3)*W/5,0))'
      • t < 3:图片在右侧画面外,x=W
      • 3 ≤ t < 8:从第 3 秒开始,图片从右侧向左缓慢滑入,x 的位置从 W 逐渐减小到 0
      • t ≥ 8:图片完全显示,停留在 x=0
    • y=(H-h)/2:图片垂直居中显示。
    • enable='gte(t,3)':从第 3 秒开始显示图片。
  3. 视频编码和时长

    • -c:v libx264:指定使用 H.264 编码。
    • -t 20:生成 20 秒的视频。
    • -pix_fmt yuv420p:确保视频兼容性。

效果描述

  1. 视频总时长 20 秒
    • 视频总长度为 20 秒,背景为黑色或自定义背景。
  2. 图片从右侧进入
    • 第 3 秒,图片开始从右侧滑入。
    • 第 8 秒,图片完全进入画面并停留在中央。
  3. 背景保持静止
    • 可根据需要替换背景颜色或使用背景视频。

参数调整建议

  1. 滑入速度

    • 修改 (t-3)*W/5
      • 更快:将 W/5 改为 W/3
      • 更慢:将 W/5 改为 W/8
  2. 图片完全显示的时间

    • 调整 if(lt(t,8),...) 中的时间范围,例如将 8 改为 610
相关推荐
要加油哦~19 分钟前
JS | 知识点总结 - 原型链
开发语言·javascript·原型模式
哆啦A梦15881 小时前
axios 的二次封装
前端·vue.js·node.js
阿珊和她的猫1 小时前
深入理解与手写发布订阅模式
开发语言·前端·javascript·vue.js·ecmascript·状态模式
yinuo1 小时前
一行 CSS 就能搞定!用 writing-mode 轻松实现文字竖排
前端
sishen41992 小时前
2.4 TF卡
音视频
snow@li2 小时前
html5:拖放 / demo / 拖放事件(Drag Events)/ DataTransfer 对象方法
前端·html·拖放
给大佬递杯卡布奇诺2 小时前
FFmpeg 基本API avformat_alloc_context 函数内部调用流程分析
c++·ffmpeg·音视频
爱看书的小沐2 小时前
【小沐杂货铺】基于Three.js渲染三维风力发电机(WebGL、vue、react、WindTurbine)
javascript·vue.js·webgl·three.js·opengl·风力发电机·windturbine
qq_398586542 小时前
Threejs入门学习笔记
javascript·笔记·学习
浪裡遊3 小时前
Nivo图表库全面指南:配置与用法详解
前端·javascript·react.js·node.js·php