ADRs tagged abi¶
Auto-generated by scripts/docs/generate-adr-by-tag.sh. Edit ADR Tags: lines to update.
32 ADR(s) carry this tag.
| ID | Title |
|---|---|
| ADR-0185 | Hide volk / Vulkan-loader symbols from libvmaf's public ABI |
| ADR-0198 | Rename volk's vk* symbols to vmaf_priv_vk* for static-archive builds |
| ADR-0200 | Move volk -include flag off of volk_dep.compile_args (libvmaf.pc leak fix) |
| ADR-0379 | libvmaf Symbol Visibility — Hide Internal Symbols with -fvisibility=hidden |
| ADR-0709 | VMAFX Phase 4b — Distributed Video-Quality, Encoding, and ML Platform |
| ADR-0767 | Phase 4b.8 — libvmaf C ABI Break for VMAFx v4.0.0 |
| ADR-0804 | Add vmaf_context_get_backend — additive ABI introspection |
| ADR-0928 | VmafPicture v2 — explicit per-backend GPU state |
| ADR-1113 | Vendor the Pelorus interop ABI as a pinned read-only mirror |
| ADR-1120 | Re-pin the vendored Pelorus interop ABI to minor-3 and consume PEL_SEC_COMPLEXITY in perceptual weighting |
| ADR-1188 | Percentile temporal pooling in the public C API |
| ADR-1235 | libvmaf.pc advertises the ABI version, not the product version |
| ADR-1276 | Re-pin the Pelorus mirror for released parser safety fixes |
| ADR-1337 | C++ Placement New Visibility — Hide Inline Run-time Symbols |
| ADR-1470 | An enum that C and C++ translation units both see has one size: no C++-only underlying type other than int's width |
| ADR-1685 | A post-1.0 embedding milestone: zero-copy device-frame import with fences, asynchronous window scores, and an unchanged licence |
| ADR-1713 | Rust feature-extractor twins behind the unchanged C ABI (RC4 framework) |
| ADR-1755 | The feature collector owns the models it mounts |
| ADR-1822 | vmaf_picture_convert ships additively, with the source colour as an argument |
| ADR-1829 | RC4 owns the whole device-memory import API, not only the first full Rust metric |
| ADR-1852 | A new VMAFx C API generated from one definition, libvmaf as its compatibility layer, and VMAFx-named FFmpeg filters (RC4) |
| ADR-1897 | VMAFx ABI numbering before 1.0: additions take a patch bump and join the current minor's version node |
| ADR-1906 | VMAFx core API semantics: per-context logging, size negotiation, frame and model references |
| ADR-1929 | VMAFx device frames, fences and the import rule: the shared contract the backend lanes implement |
| ADR-2023 | VMAFx device frames on CUDA: one library stream per device, fences on it, release events recorded where the frame is released |
| ADR-2073 | The provenance record is canonical JSON with one digest over the configuration and the scores, the library writes it into every report, and --verify-provenance re-runs it |
| ADR-2074 | VMAFx window scores: a completion thread per context, one pooling implementation, the window clock and the in-flight bound |
| ADR-2093 | HDR-VMAF groundwork from upstream, with the input colorimetry on the context |
| ADR-2094 | libvmaf.so.3 is a compat library on the exported VMAFx API; the engine compiles its libvmaf bodies under engine names, and backends keep theirs until their lanes land |
| ADR-2133 | Device import takes 4:2:2 and 4:4:4: semi-planar NV16 / NV24 family and packed Y210 / Y410, one CPU reference, converted on the device |
| ADR-2478 | Rust replaces the host-side C and C++ through 3.0, behind the unchanged C ABI |
| ADR-2817 | Re-pin the Pelorus mirror to v0.3.0, its EUPL-1.2 release, and check the licence on every sync |