图片生成视频-右进

右侧进入

复制代码
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
相关推荐
hh随便起个名8 分钟前
力扣二叉树的三种遍历
javascript·数据结构·算法·leetcode
我是小路路呀1 小时前
element级联选择器:已选中一个二级节点,随后又点击了一个一级节点(仅浏览,未确认选择),此时下拉框失去焦点并关闭
javascript·vue.js·elementui
程序员爱钓鱼1 小时前
Node.js 编程实战:文件读写操作
前端·后端·node.js
PineappleCoder1 小时前
工程化必备!SVG 雪碧图的最佳实践:ID 引用 + 缓存友好,无需手动算坐标
前端·性能优化
JIngJaneIL2 小时前
基于springboot + vue古城景区管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
敲敲了个代码2 小时前
隐式类型转换:哈基米 == 猫 ? true :false
开发语言·前端·javascript·学习·面试·web
澄江静如练_2 小时前
列表渲染(v-for)
前端·javascript·vue.js
JustHappy2 小时前
「chrome extensions🛠️」我写了一个超级简单的浏览器插件Vue开发模板
前端·javascript·github
Loo国昌2 小时前
Vue 3 前端工程化:架构、核心原理与生产实践
前端·vue.js·架构