有没有什么技巧可以创建电视静态的 gif 动画,使其相对较小?

2023-12-31

提前道歉,但这并不是一个真正的 Photoshop 问题。相反,我试图想出一些令人信服的东西,但尽可能地利用 gif 格式的压缩和功能来生成尽可能小的动画文件。

一些限制:

  • 它至少需要 20 或 30 帧。我尝试过使用更少的帧(因为它们基本上是不可压缩的,一般来说,15 帧的大小是 30 帧的一半)
  • 尺寸需要不小于约256x192
  • 但它不需要是彩色的,甚至不需要是全灰度的。我见过令人信服的剧照,灰度只有 16 左右
  • 它可以有一种图案,但不是人眼立即显而易见的图案。如果有人拍摄一帧并在一两分钟后可以发现模式(这使得它可以压缩?),那没关系
  • 第 2 帧到第 n 帧可以使用相当多的 Alpha,但是当我开始使用大的 Alpha 水平条纹时,我的眼睛立即注意到了这一点。所以你不可能通过简单的作弊来积累大量的 RLE。
  • 以上所有内容仍然需要在 30-33 毫秒的帧速度下看起来不错。没有变速或依赖任何比这更快的东西。

也可以接受:符合上述限制的 apng。甚至可能是 mpeg,如果你能想出的话(我不知道 DCT 是如何发挥其魔力的)。

理想情况下,我可以得到 250kbyte 范围内的东西,但我会满足于任何比我上周制作的 9 meg 怪物小得多的东西。

哦,最后一件事:显然我不希望任何人为我提供图形。我只是在寻找一些技巧,让我最终能够实现这一目标。


这是一个非常有趣的问题。

静态(随机噪声)本质上是高度不可压缩的。信息论认为,真正的噪声基本上是不可压缩的,并且某物包含的模式越多,它的可压缩性就越高(达到 1 或 0 的实线完全可压缩的程度)。

理想的情况是创建一个真正的噪声生成器(只是随机数),但这在问题的限制范围内没有帮助。

我能想到的最好的办法是存储一些小的静态图块并以交错的方式显示它们,以防止任何图案吸引眼球。除此之外,将其压缩到超过 256 x 192 x 20 / 2 或大约 500 KB(假设 20 帧,分辨率为 256 x 192,使用 4 位颜色深度)不会有太大运气。

只需将您的动画 gif 编码为 16 色模式即可实现这一目标。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有没有什么技巧可以创建电视静态的 gif 动画,使其相对较小? 的相关文章

随机推荐

  • 多语言安装

    我正在尝试使用以下命令安装 多语言 pip install polyglot 但我收到以下错误 Command python setup py egg info failed with error code 1 in C Users K 1
  • Realm:比较原始类型的 List,例如:List

    比较 Realm 字符串列表的预期方法是什么 我正在尝试比较 Realm 中的两个字符串列表 如下所示 func testRealmListOfStrings let strings a b c let list1 List
  • 为什么条件移动不能正常工作

    在我编译下面的代码后 该功能似乎没有按预期工作 int cread int xp return xp xp 0 我提取了汇编版本中的对应部分 如下所示 xp在寄存器中 edx movl 0 eax testl edx edx cmovne
  • 高图表中的条件标记颜色

    我正在使用 Highcharts 我想用不同的颜色填充折线图中的标记 例如 当变量 a 为 1 时 则用红色填充标记 否则用绿色填充 可以这样做吗 这是代码 http jsfiddle net EnyCJ 1 http jsfiddle n
  • 如何获取mysql中两个日期之间的时间记录?

    我正在制作一个考勤系统 它包含两个日期之间的时间表 例如 晚上 10 00 到凌晨 3 00 如何从 mysql 数据库中检索时间范围在 2 个日期之间的行 我已经知道如何在 mysql 中使用 BETWEEN 我的问题是如何在不知道确切时
  • 如何从时间戳转换为 Mongo ObjectID

    我知道我们可以使用getTimestamp 从 ObjectId 中检索时间戳 但是有什么方法可以从时间戳生成 ObjectId 吗 更具体地说 如果我有一个输入month and year 然后我想将其转换为Mongo对象ID要在数据库中
  • 使用 jquery 遍历表格单元格

    我有一个包含可变数量列的表 我编写了一个函数来迭代每行中的每个单元格以执行以下操作 检查是否存在输入 检索输入的值 将饼图附加到条件 1 计算结果为 true 的任何单元格 这是我的代码 function addPieCharts var
  • Kubernetes minikube 教程后无法停止 10 个容器

    docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7523fd2c20c7 gcr io google containers k8s dns sidecar am
  • Drupal 7 示例模块,找不到页面,为什么?

    我编写了一个简单的测试模块示例 2个文件 test module test info 并在drupal 7模块中启用了它们 我清除了所有缓存 但当我尝试访问 localhost drupal hello 时 我得到 drupal 404 页
  • 如何在python中实现multiprocessing.Queue的LIFO?

    我了解队列和堆栈之间的区别 但是如果我生成多个进程并在它们之间发送消息multiprocessing Queue如何访问首先放入队列中的最新元素 您可以使用多处理管理器 https docs python org 3 library mul
  • 构建 Clojure 源代码的惯用方法[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我对人们如何构建 Clojure 源代码感兴趣 由于习惯了 Java 我非常熟悉每个源代码文件一个类的范例 将所有数据和方法定义与适当的注释和注
  • Spring Security授权无需认证

    我有一个 Java JSF 2 Spring 3 Hibernate 4 Java EE 应用程序 它使用第三方库来对用户进行身份验证 我将所需的 CA 证书导入到 JVM 中 将第三个库添加到项目中并在 web xml 中进行配置 图书馆
  • 在 mechanize 中禁用 ssl 证书验证

    我是 python 新手 我试图使用 mechanize 访问网站 br mechanize Browser r br open https 172 22 2 2 这给了我以下错误 Traceback most recent call la
  • 如何动态调整静态 UITableViewCell 的大小? [复制]

    这个问题在这里已经有答案了 可能的重复 带有包装标签的静态表格单元格的动态高度 https stackoverflow com questions 11981071 dynamic height for static table cells
  • z-index 不适用于绝对位置

    我打开控制台 chrome firefox 并运行以下几行 body append div style width 100 height 100 background color black div body append div styl
  • 枚举和定义语句之间的区别

    在 C C 中使用 Define 语句和 enum 语句有什么区别 在 C 或 C 中使用它们时有什么区别 例如 什么时候应该使用 enum BUFFER 1234 over define BUFFER 1234 enum定义语法元素 de
  • 为什么引用计数器需要内存顺序限制?

    在示例中boost atomic the unref功能 void intrusive ptr release const X x if x gt refcount fetch sub 1 boost memory order releas
  • Vue html 注释处理

    我正在使用 Vue 生成一些 html 模板 我需要按照下面的代码包含 html 条件注释 var productTemplate new Vue el myApp div div class some content This is so
  • 库的 stylePreprocessorOptions,我应该放在 angular.json 中的哪里?

    我正在尝试使用stylePreprocessorOptions为了包含我的变量文件夹的路径对于图书馆项目像这样 stylePreprocessorOptions includePaths styles variables 然后我用 impo
  • 有没有什么技巧可以创建电视静态的 gif 动画,使其相对较小?

    提前道歉 但这并不是一个真正的 Photoshop 问题 相反 我试图想出一些令人信服的东西 但尽可能地利用 gif 格式的压缩和功能来生成尽可能小的动画文件 一些限制 它至少需要 20 或 30 帧 我尝试过使用更少的帧 因为它们基本上是