car

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.

Showing:

Popularity

Downloads/wk

0

GitHub Stars

74

Maintenance

Last Commit

6d ago

Contributors

3

Package

Dependencies

0

License

MIT

Categories

Readme

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).

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'

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial