CI conformance: upstream GStreamer's vmaf element keeps working on the VMAFx libvmaf.so.3 compatibility layer (1.0.0, RC4, ADR-1852 D3).
RC4 turns libvmaf.so.3 into a thin compatibility library over the new vmafx_* API. Upstream gst-plugins-bad ships a vmaf element (docs) that links libvmaf.so.3. Distributions package it, so a VMAFx install replaces the library under that element.
Scope: one CI job, next to WP6's upstream-FFmpeg job. It builds the released gst-plugins-bad vmaf element against the compat library and runs pipelines on the golden fixtures with the element's options (model-filename, pool-method, subsample, frame-message, psnr, ssim, ms-ssim, phone-model, results-filename in CSV / XML / JSON). It compares the scores with the same element on Netflix's libvmaf.so.3. A Renovate manager tracks the GStreamer release.
Acceptance:
- Identical scores on every fixture and option combination.
- A planted compat defect (one function returning a wrong value) fails the job.
- Docs:
docs/usage/gstreamer.md states the compatibility guarantee and its D7 deprecation timeline.
CI conformance: upstream GStreamer's
vmafelement keeps working on the VMAFxlibvmaf.so.3compatibility layer (1.0.0, RC4, ADR-1852 D3).RC4 turns
libvmaf.so.3into a thin compatibility library over the newvmafx_*API. Upstream gst-plugins-bad ships avmafelement (docs) that linkslibvmaf.so.3. Distributions package it, so a VMAFx install replaces the library under that element.Scope: one CI job, next to WP6's upstream-FFmpeg job. It builds the released gst-plugins-bad
vmafelement against the compat library and runs pipelines on the golden fixtures with the element's options (model-filename,pool-method,subsample,frame-message,psnr,ssim,ms-ssim,phone-model,results-filenamein CSV / XML / JSON). It compares the scores with the same element on Netflix'slibvmaf.so.3. A Renovate manager tracks the GStreamer release.Acceptance:
docs/usage/gstreamer.mdstates the compatibility guarantee and its D7 deprecation timeline.