Skip to content

Recording (Windows): convert and tag screen and webcam colour as BT.709 #923

Description

@EtienneLescot

Part of #920 (rank 5). Effort S, risk low.

Problem

  • The compositor decodes every recording as BT.709 limited range.
  • Screen track: no colour tags at all (color_range/space/primaries = unknown, measured). On the CPU path mf_encoder.cpp deletes MF_MT_VIDEO_NOMINAL_RANGE and MF_MT_YUV_MATRIX and lets the MFT choose the RGB32 → YUV matrix, which is not guaranteed BT.709 (hypothesis: NVENC or the Video Processor MFT may pick BT.601).
  • Webcam track: range and matrix tagged, but primaries and transfer read reserved (measured): MF_MT_VIDEO_PRIMARIES and MF_MT_TRANSFER_FUNCTION are never set.

Proposal

  • Pin the conversion to BT.709 limited and tag range, matrix, primaries (MFVideoPrimaries_BT709) and transfer (MFVideoTransFunc_709) on both tracks.

Verify

  • ffprobe -show_streams | grep color_ reads tv / bt709 / bt709 / bt709 on both tracks.
  • Solid red captured and read back as raw YUV: Y≈63, Cb≈102, Cr≈240 (BT.709). Y≈81, Cb≈90 means BT.601.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requeststatus: fixed in mainWork is merged into main but may not be in a downloadable release yet.status: pending releaseMerged change is waiting for a packaged desktop release.

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions