【ffmpeg命令】制作一个属于你自己的动图表情包

文章目录

  • 前言
  • 如何制作一个动态表情包
  • 制作动图表情包
    • 转换分辨率
    • 减少帧率
    • 截取主要内容
    • 转换为gif动图
    • 去除水印
  • 最终结果
  • 总结


前言

在数字时代,动图表情包已经成为我们日常交流的重要组成部分。它们富有表现力,能够传达出我们无法用语言表述的情感和信息。然而,市面上的表情包并不能满足我们所有的需求。有时候,我们可能想要创建一些个性化的、独一无二的表情包。这就是我们今天要讨论的主题:如何使用FFmpeg命令制作属于你自己的动图表情包。


如何制作一个动态表情包

  1. 我们需要先下载你需要制作的视频
  2. 把它转换为低分辨率的视频,如:360P,以减少内存消耗
  3. 把它的帧率转换到更低,以减少内存消耗
  4. 截取视频中你需要的内容
  5. 把它转换为gif格式

制作动图表情包

下载我这里就不演示了

转换分辨率

转换分辨率可以使用简单滤波即可,我们使用scale=x:y即可改变
如果要变成360P则是宽为360像素,则y写360,x填写-1时,宽度会自动调整

ffmpeg -i test2.mp4 -vf "yadif,scale=-1:360" out.mp4

可以看到占用内存大幅减少:
在这里插入图片描述
在这里插入图片描述

减少帧率

我们可以把他减少到10~15FPS,这样就可以减少内存占用了

ffmpeg -i out.mp4 -r 10 out2.mp4

在这里插入图片描述
这样操作完就只有2MB了,但这还是太大了

截取主要内容

我们可以使用-ss表示开始的时间,-t表示介绍的时间,格式为:xx:xx:xx
然后因为我们还是转换为mp4,所以可以使用复制流

比如我截取前10s的内容:

ffmpeg -i out2.mp4 -ss 00:00:00 -t 00:00:10 -c copy out3.mp4

这下它的内存就非常小了:
在这里插入图片描述

转换为gif动图

非常简单,直接转换就行了:

ffmpeg -i out3.mp4 result.gif

最后我们的动图就出来了:
在这里插入图片描述
我们可以发现它变成大了
在这里插入图片描述
这是因为普通的视频格式它是会压缩的,但是gif没有压缩,就只是一堆图片而已,所以它会比普通的视频大(在所有情况相同下)

我们还可以再缩小它,缩小成360P的一半:

ffmpeg -i result.gif -vf "scale=320:180" result2.gif

在这里插入图片描述
可以看到它的大小再次缩减

去除水印

如果你要求更高,你还可以去除水印,使用的也是过滤:
使用delogo=x=...:y=xxx:w=...:h=...进行去除水印

ffmpeg -i result2.gif -vf "delogo=x=10:y=10:w=100:h=20" result3.gif

最终结果

在这里插入图片描述
在这里插入图片描述


总结

通过本文,我们学习了如何使用FFmpeg命令制作动图表情包。这个过程虽然涉及到一些技术细节,但只要掌握了基本的命令和步骤,就可以轻松制作出属于自己的表情包。无论你是想要为你的社交媒体增添一些个性化的元素,还是想要在朋友间分享一些有趣的内容,自制的动图表情包都是一个不错的选择。希望你能在这个过程中找到乐趣,也期待看到你制作的精彩表情包!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3246965.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

LangChain-v0.2 Build an Agent 构建代理

语言模型本身不能采取行动,它们只是输出文本。LangChain的一个重要用例是创建代理。代理是使用LLM作为推理引擎来确定要采取哪些行动,以及传递哪些输入的系统。执行操作后,可以将结果反馈到LLM中,以确定是否需要更多操作&#xff…

博客前端项目学习day01

这里写自定义目录标题 登录创建项目配置环境变量,方便使用登录页面验证码登陆表单 在VScode上写前端,采用vue3。 登录 创建项目 检查node版本 node -v 创建一个新的项目 npm init vitelatest blog-front-admin 中间会弹出询问是否要安装包&#xff0c…

docker容器重启错误解决方案

目录 起因解决方案重启 起因 是这样的,今天客户服务器的服务器突然断电了,原本是配置了自启动的项目,在重启之后发现还是无法登录,然后又看了一眼工控机,欸,这边居然可以,那么问题就直接排除了…

大样本 OLS 模型及 Stata 具体操作步骤

目录 一、引言 二、理论原理 三、小样本 OLS 和大样本 OLS 的区别 四、数据准备 五、程序代码及解释 六、代码运行结果 一、引言 在统计学和计量经济学中,普通最小二乘法(Ordinary Least Squares,OLS)是一种广泛应用的线性回…

QT-RTSP相机监控视频流

QT-RTSP相机监控视频流 一、演示效果二、关键程序三、下载链接 一、演示效果 二、关键程序 #include "mainwindow.h"#include <QDebug>MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_settings("outSmart", "LiveWatcher&…

为什么品牌需要做 IP 形象?

品牌做IP形象的原因有多方面&#xff0c;这些原因共同构成了IP形象在品牌建设中的重要性和价值&#xff0c;主要原因有以下几个方面&#xff1a; 增强品牌识别度与记忆点&#xff1a; IP形象作为品牌的视觉符号&#xff0c;具有独特性和辨识性&#xff0c;能够在消费者心中留…

CSA笔记2-文件管理命令

tree 以树状图显示多级目录 示例&#xff1a; [rootlocalhost ~]# tree haha/ haha/ └── 111 └── 222 2 directories, 0 files [rootlocalhost ~]# tree -L 1 haha/haha/ └── 111 echo > >> < << 示例&#xff1a; [rootxxx ~]#…

【ACM 独立出版,高录用EI稳检索】2024年大数据与数字化管理国际学术会议 (ICBDDM 2024,8月16-18)

2024年大数据与数字化管理国际学术会议 (ICBDDM 2024)&#xff0c;将于2024年8月16-18日在中国上海召开。 “大数据与数字化管理”作为会议主题&#xff0c;旨在聚焦这一跨学科领域中最新的理论研究、技术进展、实践案例和未来趋势。本主题探讨的研究方向涵盖了大数据的收集、…

国家炮制规范-中药饮片炮制规范数据库

2022年12月21日&#xff0c;国家药监局实施了国家药典委员会制定的《国家中药饮片炮制规范》&#xff08;简称《国家炮制规范》&#xff09;&#xff0c;属于中药饮片的国家药品标准&#xff0c;各省需废止与其品名、来源、炮制方法、规格均相同品种的省级中药饮片炮制规范。这…

2024河南萌新联赛第一场 D 小蓝的二进制询问

原题链接&#xff1a;D-小蓝的二进制询问 题意&#xff1a;思路&#xff1a;对于从[l,r]上的数&#xff0c;可以先算出从[0,r]的所有二进制1然后减去[0,l]的所有二进制1。思考如何计算&#xff0c;从样例中给出的5来思考&#xff0c;[0,5]的二进制表示分别为&#xff1a;000&a…

力扣经典题目之->用栈实现队列 的详细讲解与实现,看这篇就够了!

一&#xff1a;题目 二&#xff1a;思路 1&#xff1a;先看两个概念&#xff1a; 2&#xff1a;题目的理解 用两个栈来实现队列&#xff08;表面&#xff09; 用栈的函数来实队列&#xff08;深层&#xff09; 用先进先出的栈函数 来实现后进先出的队列函数 &#xff08;本…

耐玩单机游戏推荐:文明6 电脑游戏分享

《文明VI》呈现融入世界的新方式&#xff1a;城市现已在版图上扩充疆域&#xff0c;积极研究技术和文化可解锁新潜能&#xff0c;而相互竞争的领导者们也将根据其历史特质追寻自己的新议程&#xff0c;而你也将借助五种方式之一取得游戏的胜利。 系统需求 最低配置: 需要 64 …

自动打电话工具开发需要用到的源代码!

随着移动互联网的飞速发展&#xff0c;自动打电话工具的开发需求日益增加&#xff0c;这类工具能够为用户提供便捷的通信体验&#xff0c;节省时间成本&#xff0c;提高生活效率。 然而&#xff0c;要实现自动打电话的功能&#xff0c;并非易事&#xff0c;本文将科普自动打电…

效率飙升!用升级版思维导图搞定测试用例

Xmind思维导图&#xff1c;转&#xff1e;测试用例_如何将xmind改成测试用例-CSDN博客https://weiyv.blog.csdn.net/article/details/135920569 上一次的【xmind思维导图转测试用例】的文章浏览量飙升&#xff0c;这一次把工具又进行升级啦&#xff0c;是在线版的免费工具哦&am…

leetcode日记(42)螺旋矩阵

我使用的是递归&#xff0c;每次递归遍历一圈矩阵&#xff0c;将遍历结果塞进结果vector中&#xff0c;每次遍历修改上下左右边界&#xff0c;直至遍历后其中两边界重合或交错。 class Solution { public:vector<int> spiralOrder(vector<vector<int>>&…

Photoneo 3D 网格划分

Photoneo 3D 网格划分是一种多功能软件解决方案&#xff0c;专为快速、精确的 3D 模型而设计 从多个 3D 扫描或来自 Photoneo 3D 传感器的连续 3D 数据流创建。它 旨在实现适用于各种应用的高级 3D 数据采集&#xff0c;例如 机器人引导、质量检查和逆向工程。 它以两个单独的库…

HarmonyOS 开发者联盟高级认证最新题库

本篇文章包含 Next 版本更新后高级认证题库中95%的题目。 答案正确率 50-60%&#xff0c;答案仅做参考。 请在考试前重点看一遍题目&#xff0c;勿要盲目抄答案。 欢迎在评论留言正确答案和未整理的题目。 1、下面关于方舟字节码格式PREF_IMM16_v8_v8描述正确的是 16位前缀操作…

OSU!题解(概率dp)

题目&#xff1a;OSU! - 洛谷 思路&#xff1a; 设E()表示截止到i所获得的分数&#xff1b; 对于到i点的每一个l&#xff0c;如果第i1点为1&#xff0c;那么会新增分数3*l^23*l1; 就有递推公式方程&#xff1a; E()E()p[i1]p*(3*l^23*l1);(p代表截止到i获得长度l的概率)&a…

C++ :友元类

友元类的概念和使用 (1)将类A声明为B中的friend class后&#xff0c;则A中所有成员函数都成为类B的友元函数了 (2)代码实战&#xff1a;友元类的定义和使用友元类是单向的 (3)友元类是单向的&#xff0c;代码实战验证 互为友元类 (1)2个类可以互为友元类&#xff0c;代码实战…

刷题了:数组理论基础,704. 二分查找,27. 移除元素

学习记录&#xff0c;主要参考&#xff1a;代码随想录 数组理论基础 数组是存放在连续内存空间上的相同类型数据的集合。 数组下标都是从0开始的 数组的元素是不能删的&#xff0c;只能覆盖。 704. 二分查找 要熟悉 根据 左闭右开&#xff0c;左闭右闭 两种区间规则 写出来…