ffmpeg 多张图片转视频,视频转gif,截取视频,截取视频里的帧

月色下的独轮车

于 2017-06-20 17:32:01 发布

6250
收藏 3
文章标签: ffmpeg
版权

android学习笔记
专栏收录该内容
190 篇文章1 订阅
订阅专栏
ffmpeg 是一个强大的处理视频命令库。

百度百科:FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。

总之我们可以使用ffmpeg来很方便的处理各种格式的视频或者图片。

我在工作中用到过以下命令:

1、多张图片合成mp4格式的视频
ffmpeg -f image2 -r 1 -i /storage/emulated/0/DCIM/dateme/vframe/yiba_frame_%02d.png -vcodec mpeg4 /storage/emulated/0/DCIM/dateme/video/yiba_v_1497949606343.mp4
1
注意:
1、-r 1必须放在-i 前面不然生成的视频时长会有问题。-r 1表示每秒1帧,这样我的6张图片生成的视频时间长度就是6s。
2、%02d表示我的文件名是01、02、03这样由两位整数组成的数字。具体每一个文件名就是yiba_frame_01.png,yiba_frame_02.png,yiba_frame_03.png。。。。。。
3、-vcodec mpeg4 表示使用mpeg4编码标准,因为我要输出mp4格式的文件,如果不加这个参数也会出错。(亲测)

以上命令亲测可用。

2、每隔一秒钟截取一帧图片
命令:

ffmpeg -i /storage/emulated/0/DCIM/dateme/video/yiba_v_1497949588158.mp4 -ss 00:00 -t 10 -r 1 -f image2 -vf fps=fps=1 /storage/emulated/0/DCIM/dateme/vframe/yiba_frame_%02d.png
1
提示:
1、-i 后面跟输入文件路径
2、-ss 后面跟开始截图的时间 -t 表示截取的视频长度为10s
3、-vf fps=fps=1 表示截图频率为每秒1帧(和-r 1的作用是一样的,所以可以去掉r 1)
4、-f image2表示输入或输出文件的格式是image2格式,f是format格式的意思

3、截取视频前3秒 并转化为gif
ffmpeg -ss 00:00:01 -t 3 -i /storage/emulated/0/DCIM/dateme/video/yiba_v_1497949777519.mp4 -vf crop=iw:ih*2/3 -s 320x240 -r 7 /storage/emulated/0/DCIM/dateme/gif/yiba_gif_1497949820078.gif
1
提示:

1、-ss 00:00:01表示从视频第一秒开始截取
2、- t 表示截图3秒钟的视频
3、-vf crop=iw:ih*2/3 表示截取视频的部分区域,其中宽为视频宽度,高为原视频的2/3
4、-r 7 表示每秒帧率为7帧
5、最后直接加上要生成的gif的路径就会把截取好的视频输出为gif了。

特别提示:
由于我对ffmpeg不了解,以上命令都是我在工作中摸索出来的,在我的项目里使用是没有问题的,大家可以作为参考,如果有说的不对的地方请留言告诉我哦,(^__^)

附上ffmpeg的一个文档,内容为英文。可以用来参考:

ffmpeg Documentation
https://ffmpeg.org/ffmpeg.html#Video-and-Audio-file-format-conversion
————————————————
版权声明:本文为CSDN博主「月色下的独轮车」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/baidu_31093133/article/details/73504185

fmpeg 多张图片转视频,视频转gif,截取视频,截取视频里的帧的更多相关文章

  1. javaCV开发详解之2:推流器实现,推本地摄像头视频到流媒体服务器以及摄像头录制视频功能实现(基于javaCV-FFMPEG、javaCV-openCV)

    javaCV系列文章: javacv开发详解之1:调用本机摄像头视频 javaCV开发详解之2:推流器实现,推本地摄像头视频到流媒体服务器以及摄像头录制视频功能实现(基于javaCV-FFMPEG.j ...

  2. 【小程序开放激励视频】--wepy小程序添加激励视频

    小程序开放激励视频是对小程序开发者一个福音,小程序开发者可以完成一些变现,以增加收入! 本文章针对已经有开发经验或者正在进行小程序开发的同学~ 官方文档:激励视频广告 定义页面变量,用于创建视频实例 ...

  3. ffmpeg截取一段视频中一段视频

    ffmpeg  -i ./plutopr.mp4 -vcodec copy -acodec copy -ss 00:00:10 -to 00:00:15 ./cutout1.mp4 -y -ss ti ...

  4. 阿里云视频云正式支持AV1编码格式 为视频编码服务降本提效

    今天我们要说的 AV1 可不是我们平时说的 .AVI 文件格式,它是由AOM(Alliance for Open Media,开放媒体联盟)制定的一个开源.免版权费的视频编码格式,可以解决H.265昂 ...

  5. 工作记录--使用FFmpeg将一个视频文件中音频合成到另一个视频中

    由于工作需要,临时被老大吩咐去研究一个FFmpeg工具,通过linux命令行去将一个视频中的音频提取出来并合成到另一个视频中,最终的效果是要保证2个视频中的音频都在一个视频中播放. 但是本人对FFmp ...

  6. JS截取腾讯视频和去除视频广告

    一:腾讯视频截取 H5视频播放除了video标签以外,还有iframe嵌套视频 项目需求是用户输入腾讯视频的html链接,如 https://v.qq.com/x/page/y0116k2vspw.h ...

  7. 解决UEditor编辑时,只添加视频内容,不添加文字,视频信息不能保存到数据库的问题

    造成这个问题的原因是富文本保存内容时会筛除空标签,然后统计是否有内容,通过字数统计也可以看到,上传完视频后字数还是零,因为视频上传后是<video></video>标签,这个标 ...

  8. ffmpeg实现视频文件合并/截取预览视频/抽取音频/crop(裁剪)(ffmpeg4.2.2)

    一,ffmpeg的安装 请参见: https://www.cnblogs.com/architectforest/p/12807683.html 说明:刘宏缔的架构森林是一个专注架构的博客,地址:ht ...

  9. Python音视频开发:消除抖音短视频Logo的图形化工具实现

    ☞ ░ 前往老猿Python博文目录 ░ 一.引言 在<Python音视频开发:消除抖音短视频Logo和去电视台标的实现详解>节介绍了怎么通过Python+Moviepy+OpenCV实现 ...

  10. Python音视频开发:消除抖音短视频Logo和去电视台标

    ☞ ░ 前往老猿Python博文目录 ░ 一.引言 对于带Logo(如抖音Logo.电视台标)的视频,有三种方案进行Logo消除: 直接将对应区域用对应图像替换: 直接将对应区域模糊化: 通过变换将要 ...

随机推荐

  1. 【了解LLM】——LoRA

    本文地址:https://www.cnblogs.com/wanger-sjtu/p/17470327.html 论文链接:link code: github 什么是LoRA LoRA,英文全称Low ...

  2. React后台管理系统 03全局样式scss

    安装scss样式依赖,使用命令 npm i --save-dev sass  --dev 会将依赖安装在devDependencies=>开发环境的依赖. 我们在src目录下的assets下创建 ...

  3. Java 判断一个字符串是否是对称字符串 例如"abc"不是对称字符串,"aba"、"abba"、"aaa"、"mnanm"是对称字符串

    代码如下: public static void main(String[] args) { String str = "1QabcdcbaQ"; StringBuilder sb ...

  4. 离线安装mysql报错解决方法:/usr/sbin/mysqld: error while loading shared libraries: libaio.so.1: cannot open sha --九五小庞

    Linux:centos 7.6 64位 mysql:5.6使用离线方式安装:rpm -ivh --nodeps mysql* ,执行 systemctl start mysqld.service发现 ...

  5. 曲线艺术编程 coding curves 第十四章 其它曲线(Miscellaneous Curves)

    第十四章 其它曲线(Miscellaneous Curves) 原作:Keith Peters https://www.bit-101.com/blog/2022/11/coding-curves/ ...

  6. 实例讲解看nsenter带你“上帝视角”看网络

    摘要:本文重点关注进入目标进程的"网络ns"视角,即站在「容器中的进程视角」看待容器里面的网络世界,并在那个视角中执行命令. 本文分享自华为云社区<<跟唐老师学习云网络 ...

  7. 向量数据库Faiss的搭建与使用

    向量数据库Faiss是Facebook AI研究院开发的一种高效的相似性搜索和聚类的库.它能够快速处理大规模数据,并且支持在高维空间中进行相似性搜索.本文将介绍如何搭建Faiss环境并提供一个简单的使 ...

  8. 【Mybatis】动态SQL

    目录 动态SQL if语句 动态SQL if+where语句 动态SQL if+set语句 动态SQL choose(when,otherwise)语句 动态SQL trim语句 动态SQL SQL片 ...

  9. 开发自己的Prometheus Exporter、实现自定义指标

    Prometheus Exporter基础知识 Prometheus Exporter的概念.工作原理  Prometheus Exporter是一个用来收集和暴露指标数据的工具,通过与Prometh ...

  10. C语言基础--字符串

    文章目录 前言 一.数组 1.一维数组的创建 2.数组的索引 3.数组的调用 3.1 单个输出 3.2多个输出 二.字符串的创建 1.字符串的创建 2.字符串的输出 三.总结 前言 C语言中,有整型. ...