libaom 3.0.0

libaom 3.0.0

DreamPiggyBogdan Poplauschi 维护。



libaom 3.0.0

  • 开放媒体联盟

libaom + Xcode

CI Status Version License Platform Carthage compatible SwiftPM compatible

libaom 与 Xcode 项目的包装器。这可以为 Carthage && SwiftPM 提供支持。

此存储库还包括用于使用 libaom 的 Cocoapods spec 文件。

要求

  • iOS 9
  • macOS 10.10
  • tvOS 9.0
  • watchOS 2.0

对旧版本的关注

  • v1.0.2 打上了上游 1.0.0-errata1-avif 的标记
  • v1.0.1 && v1.0.0 打上了上游 3563b12b 的哈希标记,该哈希标记被 libheif 依赖项使用(与 1.0.0-errata1 之间没有很大的不同)

从 v2.0.0+ 开始,版本与上游版本匹配。

但是,Xcode(SPM/Carthage/CocoaPods)支持禁用了架构指定的汇编代码,并改为使用纯 C 实现。这是因为在 CocoaPods 和 Xcode NASM 编译器中两者都缺乏支持。

如果您想为特定架构获得最佳性能,请使用来自 1.0.0 版本的预构建静态库中的 lib 目录。此版本使用 CMake 和 NASM 进行了完整的汇编优化。

示例:在 arm64 iOS 上构建支持 NEON

cd aom
mkdir dist && cd dist
cmake .. -DCMAKE_TOOLCHAIN_FILE=../build/cmake/toolchains/arm64-ios.cmake
make

安装

Carthage

libaom通过(该仓库)可在Carthage中使用。

github "SDWebImage/libaom-Xcode"

CocoaPods

libaom可通过CocoaPods获取。

pod 'libaom'

SwiftPM

libaom可通过Swift Package Manager获取。

let package = Package(
    dependencies: [
        .package(url: "https://github.com/SDWebImage/libaom-Xcode", from: "1.0.2")
    ],
    // ...
)

使用

像通常一样使用libaom,这只是一个添加了Xcode proj的仓库。

对于Swift Package Manager用户,建议使用模块化导入而不是C头文件。

  • Objective-C
@import libaom;
// or if you don't use module
#import <aom/aom.h>
  • Swift
import libaom

许可证

libaom 在开放媒体专利联盟许可证下可用。