Perceptual difference between `scale` and `zscale` after the OCIO filter

Open Beginner friendly
#120 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
1/5
Estimated time
1-3 hours
Newbie friendliness
68/100
Issue type
Documentation
Clarity
Clearly specified
Activity status
Active
Domain
documentation

Research direction

Start with FfmpegOcio.md and compare its existing scale-based guidance with the linked ffmpeg-ocio-zscale-command commit. Confirm the zscale note and alternate examples accurately reflect the reported difference, and consider the documentation complete when those additions are incorporated and the examples remain consistent with the existing guidance.

Written by the indexing model from the issue text.

Description

When following the FfmpegOcio.md guidance to convert from RGB (OCIO filter output) to YCbCr using the scale filter, I noticed a perceptible difference from the EXR source. Swapping scale for zscale resolved it and much closer to the source in my testing.

Example:

ffmpeg -y -framerate 24 -start_number <STARTFRAME> -i SOURCEFRAMES.%05d.exr \
   -c:v prores_ks -profile:v 1 -pix_fmt yuv422p10le \
   -vf "ocio=input=ACEScg:output=ACEScct:format=rgb48,zscale=matrix=709:primaries=709:primariesin=709:transfer=unspecified:transferin=unspecified:rangein=pc:range=limited" \
   -movflags +faststart+write_colr -vendor apl0 OUTPUTFILE.mov

I don't have CLA clearance setup yet, so sharing my branch here instead: ffmpeg-ocio-zscale-command on my fork, which adds a zscale note + alternate examples to FfmpegOcio.md alongside the existing scale-based ones. Happy to edit, have someone pick it up, or I can open the PR myself once CLA is sorted.

Let me know what your prefer,

Cheers!

Dominant language
Dockerfile
Stars
56
Forks
8
PR merge metrics
No merged PRs in 30d

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.

More from AcademySoftwareFoundation/EncodingGuidelines

All issues in AcademySoftwareFoundation/EncodingGuidelines

Similar issues

More Documentation issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.