{"id":28559031,"url":"https://github.com/sdwebimage/libavif-xcode","last_synced_at":"2025-07-21T17:33:45.505Z","repository":{"id":45713090,"uuid":"181328217","full_name":"SDWebImage/libavif-Xcode","owner":"SDWebImage","description":"A wrapper for libavif + Xcode project. Support Carthage \u0026\u0026 CocoaPods \u0026\u0026  SwiftPM.","archived":false,"fork":false,"pushed_at":"2023-07-22T15:50:19.000Z","size":64,"stargazers_count":18,"open_issues_count":0,"forks_count":10,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-07-18T08:23:11.614Z","etag":null,"topics":["aomdec","aomenc","av1","avif","carthage","cocoapods","ios","swiftpm"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SDWebImage.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-04-14T15:20:10.000Z","updated_at":"2025-01-11T05:33:31.000Z","dependencies_parsed_at":"2024-01-29T10:19:20.941Z","dependency_job_id":null,"html_url":"https://github.com/SDWebImage/libavif-Xcode","commit_stats":{"total_commits":107,"total_committers":2,"mean_commits":53.5,"dds":"0.15887850467289721","last_synced_commit":"40635277a2f422a743d23f0793e87e98441ec3ed"},"previous_names":[],"tags_count":49,"template":false,"template_full_name":null,"purl":"pkg:github/SDWebImage/libavif-Xcode","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SDWebImage%2Flibavif-Xcode","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SDWebImage%2Flibavif-Xcode/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SDWebImage%2Flibavif-Xcode/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SDWebImage%2Flibavif-Xcode/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SDWebImage","download_url":"https://codeload.github.com/SDWebImage/libavif-Xcode/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SDWebImage%2Flibavif-Xcode/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266342809,"owners_count":23914262,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-21T11:47:31.412Z","response_time":64,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aomdec","aomenc","av1","avif","carthage","cocoapods","ios","swiftpm"],"created_at":"2025-06-10T08:35:56.691Z","updated_at":"2025-07-21T17:33:45.486Z","avatar_url":"https://github.com/SDWebImage.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# libavif + Xcode\n\n[![CI Status](http://img.shields.io/travis/SDWebImage/libavif-Xcode.svg?style=flat)](https://travis-ci.org/SDWebImage/libavif-Xcode)\n[![Version](https://img.shields.io/cocoapods/v/libavif.svg?style=flat)](http://cocoapods.org/pods/libavif)\n[![License](https://img.shields.io/cocoapods/l/libavif.svg?style=flat)](http://cocoapods.org/pods/libavif)\n[![Platform](https://img.shields.io/cocoapods/p/libavif.svg?style=flat)](http://cocoapods.org/pods/libavif)\n[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/SDWebImage/libavif-Xcode)\n\nA wrapper for [libavif](https://github.com/AOMediaCodec/libavif) + Xcode project.\nThis enables Carthage \u0026\u0026 SwiftPM support.\n\nThis repo also including the CocoaPods's spec file to use libavif.\n\n## Requirements\n\n+ iOS 9\n+ macOS 10.10\n+ tvOS 9.0 (rav1e unavailable)\n+ watchOS 2.0 (rav1e unavailable)\n\n## AV1 Codec\n\n### aom\n\nBy default, libavif is built with [aom](https://aomedia.googlesource.com/aom/) codec support. aom is the first AV1 codec during the standard draft implementation.\nHowever, there are also other AV1 codec implementation available. libavif supports most of them. You can choose to integarte the one you'd like. By default we use aom for both decoding and encoding.\n\n### dav1d (Decoding)\n\n[dav1d](https://github.com/videolan/dav1d) is the new and next generation AV1 codec, focused on speed and correctness.\n\nSee more about [explanation for why starting a new project but not improving aom](https://github.com/videolan/dav1d#why-do-you-not-improve-libaom-rather-than-starting-a-new-project)\n\nFrom v0.3.0, libavif can built with dav1d. For CocoaPods user, you can simply use the subspec for this. Carthage for optional dav1d codec is not supported currently.\n\n### libgav1 (Decoding)\n\n[libgav1](https://chromium.googlesource.com/codecs/libgav1/) libgav1 is a Main profile (0) \u0026 High profile (1) compliant AV1 decoder. More information on the AV1 video format can be found at aomedia.org.\n\nFrom v0.8.3, libavif can built with libgav1. For For CocoaPods user, you can simply use the subspec for this.\n\n### rav1e (Encoding)\n\n[rav1e](https://github.com/xiph/rav1e) is the fastest and safest AV1 encoder. Which use [Rust programming](https://www.rust-lang.org/) to provide fast and safe codec compared to aom. Its current form it is most suitable for cases where libaom (the reference encoder) is too slow.\n\nSee more about [performance](https://github.com/xiph/rav1e/issues/1248)\n\nFrom v0.4.3, libavif can built with rav1e. For CocoaPods user, you can simply use the subspec for this. Carthage for optional rav1c codec is not supported currently.\n\nNote rav1e currently only support iOS \u0026\u0026 macOS. watchOS and tvOS supports need Rust community upstream support.\n\n### SVT-AV1 (Encoding)\n\n[SVT-AV1](https://gitlab.com/AOMediaCodec/SVT-AV1) is the Scalable Video Technology for AV1 (SVT-AV1 Encoder and Decoder) is an AV1-compliant encoder/decoder library core.\n\nFrom v0.8.3, libavif can built with STV-AV1. For For CocoaPods user, you can simply use the subspec for this.\n\n## Installation\n\n### Carthage\n\nlibavif is (via this repo) available through [Carthage](https://github.com/Carthage/Carthage).\n\n```\ngithub \"SDWebImage/libavif-Xcode\"\n```\n\nNote Carthage does not support dav1d/rav1e/SVT-AV1 optional codec, use only aom.\n\n### CocoaPods\n\nlibavif is available through [CocoaPods](https://github.com/CocoaPods/CocoaPods).\n\nBy default, libavif is built with aom decoding/encoding codec, which is stable, but slow.\n\n```\npod 'libavif'\n```\n\nIf you need the dav1d decoding codec, use the subspec:\n\n```\npod 'libavif/libdav1d'\n```\n\nIf you need the libgav1 decoding codec, use the subspec:\n\n```\npod 'libavif/libgav1'\n```\n\nIf you need the rav1e encoding codec, use the subspec:\n\n```\npod 'libavif/librav1e'\n```\n\nIf you need the SVT-AV1 encoding codec, use the subspec:\n\n```\npod 'libavif/SVT-AV1'\n```\n\nIf you need the sharpyuv RGB to YUV420 conversion, use the subspec:\n\n```\npod 'libavif/sharpyuv'\n```\n\n### SwiftPM\n\nlibavif is available through [Swift Package Manager](https://img.shields.io/badge/SwiftPM-compatible-brightgreen.svg).\n\n```swift\nlet package = Package(\n    dependencies: [\n        .package(url: \"https://github.com/SDWebImage/libavif-Xcode\", from: \"0.4.5\")\n    ],\n    // ...\n)\n```\n\nNote SwiftPM does not support dav1d/rav1e/SVT-AV1 optional codec, use only aom.\n\n## Usage\n\nUse libavif as you would normally, this is just a repo that adds an Xcode proj.\n\nFor Swift Package Manager user, it's recommended to use the modular import instead of C headers.\n\n+ Objective-C\n\n```objective-c\n@import libavif;\n// or if you don't use module\n#import \u003cavif/avif.h\u003e\n```\n\n+ Swift\n\n```swift\nimport libavif\n```\n\n## License\n\nlibavif is available under the [BSD License](https://github.com/AOMediaCodec/libavif/blob/master/LICENSE).\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsdwebimage%2Flibavif-xcode","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsdwebimage%2Flibavif-xcode","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsdwebimage%2Flibavif-xcode/lists"}