Keep EXIF, ICC profile and orientation in the AVIF output

Aperta
#3 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
45/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
rust
Ambito
cli

Direzione di ricerca

The payload names no source files, so start by finding where the encoder currently writes only pixels and where the --strip-metadata flag is parsed. Read EXIF, ICC and orientation from a JPEG source first, then carry them into the output as a colr profile, an EXIF item, and either applied rotation or irot/imir boxes. Done when a Display P3 JPEG keeps its profile under exiftool, an orientation-6 JPEG displays upright, and --strip-metadata removes the metadata, all tested with small generated fixtures.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement

Today the encoder writes pixels only: EXIF (camera, date, GPS), the ICC colour profile and the orientation tag are dropped, so wide-gamut (Display P3, Adobe RGB) photos shift colour and rotated phone photos can display sideways.

Work: read EXIF/ICC from JPEG, PNG, TIFF, HEIC and RAW sources; apply orientation or carry it as an irot/imir box; write the ICC profile (colr box) and EXIF item into the AVIF.

Acceptance:

  • A Display P3 JPEG round-trips with the same profile (checked with exiftool).
  • A rotated (orientation 6) JPEG displays upright.
  • EXIF date and camera model survive; --strip-metadata removes them.
  • Tests use small generated fixtures, no personal photos.
Lingua principale
Rust
Stelle
0
Fork
0
Merge medio
9m
PR unite (30g)
5

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di mrgnw/avify

Tutte le issue di mrgnw/avify

Issue simili

Altre issue su Rust

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.