KhronosGroup / KhronosGroup/Vulkan-Docs
h264 encode: `expectDyadicTemporalLayerPattern`
- Dominant language
- JavaScript
- Stars
- 3.3k
- Forks
- 549
- Avg merge
- 5d 5h
- Merged PRs (30d)
- 2
Description
I'm a little confused about the field `expectDyadicTemporalLayerPattern` on `VkVideoEncodeH264CapabilitiesKHR`. Not much is written about it:
> expectDyadicTemporalLayerPattern indicates that the implementation’s rate control algorithms expect the application to use a [dyadic temporal layer pattern](https://registry.khronos.org/vulkan/specs/1.3-extensions/html/vkspec.html#encode-h264-layer-pattern-dyadic) when encoding multiple temporal layers.
I haven't seen this flag set on any GPUs I've tested with. And it's not completely clear what the implications of it are, or the context with which it was added.
- If set, does that mean only dyadic structures may be used (and not pyramidal with B frames, I guess?)
- If not set, does that mean dyadic structures may *not* be used?
- Where are temporal layers specified in the `Std*` structures?
Contributor guide
Assessment
This issue has not been assessed yet.