前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >gif 缩放算法及相关资料

gif 缩放算法及相关资料

作者头像
byronhe
发布于 2021-06-25 03:03:14
发布于 2021-06-25 03:03:14
7390
举报
文章被收录于专栏:Tech ExplorerTech Explorer

http://giflib.sourceforge.net/whatsinagif/index.html

http://giflib.sourceforge.net/whatsinagif/bits_and_bytes.html


https://gif.ski/ gifski 可以从视频生成高质量的 gif


浓缩的才是精华:浅析 GIF 格式图片的存储和压缩 https://cloud.tencent.com/developer/article/1004763

用av1视频替代 gif https://www.singhkays.com/blog/its-time-replace-gifs-with-av1-video

“Replace animated GIFs with video for faster page loads” : https://web.dev/replace-gifs-with-videos/

https://web.dev/efficient-animated-content/

http://blog.pkh.me/p/21-high-quality-gif-with-ffmpeg.html

每帧一个调色板,就可以消除噪点。 https://medium.com/@Peter_UXer/small-sized-and-beautiful-gifs-with-ffmpeg-25c5082ed733

if 本身的算法比较古老压缩率低下,和 h264/h265/vp9 之类的编码算法是没法比的,比如用 h264/VP9 mp4/webm 视频代替 gif,大概可以压缩到原大小的 1/5 ~ 1/10

“Replace animated GIFs with video for faster page loads” : https://web.dev/replace-gifs-with-videos/

《页面加载性能之video替换GIF》: https://www.bilibili.com/read/cv6905954

“用av1视频替代 gif " https://www.singhkays.com/blog/its-time-replace-gifs-with-av1-video


gifsicle https://www.lcdf.org/gifsicle/

查看 gif 文件结构:

1

gifsicle -I input.gif

1

gcc -pthread -DHAVE_CONFIG_H quantize.c merge.c optimize.c gifunopt.c gifwrite.c gifsicle.c clp.c support.c giffunc.c xform.c gifread.c fmalloc.c -I ../include/ -I ../ -lm

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

# gcc -pthread -DHAVE_CONFIG_H quantize.c merge.c optimize.c gifunopt.c gifwrite.c gifsicle.c clp.c support.c giffunc.c xform.c gifread.c fmalloc.c -I ../include/ -I ../ -lm function scale(){ input=$1 time ffmpeg -hide_banner -y -i $input -b 568k -r 20 -vf 'fps=20,scale=w=162:h=-1:flags=lanczos,palettegen ' ${input}.palettegen.png time ffmpeg -hide_banner -y -i $input -i ${input}.palettegen.png -r 15 -lavfi 'fps=15,scale=w=162:h=-1:flags=lanczos[x];[x][1:v]paletteuse' $2 rm -f ${input}.palettegen.png } time ffmpeg -threads 1 -hide_banner -y -i 987.gif -vf 'scale=w=162:h=-1:flags=lanczos ' 987.gif.162.lanczos.gif scale 987.gif 987.gif.162.palettegen.gif gifsicle 987.gif --resize 162x_ -o 987.gif.162.gifsicle.gif #ffmpeg -y -i 987.gif -filter_complex "[0:v] fps=15,scale=w=720:h=-1,split [a][b];[a] palettegen=stats_mode=single [p];[b][p] paletteuse=new=1" avengers3.gif #ffmpeg -y -i 987.gif -filter_complex "[0:v]scale=w=162:h=-1,split [a][b];[a] palettegen=stats_mode=single [p];[b][p] paletteuse=new=1" 987.gif.162.ffmpeg_single.gif ffmpeg -y -i 987.gif -filter_complex "[0:v]scale=w=162:h=-1:flags=lanczos,split [a][b];[a] palettegen=stats_mode=single [p];[b][p] paletteuse=new=1" 987.gif.162.ffmpeg_single.gif time convert 987.gif -resize 162x1620 987.162.gif

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-08-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【FFmpeg】FFmpeg 帮助文档使用
【FFmpeg】FFmpeg 相关术语简介 【FFmpeg】FFmpeg 相关术语简介 二
韩曙亮
2023/03/29
6.6K0
【FFmpeg】FFmpeg 帮助文档使用
FFmpeg从入门到精通-云享读书会
FFmpeg是一款开源软件,用于生成处理多媒体数据的各类库和程序。FFmpeg可以转码、处理视频和图片(调整视频、图片大小,去噪等)、打包、传输及播放视频。作为最受欢迎的视频和图像处理软件,它被来自各行各业的不同公司所广泛使用。
DS小龙哥
2022/10/06
5.4K0
FFmpeg从入门到精通-云享读书会
ffmpeg 生成高质量 gif
GIF(Graphics Interchange Format)是网络中常见的一种图像交互格式,普遍用于表情包。GIF 有很多特点:
xiaoxia
2024/11/29
4540
使用交互式地图和动画可视化伦敦的自行车流动性(下)
上面的代码使用了一种动态的颜色方案,这取决于站点的容量。我们还可以根据每个站点的出发和到达次数,为这些圆形标记实现动态半径方案。我们可以得到我们所称的密度图,显示每个车站的净出发/到达人数。
AiTechYun
2020/02/23
7500
ffmpeg过滤器filter理论与实战
ffmpeg 过滤器,当然也有人称为 ffmpeg 滤镜。(用滤镜听起来好像是给 video 用的,所以不太好,因为 audio 也可以用),ffmpeg 目录下,有个文件夹叫 libavfilter,它可以单独编译为一个库。干嘛用的呢?用于音视频过滤。 比如,我有一个 mp4,想把它缩小一半,输出一个新的 mp4,那么,做缩小动作的,就是 libavfilter。
Gnep@97
2023/12/12
8840
ffmpeg过滤器filter理论与实战
【C++】FFmpeg:音视频库介绍与使用示例
FFmpeg是一款开源的音视频库,提供了处理音视频文件、转码、解码、编码、播放等功能。它是一个完整的跨平台解决方案,支持多种音视频格式,并提供多种API和工具来处理音视频数据。
DevFrank
2024/07/24
6700
浅析 FFmpeg 滤镜 (filter) 原理
 滤镜(filter)是指将未经过处理的原始音频帧(如PCM)或视频帧(如YUV、RGB)经过滤镜器处理后,得到具体“特殊效果”的音频帧或视频帧,比如音频帧被添加回声、视频帧被旋转、缩放、添加水印等等。需要注意的是,滤镜处理的是原始音视频帧数据,输出的仍然是原始数据,因此不会造成数据损伤。FFmpeg的libavfilter库中提供了很多的内置滤镜,我们可以单独使用一个滤镜进行数据处理,也可以将多个滤镜连接起来组合使用,其中一个滤镜的输出可以连接到另一个滤镜的输入,因此滤镜分为简单滤镜和复杂滤镜。在FFmpeg中,滤镜模块支持多路输入和多路输出,其提供了两种方式使用滤镜,即命令和API,首先我们来看下在命令中定义一个滤镜,语法如下:
字节流动
2021/11/26
2.4K0
如何保护会员或付费视频?优酷是怎么做的? - HLS 流媒体加密
这是弹幕播放器系列文章第 4 篇,上篇请点击 原来爱优腾等视频网站都是用这个来播放流媒体的。播放器官网:https://nplayer.js.org/ 。
羽月
2022/10/09
1.8K0
如何保护会员或付费视频?优酷是怎么做的? - HLS 流媒体加密
FFmpeg 学习
ffmpeg 为了保证数据的精度与完整性,有一个 AVRational 数据类型,就是一个有理数(分数)
不会跳舞的鸟
2022/11/16
8440
FFmpeg原始帧处理-滤镜API用法详解
本文为作者原创,转载请注明出处:https://www.cnblogs.com/leisure_chn/p/10429145.html
叶余
2019/04/02
4.5K0
FFmpeg原始帧处理-滤镜API用法详解
FFmpeg常用指令
然后就是用.Net调用FFmpeg,在网上找了下开源程序发现了一个FFmpegCore结果没有找到文档,算了还是原生cmd调用吧。 然后就有了这么个玩意
SingYi
2022/07/13
3.2K0
FFmpeg常用指令
1.ffmpeg、ffplay、ffprobe命令使用
ffmpeg命令- 用于转码的应用程序, 也可以从url/现场音频/视频源抓取输入源
诺谦
2020/05/18
2.6K0
1.ffmpeg、ffplay、ffprobe命令使用
ffmpeg对pal8进行scale时丢失透明通道问题分析
通过 ffmpeg 对pal8格式的 png 图片进行缩放时,原始图像的透明通道丢失了,被替换为黑色底。
xiaoxia
2024/11/29
2280
ffmpeg视频处理神器学习基础笔记
FFmpeg文档汇总:https://ffmpeg.org/documentation.html
菲宇
2020/08/02
1.2K0
ffmpeg 常用命令存档
https://blog.csdn.net/sinat_14826983/article/details/82975561
美女视频
2019/11/01
2K0
ffmpeg 常用命令存档
ffmpeg常用命令
FFmpeg是一个强大的开源多媒体处理工具,它可以用于录制、转换以及流化音频和视频。它是一个跨平台的项目,可以在多种操作系统上运行,包括Windows、Mac OS和Linux。这个工具可以执行各种各样的音视频处理任务,包括但不限于:
Jensen_97
2024/04/18
4510
FFmpeg常用命令行讲解及实战一
上图红框内为编译选项,编译选项支持编解码的格式、封装的格式及网络协议等等第三方包。其中比较常用的:
Gnep@97
2023/11/21
1.8K0
FFmpeg常用命令行讲解及实战一
FFmpeg 滤镜相关
FFmpeg 除了具有强大的封装/解封装、编/解码功能外,还包含了一个非常强大的组建—滤镜avfilter。avfilter组建经常用于进行多媒体的处理与编辑,FFmpeg中包含多种滤镜。
码客说
2019/10/21
2.8K0
《FFmpeg从入门到精通》读书笔记(五)
例如:输入两个文件,一个视频文件input1.mp4,一个图片logo.jpg,将图像流缩放为2000×2000分辨率,放置在视频的左上角
全栈程序员站长
2022/09/13
9840
2020 FFmpeg 滤镜详解
在多媒体处理中,术语滤镜(filter)指的是修改未编码的原始音视频数据帧的一种软件工具。
jerrypxiao
2020/09/09
7.2K0
2020 FFmpeg 滤镜详解
相关推荐
【FFmpeg】FFmpeg 帮助文档使用
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档