ITADN
FLIF-hub/FLIF · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

FLIF 的开发已停止,因为 FLIF 已被 FUIF 取代,随后又被 JPEG XL 取代,后者基于 PikFUIF 的组合。 JPEG XL 的免版税且开源的参考实现可在 GitHub 上获取。更多信息,请参阅 JPEG XL 社区页面 或访问 JPEG XL Discord 服务器


FLIF:自由无损图像格式

Build Status Join the chat at https://gitter.im/jonsneyers/FLIF flif

FLIF 是一种基于 MANIAC 压缩的无损图像格式。MANIAC(Meta-Adaptive Near-zero Integer Arithmetic Coding) 是 CABAC(context-adaptive binary arithmetic coding)的一种变体,其中上下文是决策树的节点, 这些节点在编码时动态学习。

FLIF 在压缩率方面优于 PNG、FFV1、无损 WebP、无损 BPG 和无损 JPEG2000。

此外,FLIF 支持一种渐进式隔行扫描形式(本质上是 PNG 的 Adam7 的泛化/改进), 这意味着压缩文件的任何前缀(例如部分下载)都可以用作整个图像的合理有损编码。

有关 FLIF 的更多信息,请访问 https://flif.info


许可证

FLIF 是著佐自由/自由软件:您可以重新分发和/或修改它,前提是您回馈分享。

FLIF 的参考实现根据 GNU 宽通用公共许可证第 3 版或更高版本(LGPLv3+)的条款发布。

解码库 libflif_dec 根据较弱的、非著佐自由软件许可证发布:Apache 2.0 许可证。

示例应用程序 viewflif 演示了如何使用解码库。 viewflif.c 中的示例代码属于公共领域(Creative Commons CC0 1.0 Universal)。


构建说明

GNU/Linux

安装依赖项

在 Debian 上:

  • 用于编码器/解码器:sudo apt-get install libpng-dev
  • 用于查看器:sudo apt-get install libsdl2-dev

在 Fedora 上:

  • 用于编码器/解码器:sudo dnf install libpng-devel
  • 用于查看器:sudo dnf install SDL-devel

在 Ubuntu 上:

  • 用于编码器/解码器:sudo apt-get install libpng-dev make pkg-config
  • 用于查看器:sudo apt-get install libsdl2-dev

编译

  • 导航至 FLIF/src 目录并运行 make 以编译所有内容,或者
    • make flif 仅构建 flif 命令行工具
    • make libflif.so 构建 LGPL 许可的共享库
    • make libflif_dec.so 构建 Apache 许可的仅解码共享库
    • make viewflif 构建示例查看器(它依赖于解码库)

安装

  • 若要全局安装,请运行 sudo make install

Windows

  • 安装 Visual Studio (VS Community 2015 对开源项目免费)
  • 打开 build\MSVC 文件夹并双击 dl_make_vs.bat 文件。 这将下载所需的库并运行 nmake 以构建 flif.exe。 然后,在命令行中运行:
    • nmake libflif.dll 构建共享库
    • nmake viewflif.exe 构建示例查看器

OS X

  • 安装 homebrew
  • 安装依赖项:brew install pkg-config libpng sdl2
  • 在 FLIF/src 目录中运行 make

预构建二进制文件

这些文件将在 Release 页面提供

或者,你可以获取 Snap 软件包:

Get it from the Snap Store


相关项目

  • Poly FLIF - 一个 JavaScript polyfill,允许你在浏览器中使用 FLIF 文件。(Demo)

  • UGUI: FLIF - 一个允许你转换和查看 FLIF 文件的 GUI。

  • Ivy, the Taggable Image Viewer – 一个通过 riff 支持 FLIF 的图像查看器

  • flifcrush - 一个暴力 FLIF 优化器。

  • libflif.js – 一个 JavaScript FLIF 编码器和解码器。(Demo)

  • flif.rs – 一个正在进行的 FLIF Rust 实现。

  • FLIF Windows Codec – 一个插件,允许你使用 Windows Imaging Component (WIC) API 在 Windows 应用程序中解码和编码 FLIF 文件。这使得例如可以在 Windows PhotoViewer 和 Windows Explorer 中查看这些文件。

  • FLIF Windows Plugin – 此插件启用在使用 Windows Imaging Component API 的应用程序中解码 FLIF 图像。这样,FLIF 图像可以像其他常见图像格式一样在 Windows Explorer 中查看。

  • qt-flif-plugin – 使 Qt4 和 Qt5 应用程序能够加载 FLIF 图像格式的图像。

  • go-flif – Go FLIF 库绑定。

  • Phew - 带有 QuickLook 插件的 macOS 图像查看器

  • SDWebImageFLIFCoder - 流行图像加载框架 SDWebImage 的编码器插件,支持 iOS/macOS/tvOS/watchOS 所有 Apple 平台。

  • libflif-Xcode - 用于在 iOS/macOS/tvOS/watchOS 所有 Apple 平台上构建 libflif 的 Xcode 项目。

  • flif-wasm - Node.js 移植的 FLIF 命令行工具。

  • node-flif - 一个 Node.JS 封装,允许您使用 JavaScript 与 CLI 进行交互。

  • SimplEx FLIF - 一个用于原生可执行文件的简单且功能丰富的 GUI 中间件。

  • WinFLIF - 一个用于在 FLIF/PNG 静态图像之间转换的小型 Windows 桌面应用程序。

  • imageio-FLIF - 一个用于读取和写入 FLIF 图像及动画的 Imageio (Python) 插件