Skip to content

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