Swiftpack.co -  mz2/Carpaccio as Swift Package
Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
mz2/Carpaccio
A fast Swift library for decoding images (including the usual formats + RAW files) + EXIF metadata. Primary, guaranteed to be up to date source for Carpaccio is to be found at gitlab.com/sashimiapp-public/carpaccio.git.
.package(url: "https://github.com/mz2/Carpaccio.git", from: "v1.0.76")

Carpaccio SPM build & test passes Swift Package Manager compatible

Pure Swift goodness for RAW and other image + metadata handling

Carpaccio is a Swift library for macOS and iOS that allows fast decoding of image data & EXIF metadata from file formats supported by CoreImage (including all the various RAW file formats supported, using the CoreImage RAW decoding capability).

  • thumbnails
  • metadata
  • full sized image

Carpaccio uses multiple CPU cores efficiently in parallel for all of metadata, thumbnail and image data decoding.

There are no 3rd party dependencies (CoreImage filter is used for RAW decoding).

NOTE! If you are looking at this on GitHub, please be noted that the primary source for Carpaccio is to be found at gitlab.com/sashimiapp-public/carpaccio.git.

INSTALLATION

Swift Package Manager

Add Carpaccio to your Swift package as a dependency by adding the following to your Package.swift file in the dependencies array:

.package(url: "https://github.com/mz2/Carpaccio.git", from: "<version>")

If you are using Xcode 11 or newer, you can add Carpaccio by entering the URL to the repository via the File menu:

File > Swift Packages > Add Package Dependency...

USAGE

For usage examples, consult the unit tests under Tests/CarpaccioTests.

TODO

Carpaccio is still a very fresh and raw (har har) library and there are many tasks to make this a more generally useful library.

  • ☑ Add tests for RAWs from a number of different camera vendors.
  • ☑ GitHub action CI support.
  • ☑ iOS support.
  • ☐ Working xcframework support (when Xcode / SPM toolchain permits?) An xcframework build is already made available, but at least with Xcode 12.5.1 this results in build fails of the following kinds:
    • 'where' clause cannot be applied to a non-generic top-level declaration
    • 'Iterator' is not a member type of type 'Self'
    • 'Iterator' is not a member type of type 'Self'
    • Covariant 'Self' can only appear as the type of a property, subscript or method result; did you mean 'Collection'?
    • 'Index' is not a member type of class 'Carpaccio.Collection'

GitHub

link
Stars: 74
Last commit: 1 hour ago

Ad: Job Offers

iOS Software Engineer @ Perry Street Software
Perry Street Software is Jack’d and SCRUFF. We are two of the world’s largest gay, bi, trans and queer social dating apps on iOS and Android. Our brands reach more than 20 million members worldwide so members can connect, meet and express themselves on a platform that prioritizes privacy and security. We invest heavily into SwiftUI and using Swift Packages to modularize the codebase.

Submit a free job ad (while I'm testing this). The analytics numbers for this website are here.

Release Notes

v1.0.76
4 days ago

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics