Mac使用终端将视频转成gif(gifify)

把在屏幕上的操作录下来,可以使用 OSX 系统自带的 Quicktime,打开以后,在 文件 菜单,选择 新建屏幕录制。

然后你可以选择录制全屏幕,或者只录制截取的部分屏幕。录完以后把视频保存到一个位置上,然后我们可以用一些工作把视频转换成 Gif 动画.

我今天给大家讲讲怎么用终端+命令行的方式实现mov等其他格式到gif的转换。

方法一: 准备工作

安装homebrew

MAC自带, 其他系统安装方法

安装Node.js环境(如果以前已经装好了,这跳过这步):

brew install node

安装FFmpeg

brew install ffmpeg --with-libass --with-fontconfig

如果使用方式二, 下面的步骤可以略过, 直接使用方式二进行转换.

安装convert

brew install imagemagick

安装

brew install giflossy

最后一步安装gifify

npm install -g gifify

检验是否安装成功

终端输入: gifify -h, 输入如下说明安装成功

  Usage: gifify [options] [file]

  Options:

-h, --help              output usage information
-V, --version           output the version number
--colors <n>            Number of colors, up to 255, defaults to 80
--compress <n>          Compression (quality) level, from 0 (no compression) to 100, defaults to 40
--from <position>       Start position, hh:mm:ss or seconds, defaults to 0
--fps <n>               Frames Per Second, defaults to 10
-o, --output <file>     Output file, defaults to stdout
--resize <W:H>          Resize output, use -1 when specifying only width or height. `350:100`, `400:-1`, `-1:200`
--reverse               Reverses movie
--speed <n>             Movie speed, defaults to 1
--subtitles <filepath>  Subtitle filepath to burn to the GIF
--text <string>         Add some text at the bottom of the movie
--to <position>         End position, hh:mm:ss or seconds, defaults to end of movie
--no-loop               Will show every frame once without looping

简单实用方法

进入到你要转换的文件的目录下,比如我的mov文件放在桌面上,执行

cd Desktop/

然后执行

gifify test.mov -o test.gif

方式二(直接使用ffmpeg转换)

将视频 MP4 转化为 GIF

ffmpeg -i small.mp4 small.gif

将视频中的一部分转换为GIF

// 从视频中第二秒开始,截取时长为3秒的片段转化为 gif
ffmpeg -t 3 -ss 00:00:02 -i small.mp4 small-clip.gif

转化高质量 GIF

// 默认转化是中等质量模式,若要转化出高质量的 gif,可以修改比特率
ffmpeg -i small.mp4 -b 2048k small.gif

将 GIF 转化为 MP4

ffmpeg -f gif -i animation.gif animation.mp4

也可以将 gif 转为其他视频格式

ffmpeg -f gif -i animation.gif animation.mpeg
ffmpeg -f gif -i animation.gif animation.webm

加倍速播放视频

ffmpeg -i input.mov -filter:v "setpts=0.5*PTS" output.mov

定义帧率 16fps:

ffmpeg -i input.mov -r 16 -filter:v "setpts=0.125*PTS" -an output.mov

慢倍速播放视频

ffmpeg -i input.mov -filter:v "setpts=2.0*PTS" output.mov

静音视频(移除视频中的音频)

ffmpeg -i input.mov -an mute-output.mov

-an 就是禁止音频输出

视频提取帧

// 将视频提取10帧
ffmpeg -i index.mp4 -r 10 %03d.jpg;

主要参数

-i——设置输入档名。
-f——设置输出格式。
-y——若输出文件已存在时则覆盖文件。
-fs——超过指定的文件大小时则结束转换。
-ss——从指定时间开始转换。
-t从-ss时间开始转换(如-ss 00:00:01.00 -t 00:00:10.00即从00:00:01.00开始到00:00:11.00)。
-title——设置标题。
-timestamp——设置时间戳。
-vsync——增减Frame使影音同步。
视频参数
-b:v——设置视频流量,默认为200Kbit/秒。(单位请引用下方注意事项)
-r——设置帧率值,默认为25。
-s——设置画面的宽与高。
-aspect——设置画面的比例。
-vn——不处理视频,于仅针对声音做处理时使用。
-vcodec( -c:v )——设置视频视频编解码器,未设置时则使用与输入文件相同之编解码器。
声音参数
-b:a——设置每Channel(最近的SVN版为所有Channel的总合)的流量。(单位请引用下方注意事项)
-ar——设置采样率。
-ac——设置声音的Channel数。
-acodec ( -c:a ) ——设置声音编解码器,未设置时与视频相同,使用与输入文件相同之编解码器。
-an——不处理声音,于仅针对视频做处理时使用。
-vol——设置音量大小,256为标准音量。(要设置成两倍音量时则输入512,依此类推。)

参考资料

参考资料

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 207,248评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,681评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,443评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,475评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,458评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,185评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,451评论 3 401
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,112评论 0 261
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,609评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,083评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,163评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,803评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,357评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,357评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,590评论 1 261
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,636评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,925评论 2 344

推荐阅读更多精彩内容

  • 0 概述 FFmpeg是一套领先的音视频多媒体处理开源框架,采用LGPL或GPL许可证。它提供了对音视频的采集、编...
    但行耕者阅读 6,790评论 0 19
  • 转载自:http://einverne.github.io/post/2015/12/ffmpeg-first.h...
    WXL_JIANSHU阅读 769评论 0 6
  • 使用ffmpeg转换视频为gif ffmpeg 是一个自由软件,可以运行音频和视频多种格式的录影、转换、流功能,包...
    97690CE50CC872D阅读 19,620评论 0 8
  • 今夜的我有点难受 像有人在眼眸 投下一片忧愁 想让我回到白昼 黑夜伸出它的双手 假装和我很熟 当我是多年的老友 舍...
    徐四音阅读 148评论 0 1
  • 只需要在namenode节点中安装即可 配置环境变量 将如下内容添加到 ~/.bash_profile中 拷贝my...
    georgeguo阅读 1,460评论 0 0