Netflix / Netflix/vmaf

JSON log files - libvmaf v2.x vs v1.x differences

Open
#950 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
5.5k
Forks
833
Avg merge
13h 8m
Merged PRs (30d)
2

Description

Hi,

I'm upgrading one of my tools to move to libvmaf 2.x. I've noticed a number of differences from previous versions (1.5.1 and 1.3.14) which are making it a bit harder than I wanted.
I therefore have a few questions which I'm hoping you can help with... In particular when it comes to the content and structure of the JSON log file.

PARAMS

With v1.5.1, and generated a JSON log file, it would contain information such as:

"params":{
    "model":"vmaf_v0.6.1.pkl",
    "scaledWidth":1920,
    "scaledHeight":1080,
    "subsample":1,
    "num_bootstrap_models":0,
    "bootstrap_model_list_str":"",
    "pool":"mean"
  },

When using libvmaf 2 however, there is no params info anymore. Is there a flag to get that info added in automatically?

VERSION

In addition, previously the version field had a readable value (eg. "1.5.1"), but it now seems to be a git hash instead (eg. f0ccefab)

FPS

Finally, the fps field seems odd. Even though ffmpeg shows an fps of about 30 on my machine, the JSON file shows "fps": 4.02. This seems to be independent of the n_threads parameter

(I'm using https://evermeet.cx/ffmpeg/ on MacOS X, in case that helps contextualise the question)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No source files or tests are named. Reproduce the libvmaf 1.x and 2.x JSON outputs using the mentioned ffmpeg setup, then trace the JSON log generation for the params, version, and fps fields. Done means determining whether these differences are expected or fixing the output and documenting the result.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
audio-video-rtc
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.