0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Vimeo对GIF的运用方法与GIF的优势劣势

LiveVideoStack 来源:CSDN技术社区 作者:LiveVideoStack_ 2021-03-30 09:35 次阅读

本文介绍了GIF在现代应用中的劣势&优势,以及Vimeo对GIF的运用方法。

现在是2021年,视频编码完全被AV1等现代编解码器所主导。好吧,也不完全是。一个小小的,不屈不挠的格式仍然能够抵抗入侵者。对于那些想要提高视频质量的工程师来说,生活并不容易……

Sintel by the Blender Institute/CC BY. 在Vimeo上制作的GIF

即使在今天,创建于1987年的Graphics Interchange Format(图形交换格式),或称 GIF (发音为“ JIF”) ,仍然是传输短动画或视频的最便携、最广泛支持的方式。尽管它每帧最多只支持256种颜色,压缩性能很差,而且不能包含音轨,但该格式的简单使其在电子邮件、论坛、社交媒体等应用中,以及在不支持现代替代品的传统系统中仍占据主导地位。由于该格式的限制,许多声称支持 GIF的平台实际上使用的是 h.264,这种格式被配置为在没有音频的情况下循环播放,以模拟实际的GIF。浏览器和移动设备可以轻松回放这些文件,它们在相同或更好的质量下提供更低的文件大小。然而GIF在支持方面仍然有优势。

在Vimeo,我们最近发布了一个功能,允许会员从他们的视频中创建GIF,嵌入到电子邮件中,并在任何平台上分享。与任何视频编码系统一样,我们需要考虑如何在保持合理的文件大小和编码时间的同时尽可能保持高质量。但由于压缩格式的能力有限,我们必须解决一些特有的相关问题,涉及图像量化、时间优化、速率控制和性能。

后台是一个由libimagequant和FFmpeg组成的系统。我们使用libimagequant对图像进行量化——减少每帧中使用的颜色数量,以满足格式的限制——同时最小化这一过程对质量的影响。这个优化步骤是复杂的,也是编码器中最耗时的部分。libimagequant还应用了抖动,它看起来类似于胶片的颗粒,并在生成的GIF中隐藏了量化可能产生的任何色带。然后,FFmpeg获取量化和抖动图像及其调色板,并将它们编码为实际的GIF格式。

为了提高量化质量和压缩性能,我们采用了预处理步骤来减少时间冗余。GIF可以有透明像素,在动画GIF中,可以利用这一点在不同帧之间只改变部分像素,保持其他像素的静态。如果视频中的背景在帧之间没有变化,我们可以通过对比连续帧的每个像素来避免对其颜色进行多次编码,当它们非常相似时,在后一帧中使其透明。我们使用一个简单的感知颜色距离测量来确定要成为透明的像素,这样就不会影响人眼看到的质量。

这套系统可以让我们用一些控制帧速率和大小的质量参数、量化质量和像素透明度的像素距离阈值来对GIF文件进行编码,但是还有一个我们需要解决的问题:速率控制。由于GIF是一种旧的格式,并没有针对视频编码进行优化,所以我们不能用同样的设置对每一个视频进行不加区分的编码,并期望合理的大小用于有硬性大小限制的电子邮件和平台。现代视频编码器通常包括内部速率控制机制,以调整质量以达到目标大小,但对于GIF,管理文件大小的方法有限:减少每帧颜色的数量,减少帧数,减少帧的大小。为了保持文件大小合理而不牺牲质量(除非必要),我们运行多个编码,根据需要逐步降低默认参数的质量,直到我们达到一个适当水平,尽可能少地损害质量。

对同一视频进行多次编码确实会导致整体响应时间更长,因此我们在多个级别上对它们进行并行处理,以保持合理的等待时间。目前,我们在收集结果并挑选出最终结果之前,以固定规模的批次运行编码,并且每个编码同时在多个帧上运行主要瓶颈,颜色量化。下面的活动示意图描述了系统的总体结构和程序流程。

5d4f2e9a-8d65-11eb-8b86-12bb97331649.png

GIF 创建系统的活动示意图

由于年代久远和格式的低复杂性,GIF永远不会像它们的源视频那样好看,但我们仍然有一些针对质量和性能的改进工作。通过电子邮件或社交媒体分享GIF片段是在朋友或关注者中创建视频兴趣的好方法。

现在我们所有的成员都可以使用这个功能,所以如果你想通过电子邮件或社交媒体在Vimeo上分享视频,在你的视频设置中找到GIF选项,并试一试!
编辑:lyn

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 视频编码
    +关注

    关注

    2

    文章

    111

    浏览量

    20832
  • Vimeo
    +关注

    关注

    0

    文章

    4

    浏览量

    7964
  • GIF
    GIF
    +关注

    关注

    0

    文章

    23

    浏览量

    6466

原文标题:Vimeo针对GIF性能和质量的改进

文章出处:【微信号:livevideostack,微信公众号:LiveVideoStack】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何使用NVTFAT显示GIF

    如何使用NVTFAT显示GIF
    发表于 01-18 06:48

    超融合的优势劣势

    超融合是一种集成化的计算架构,将计算、存储、网络和虚拟化功能融合在一起,为企业提供高性能、高可靠性和高灵活性的解决方案。本文将详细探讨超融合的优势劣势,并对其影响进行深入分析。 一、超融合的优势
    的头像 发表于 01-11 09:19 801次阅读

    软包电池优劣势有哪些?

    软包电池优劣势有哪些? 软包电池是一种新型的电池类型,相对于传统的硬包电池有着一些优势劣势。 第一部分:引言 软包电池是一种采用软包式包装的锂离子电池,近年来在电动汽车、电子设备等领域得到
    的头像 发表于 01-10 10:30 624次阅读

    pcb超薄变压器的优势劣势

    超薄PCB变压器是一种新型的电力变压器,与传统的铁芯变压器相比,具有许多优势劣势。本文将详细介绍这些优势劣势,并探讨其应用前景。 一、优势
    的头像 发表于 12-21 14:50 596次阅读

    springcloud的优势劣势

    、数据流等功能。Spring Cloud 的优势劣势如下: 优势: 简化开发:Spring Cloud 提供了一系列的开发工具和框架,使得微服务开发变得更加简洁和高效。开发人员可以通过使用Spring Cloud的组件和工具,
    的头像 发表于 12-03 16:22 686次阅读

    密集波分复用(DWDM)的优势劣势

    密集波分复用(DWDM)的优势劣势  密集波分复用(DWDM)是一种光纤通信技术,可通过在同一光纤上传输多个波长的光信号来实现高带宽传输。DWDM技术已经被广泛应用于现代光通信网络中,它具有许多
    的头像 发表于 11-28 15:39 903次阅读

    了解千兆光模块和万兆光模块的优势劣势

    千兆光模块和万兆光模块是当前光纤通信领域中常见的两种光模块。它们分别适用于不同的网络通信需求,并各有优势劣势。本文将重点讨论千兆光模块和万兆光模块的优势劣势,并对未来发展趋势进行探
    的头像 发表于 10-30 11:36 418次阅读

    C++开发单片机有哪些优势劣势呢?

    在一般的IDE里面除了C可以选择还有很多常见的C++,C++开发单片机有哪些优势劣势
    发表于 10-16 07:30

    广州大彩VisualTFT组态控件教程(七)GIF控件

    电子发烧友网站提供《广州大彩VisualTFT组态控件教程(七)GIF控件.pdf》资料免费下载
    发表于 10-13 17:45 1次下载

    充电桩的优势劣势有哪些?

    充电桩的优势劣势有哪些? 充电桩是一种专门为电动汽车充电的电力设备,可以帮助电动汽车用户在无需前往加油站的情况下快速便捷地完成充电。近年来,随着电动汽车的普及,充电桩的需求量迅速增加。本文将详细
    的头像 发表于 08-22 17:06 5593次阅读

    扁线电机有什么优势劣势

    扁线拥有许多传统绕组不可比拟的优点,但同时扁线电机也有部分劣势,但总体而言瑕不掩瑜。随着技术的发展和渗透率的逐渐提升,扁线电机应用的障碍正在被逐个化解。
    的头像 发表于 07-17 16:36 604次阅读

    激光焊接有哪些优势劣势

    激光焊接是一种高精度的焊接技术,利用激光束将金属材料加热至熔化点以实现焊接。它在工业领域中得到广泛应用,具有许多优势劣势。本文将介绍激光焊接的优势劣势,并对其在各个领域中的应用进行
    的头像 发表于 07-05 17:16 1750次阅读

    如何用STM32f4从网上写一个Gif文件到SD卡?

    大家好,我有一个项目要使用 STM32f4 和 ESP8266 模块 v01 从互联网将 gif 文件写入 SD 卡 我是 STM32f4 和 ARM 的新手,所以我很难找到最好的方法。 我在网
    发表于 05-23 06:41

    增加SPIFFS中允许的“打开”文件的最大数量是多少?

    \\\",其中大约有 100 张图像,总共只有 7 个唯一的 xxxx.gif 名称(将网络索引页面视为数字 VU 表)似乎有时 SPIFFS 的异步负载会增加index.html load
    发表于 05-15 08:35

    是否有一种“简单”的方法来增加允许的“打开”文件的最大数量?

    问题:是否有一种“简单”的方法来增加允许的“打开”文件的最大数量(=====>SPIFFS) 我在 esp8266 HTML 页面上使用#include
    发表于 05-15 07:21