# libaom-Xcode **Repository Path**: zwwlyy/libaom-Xcode ## Basic Information - **Project Name**: libaom-Xcode - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-12-19 - **Last Updated**: 2023-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # libaom + Xcode [![CI Status](http://img.shields.io/travis/SDWebImage/libaom-Xcode.svg?style=flat)](https://travis-ci.com/SDWebImage/libaom-Xcode) [![Version](https://img.shields.io/cocoapods/v/libaom.svg?style=flat)](http://cocoapods.org/pods/libaom) [![License](https://img.shields.io/cocoapods/l/libaom.svg?style=flat)](http://cocoapods.org/pods/libaom) [![Platform](https://img.shields.io/cocoapods/p/libaom.svg?style=flat)](http://cocoapods.org/pods/libaom) [![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/SDWebImage/libaom-Xcode) [![SwiftPM compatible](https://img.shields.io/badge/SwiftPM-compatible-brightgreen.svg)](https://swift.org/package-manager/) A wrapper for [libaom](https://aomedia.googlesource.com/aom/) + Xcode project. This enables Carthage && SwiftPM support. This repo also including the CocoaPods's spec file to use libaom. ## Requirements + iOS 9 + macOS 10.10 + tvOS 9.0 + watchOS 2.0 ## Note for legacy version + v1.0.2 is tagged with upstream `1.0.0-errata1-avif` + v1.0.1 && v1.0.0 is tagged with upstream `3563b12b` hash, which used by libheif dependency (no huge difference between `1.0.0-errata1`) From v2.0.0+, the version match the upstream version. However, the Xcode (SPM/Carthage/CocoaPods) support, disable the architecture specify assembly code, and use the pure C implementation instead. This because both the lack support for CocoaPods and Xcode NASM compiler. If you want the best performance for specify architecture, use the pre-build static library in `lib` from [1.0.0 release](https://github.com/SDWebImage/libaom-Xcode/releases/tag/1.0.0). Which use the CMake and NASM with the full assembly optimization. Example to build with NEON support on arm64 iOS: ``` cd aom mkdir dist && cd dist cmake .. -DCMAKE_TOOLCHAIN_FILE=../build/cmake/toolchains/arm64-ios.cmake make ``` ## Installation ### Carthage libaom is (via this repo) available through [Carthage](https://github.com/Carthage/Carthage). ``` github "SDWebImage/libaom-Xcode" ``` ### CocoaPods libaom is available through [CocoaPods](https://github.com/CocoaPods/CocoaPods). ``` pod 'libaom' ``` ### SwiftPM libaom is available through [Swift Package Manager](https://img.shields.io/badge/SwiftPM-compatible-brightgreen.svg). ```swift let package = Package( dependencies: [ .package(url: "https://github.com/SDWebImage/libaom-Xcode", from: "1.0.2") ], // ... ) ``` ## Usage Use libaom as you would normally, this is just a repo that adds an Xcode proj. For Swift Package Manager user, it's recommended to use the modular import instead of C headers. + Objective-C ```objective-c @import libaom; // or if you don't use module #import ``` + Swift ```swift import libaom ``` ## License libaom is available under the [Alliance for Open Media Patent License](https://aomedia.org/license/software-license/).