Skip to content

Clarify 4:2:0 support #73

Open
Open
@fhvwy

Description

@fhvwy

The current specification disallows 4:2:0 streams ("The value of chroma_format_idc MUST be 0, 2, 3, or 4."), but the codec definition does otherwise support 4:2:0 straightforwardly (with chroma_format_idc = 1 like in H.26x). Currently the openapv encoder will accept 4:2:0 input and creates a 4:2:0 stream with chroma_format_idc = 1, even though the specification directly prohibits this. This creates confusion for users who will try to encode 4:2:0 content and get nonconforming streams output.

Can you therefore please clarify whether 4:2:0 is supported or not?

  • If it is intended to be supported then the specification should be updated to allow it.
  • If it is not intended to be supported then the reference encoder should not allow creation 4:2:0 streams.
  • If it is intended as a future feature but not currently supported then suggest gating it behind a --non-standard-conforming flag or similar so that a naive user does not unexpectedly create a nonstandard 4:2:0 stream.

(Prompted by a user surprised when the ffmpeg decoder rejected a 4:2:0 stream created by the reference encoder. If the first or third of these options then I will add that support. If the second then the current behaviour is correct.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions