VkVideoEncodeH264InputModeFlagBitsEXT(3)

# VkVideoEncodeH264InputModeFlagBitsEXT(3) Manual Page

## Name

VkVideoEncodeH264InputModeFlagBitsEXT - Video encode H.264 input modes

Loading… please wait.

## C Specification

The `inputModeFlags` field reports the various commmand buffer input granularities supported by the implementation as follows:

    // Provided by VK_EXT_video_encode_h264
    typedef enum VkVideoEncodeH264InputModeFlagBitsEXT {
        VK_VIDEO_ENCODE_H264_INPUT_MODE_FRAME_BIT_EXT = 0x00000001,
        VK_VIDEO_ENCODE_H264_INPUT_MODE_SLICE_BIT_EXT = 0x00000002,
        VK_VIDEO_ENCODE_H264_INPUT_MODE_NON_VCL_BIT_EXT = 0x00000004,
    } VkVideoEncodeH264InputModeFlagBitsEXT;

## Description

- `VK_VIDEO_ENCODE_H264_INPUT_MODE_FRAME_BIT_EXT` indicates that a single command buffer must at least encode an entire frame. Any non-VCL NALUs must be encoded using the same command buffer as the frame if `VK_VIDEO_ENCODE_H264_INPUT_MODE_NON_VCL_BIT_EXT` is not supported.

- `VK_VIDEO_ENCODE_H264_INPUT_MODE_SLICE_BIT_EXT` indicates that a single command buffer must at least encode a single slice. Any non-VCL NALUs must be encoded using the same command buffer as the first slice of the frame if `VK_VIDEO_ENCODE_H264_INPUT_MODE_NON_VCL_BIT_EXT` is not supported.

- `VK_VIDEO_ENCODE_H264_INPUT_MODE_NON_VCL_BIT_EXT` indicates that a single command buffer may encode a non-VCL NALU by itself.

An implementation must support at least one of `VK_VIDEO_ENCODE_H264_INPUT_MODE_FRAME_BIT_EXT` or `VK_VIDEO_ENCODE_H264_INPUT_MODE_SLICE_BIT_EXT`.

If `VK_VIDEO_ENCODE_H264_INPUT_MODE_SLICE_BIT_EXT` is not supported, the following two additional restrictions apply for frames encoded with multiple slices. First, all frame slices must have the same pRefList0ModOperations and the same pRefList1ModOperations. Second, the order in which slices appear in VkVideoEncodeH264VclFrameInfoEXT::`pNaluSliceEntries` or in the command buffer must match the placement order of the slices in the frame.

## See Also

VK_EXT_video_encode_h264, VkVideoEncodeH264InputModeFlagsEXT

## Document Notes

For more information, see the Vulkan Specification

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

## Copyright

Copyright 2014-2022 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0