You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Introduce handling for Casio, Sanyo, KyoceraRaw, Reconyx, Hp, Jvc, Ge, Motorola, Nintendo, and Microsoft across the codebase. Changes include: extend VendorRawProcessingFamily enum and vendor_raw_processing_family_name; add classification functions and tag/name/IFD heuristics in vendor_raw_processing.cc; expose new summaries in TransferSafetyAudit and populate them in transfer_safety_audit_from_store; add Python bindings and metaread/tool printing for the new families; update tests and many docs (MD/RST) to reflect the expanded family list and rendered-image safety semantics. These updates expand conservative vendor RAW/source-processing summaries and rendered-transfer safety coverage for the additional vendors.
Copy file name to clipboardExpand all lines: docs/api_stability.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -22,8 +22,8 @@ different status.
22
22
| Generic metadata traversal: `visit_metadata(...)`, `MetadataSink`, `ExportOptions`, `ExportItem`|`openmeta/interop_export.h`| Stable | v1 traversal contract. Borrowed names are valid only during `MetadataSink::on_item(...)`. |
23
23
|`ExportNameStyle::Canonical` and `ExportNameStyle::XmpPortable`|`openmeta/interop_export.h`| Stable | Stable naming modes for key-space-aware and portable exports. |
| Vendor RAW-processing summaries: `vendor_raw_processing_from_store(...)`, `classify_vendor_raw_processing_field(...)`|`openmeta/vendor_raw_processing.h`| Experimental | Conservative grouped source-RAW/source-processing field summaries for decoded Sony, Canon, Nikon, Fujifilm, Pentax, Panasonic, Olympus, Kodak, Minolta, Sigma, Samsung, Ricoh, Apple, DJI, Google, and FLIR MakerNotes, including vendor-private, computational, and thermal table buckets. Intended for audit/UI and rendered-transfer safety decisions, not for writing vendor RAW/source-processing values into rendered targets. |
26
-
| Transfer safety audit: `transfer_safety_audit_from_store(...)`|`openmeta/metadata_transfer.h`| Experimental | Preflight summary of source entries and entries filtered or invalidated by `TransferSafetyMode`, including Sony/Canon/Nikon/Fujifilm/Pentax/Panasonic/Olympus/Kodak/Minolta/Sigma/Samsung/Ricoh/Apple/DJI/Google/FLIR RAW/source-processing buckets. Intended for diagnostics and host UI before preparing rendered-image transfers. |
25
+
| Vendor RAW-processing summaries: `vendor_raw_processing_from_store(...)`, `classify_vendor_raw_processing_field(...)`|`openmeta/vendor_raw_processing.h`| Experimental | Conservative grouped source-RAW/source-processing field summaries for decoded Sony, Canon, Nikon, Fujifilm, Pentax, Panasonic, Olympus, Kodak, Minolta, Sigma, Samsung, Ricoh, Apple, DJI, Google, FLIR, Casio, Sanyo, KyoceraRaw, Reconyx, HP, JVC, GE, Motorola, Nintendo, and Microsoft MakerNotes, including vendor-private, computational, thermal, preview, face-geometry, and stitch/panorama buckets. Intended for audit/UI and rendered-transfer safety decisions, not for writing vendor RAW/source-processing values into rendered targets. |
26
+
| Transfer safety audit: `transfer_safety_audit_from_store(...)`|`openmeta/metadata_transfer.h`| Experimental | Preflight summary of source entries and entries filtered or invalidated by `TransferSafetyMode`, including Sony/Canon/Nikon/Fujifilm/Pentax/Panasonic/Olympus/Kodak/Minolta/Sigma/Samsung/Ricoh/Apple/DJI/Google/FLIR/Casio/Sanyo/KyoceraRaw/Reconyx/HP/JVC/GE/Motorola/Nintendo/Microsoft RAW/source-processing buckets. Intended for diagnostics and host UI before preparing rendered-image transfers. |
27
27
| Source snapshot type and read helpers: `TransferSourceSnapshot`, `read_transfer_source_snapshot_file(...)`, `read_transfer_source_snapshot_bytes(...)`, `build_transfer_source_snapshot(...)`|`openmeta/metadata_transfer.h`| Experimental | Current snapshots are decoded-store-backed and do not preserve raw source packets for passthrough. Const reuse is safe when callers do not mutate the snapshot and do not share returned result objects across writers. |
28
28
| Fileless preparation: `prepare_metadata_for_target_snapshot(...)`|`openmeta/metadata_transfer.h`| Experimental | Intended for hosts that already decoded metadata and want to prepare transfer artifacts without reopening the source file. |
29
29
| Snapshot execution: `execute_prepared_transfer_snapshot(...)`|`openmeta/metadata_transfer.h`| Experimental | Intended for deferred save/writeback from a reusable decoded source snapshot. |
Copy file name to clipboardExpand all lines: docs/host_integration.md
+7-5Lines changed: 7 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -430,7 +430,7 @@ Use `TransferProfile::safety` for the broad source/destination relationship:
430
430
| Mode | Use when | Transfer policy |
431
431
| --- | --- | --- |
432
432
|`CompatibleFile`| Metadata is repackaged or recompressed into a compatible file/pixel representation | Preserve source camera, color, ICC, and camera-specific data except target-owned image-layout fields |
433
-
|`RenderedImage`| Pixels may have changed, especially RAW-to-JPEG/PNG/WebP/JXL/HEIF/AVIF export | Keep general/time/GPS/IPTC/portable XMP; drop source raw color calibration, linearization/crop/correction metadata, vendor RAW/source-processing geometry/color/correction/thermal/computational fields, camera raw settings XMP, source ICC, opaque MakerNotes, and non-C2PA JUMBF |
433
+
|`RenderedImage`| Pixels may have changed, especially RAW-to-JPEG/PNG/WebP/JXL/HEIF/AVIF export | Keep general/time/GPS/IPTC/portable XMP; drop source raw color calibration, linearization/crop/correction metadata, vendor RAW/source-processing geometry/color/correction/thermal/computational/private/stitch fields, camera raw settings XMP, source ICC, opaque MakerNotes, and non-C2PA JUMBF |
434
434
435
435
See [writer_target_contract.md](writer_target_contract.md#transfer-safety-matrix)
436
436
for the detailed per-group transfer matrix.
@@ -525,12 +525,14 @@ The `metaread` command prints compact `phaseone_raw_geometry=...` and
525
525
## 10. Query Vendor RAW Processing Metadata
526
526
527
527
For Sony, Canon, Nikon, Fujifilm, Pentax, Panasonic, Olympus, Kodak, Minolta,
528
-
Sigma, Samsung, Ricoh, Apple, DJI, Google, and FLIR, OpenMeta exposes a
Copy file name to clipboardExpand all lines: docs/sphinx/host_integration.rst
+7-5Lines changed: 7 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -407,7 +407,7 @@ Use ``TransferProfile::safety`` for the broad source/destination relationship:
407
407
- Preserve source camera, color, ICC, and camera-specific data except target-owned image-layout fields
408
408
* - ``RenderedImage``
409
409
- Pixels may have changed, especially RAW-to-JPEG/PNG/WebP/JXL/HEIF/AVIF export
410
-
- Keep general/time/GPS/IPTC/portable XMP; drop source raw color calibration, linearization/crop/correction metadata, vendor RAW/source-processing geometry/color/correction/thermal/computational fields, camera raw settings XMP, source ICC, opaque MakerNotes, and non-C2PA JUMBF
410
+
- Keep general/time/GPS/IPTC/portable XMP; drop source raw color calibration, linearization/crop/correction metadata, vendor RAW/source-processing geometry/color/correction/thermal/computational/private/stitch fields, camera raw settings XMP, source ICC, opaque MakerNotes, and non-C2PA JUMBF
411
411
412
412
See :ref:`transfer-safety-matrix` for the detailed per-group transfer matrix.
413
413
@@ -503,12 +503,14 @@ Vendor RAW Processing Metadata
503
503
------------------------------
504
504
505
505
For Sony, Canon, Nikon, Fujifilm, Pentax, Panasonic, Olympus, Kodak, Minolta,
506
-
Sigma, Samsung, Ricoh, Apple, DJI, Google, and FLIR, OpenMeta exposes a
0 commit comments