Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AV2 request: metadata section to store a string for encoding information #328

Open
1480c1 opened this issue May 28, 2022 · 1 comment
Open

Comments

@1480c1
Copy link

1480c1 commented May 28, 2022

Currently, both x264 and x265 support writing a string into their SEI headers that contain a simple key=value space separated string that contains information related to encoder specific settings (see x264_param2string() for what x264 does for generating the string, and x264_sei_version_write() for the full string it writes, similar thing with x265_param2string()) and this can really help when trying to determine what might be the difference between two nearly identical bitstreams.

This format is obviously not necessarily standardized, as not all h264 and h265 encoders will put the same information, but some common open source ones do (for example kvazzar does so in encoder_state_write_bitstream_prefix_sei_version())

A cursory glance at the spec does not seem to hint at any place where it might be possible to insert such a string into the av1 bitstream, whether that would be in the obu metadata header or somewhere else for encoder specific settings, however, someone did mention that perhaps it may be possible to insert such information in a padding OBU https://gitlab.com/AOMediaCodec/SVT-AV1/-/issues/1912

@BlueSwordM
Copy link

In my opinion, you'd have 4 states for how detailed the metadata could:

  1. Disabled.
  2. Command line encoder settings(default).
  3. Command line encoder settings + enhanced all preset speedfeature settings (enhanced).
  4. Command line encoder settings + all preset speedfeature settings + quantizer/frame type for each frame(development grade).

That way, it could be very easy to identify what coding features/settings/frame information just by looking at somewhat human readable metadata.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants