利用[TMPGEnc 4.0 XPress] 或 [TMPGEnc Video Mastering Works 5] 生成 AVI
这个视频编辑软件,可对每个帧进行操作1.生成每个帧的 PNG
ffmpeg -y -ss 5 -t 3 -i "01.avi" -s 320x132 -an -f image2 "./png/output_%%05d.png"-y        覆盖原有的文件-ss       开始位置秒 或 hh:mm:ss[.xxx]-t        总时间秒数 或 hh:mm:ss[.xxx] 格式-i        输入的视频 -s        要生成 png 图片大小-an       忽略声道信息-f image2 图像文件流合并写入视频帧的图像文件 在win系统中必须[%%]才可以2.根据 png 生成 GIF(dos命令中有 convert 命令,所以convert.exe 改名为 iconvert.exe)
iconvert -quiet -delay 3 ./png/*.png -resize 190x94 -ordered-dither o8x8,23 +map out_od2.gif-quiet    抑制所有警告消息-delay    gif 帧之间延时时间,单位毫秒[这个选项必须在输入文件名前面时才有效]-resize   调整 gif 大小-ordered-dither 使用一个统一的颜色通道,减小 gif 文件大小例子中这样生成的 gif 大小为 (795,001 字节)3.生成 gif 进行优化
iconvert out_od2.gif  -layers OptimizeTransparency +map out_opt.gif-layers   OptimizeTransparency 使用透明颜色,减少 gif 文件大小例子中优化后 gif 大小为 (633,112 字节)注:
也可以以下命令
iconvert -delay 3 ./png/*.png -resize 190x94 -layers optimize out_od1.gif例子中这样生成的 gif 大小为 (733,827 字节)
iconvert out_od1.gif  -layers OptimizeTransparency +map out_opt1.gif例子中优化后 gif 大小为 (628,188 字节)或者直接使用avi->gifconvert -quiet -delay 3 01.avi -ordered-dither o8x8,23 +map out_od2.gif
利用png生成gif时,操作比较麻烦,但是对不需要的帧图进行删除;
直接avi->gif操作简单,但是还需要第三方软件进行编辑;

Download ImageMagick 
ImageMagick help 
ImageMagick Usage help 
ImageMagick convert help
Download ffmpeg 
ffmpeg help

转载于:https://www.cnblogs.com/nlsoft/p/3433199.html

利用 FFmpeg 和 ImageMagick, AVI 转 GIF(不失真)相关推荐

  1. 利用ffmpeg压缩屏幕图像为avi(录屏、压制)

    看了雷神关于ffmpeg方面的文章,结合自己最近做的一个基与cdc抓屏.vfw压制的录屏工具,就想改为采用ffmpeg来压制avi. 关于如何用ffmpeg压制视频相信大家都有一些见解,这里写这篇文章 ...

  2. 记录一下利用ffmpeg将avi转为mp4

    ffmpeg -i .\Video.avi -c copy -map 0 video.mp4 或 ffmpeg -i .\Video.avi -c:v libx264 -crf 19 -preset ...

  3. 利用FFmpeg将视频格式.avi转换成.yuv形式

    ffmpeg -i 视频名.avi -pix_fmt yuv420p -s 1280x720 -ss 00:00:03 -t 00:00:01 -y 视频名.yuv 其中-pix_fmt yuv420 ...

  4. 如何利用ffmpeg提供的API函数进行多媒体文件的解封装

    多媒体已经无处不在,程序员必须知道的一些多媒体封装知识 如何利用ffmpeg提供的API函数进行多媒体文件的解封装. 上一篇文章我们搭好了环境并编译出所需的ffmpeg库,本篇我们讨论如何利用ffmp ...

  5. PHP中利用Ffmpeg获得flv视频缩略图和播放时间

    为什么80%的码农都做不了架构师?>>>    这里简单说一下:FFmpeg是用于录制.转换和流化音频和视频的完整解决方案,一套领先的音/视频编解码类库.官方正式版ffmpeg不支持 ...

  6. Java 利用ffmpeg工具实现视频MP4转m3u8

    Java 利用ffmpeg工具实现视频MP4转m3u8(一) 前言 (一)ffmpeg工具转码 1.如何安装ffmpeg工具 2.如何使用ffmpeg工具进行视频转码 (二)播放m3u8文件 1.vi ...

  7. 利用 FFMPEG 批量提取指定起止时间视频片段

    前言 最近有一批视频数据待处理,将视频中有表情部分得视频片段提取出来, 由于视频并不是连续的,人工处理起来非常耗费时间,经过一番研究,终于实现了功能. 环境准备 确保自己本地计算机安装好了 FFMPE ...

  8. 利用 FFmpeg 进行简单的音频拼接 降噪 合成

    ** 利用 FFmpeg 进行简单的音频拼接 降噪 合成 ** 项目需要M4a 格式的音频拼接,由于 m4a 不能像 mp3 直接以流的方式进行拼接,所以简单学习了一下 FFmepeg .在这里分享一 ...

  9. 利用ffmpeg实现rtmp推流

    https://www.jianshu.com/p/c141fc7881e7 ffmpeg 常见命令功能: 查看电脑设备:     ffmpeg -list_devices true -f dshow ...

最新文章

  1. MYSQL体系结构-来自期刊
  2. 年终总结 | 2021红包点赞?(文末有刺激的福利哦)
  3. 直播 | AAAI 2021:文本对抗攻防中的对抗训练方法
  4. 软件过程与项目管理第四周作业
  5. SAP UI5 new sap.ui.commons.Button trigger component load
  6. android 多个复选框,Android UI控件之CheckBox(复选框、多选框)
  7. 【Visual C++】游戏开发笔记十九 DirectX与OpenGL的博弈
  8. JAVA增删查改的实现
  9. Data Member 的绑定
  10. JS操作保存cookie(转载他人)
  11. Start Developing iOS Apps Today系列(二)
  12. python手写数字识别实验报告_机器学习python实战之手写数字识别
  13. android 音频设备类型,实现车载音频 HAL  |  Android 开源项目  |  Android Open Source Project...
  14. MYsql源码及其剖析
  15. Aircrack-ng套件_无线网卡破解
  16. linux美元符号切换为井号,struts2 (# % $)井号,百分号,美元符号的含义和使用方法举例...
  17. 大龄码农的新西兰移民之路
  18. 读书笔记:《重来REWORK》
  19. char int word long的大小
  20. 微软:欧洲美国Windows10安装率超Win7

热门文章

  1. 第十四届蓝桥杯大赛软件赛省赛(C/C++ 大学C组)
  2. GNU/Linux 刷新DNS缓存
  3. 经典面试英语口语大全
  4. 电脑外置,笔记本电脑怎么外接显卡 笔记本外接显卡方法【详解】
  5. VS2010开发MFC时工具箱中控件不见了的解决方法
  6. 简单的Python编程范例
  7. Win10 怎么给php文件设置默认打开应用
  8. 【Gradle-2】一文搞懂Gradle配置
  9. CSS的强大之CSS中的变量
  10. dfs、bfs时候染色算法和直接传一个visited两种方法