|
FFmpeg
|
#include "libavutil/opt.h"#include "libavutil/mem.h"#include "cbs.h"#include "cbs_av1.h"#include "av1_levels.h"#include "libavutil/mastering_display_metadata.h"#include "codec_internal.h"#include "vulkan_encode.h"#include "libavutil/avassert.h"Go to the source code of this file.
Data Structures | |
| struct | VulkanEncodeAV1Picture |
| struct | VulkanEncodeAV1Context |
| struct | VulkanAV1Units |
Macros | |
| #define | OFFSET(x) |
| #define | FLAGS (AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM) |
| #define | PROFILE(name, value) |
| #define | LEVEL(name, value) |
Enumerations | |
| enum | UnitElems { UNIT_MASTERING_DISPLAY = 1 << 0 , UNIT_CONTENT_LIGHT_LEVEL = 1 << 1 } |
Functions | |
| static int | init_pic_rc (AVCodecContext *avctx, FFHWBaseEncodePicture *pic, VkVideoEncodeRateControlInfoKHR *rc_info, VkVideoEncodeRateControlLayerInfoKHR *rc_layer) |
| static int | set_name_slot (int slot, int *slot_indices, uint32_t allowed_idx, int group) |
| static int | init_pic_params (AVCodecContext *avctx, FFHWBaseEncodePicture *pic, VkVideoEncodeInfoKHR *encode_info) |
| static int | init_profile (AVCodecContext *avctx, VkVideoProfileInfoKHR *profile, void *pnext) |
| static int | init_enc_options (AVCodecContext *avctx) |
| static av_cold int | init_sequence_headers (AVCodecContext *avctx) |
| static av_cold int | base_unit_to_vk (AVCodecContext *avctx, VulkanAV1Units *vk_units) |
| static int | create_session_params (AVCodecContext *avctx) |
| static int | parse_feedback_units (AVCodecContext *avctx, const uint8_t *data, size_t size) |
| static int | init_base_units (AVCodecContext *avctx) |
| static int | vulkan_encode_av1_add_obu (AVCodecContext *avctx, CodedBitstreamFragment *au, uint8_t type, void *obu_unit) |
| static int | vulkan_encode_av1_write_obu (AVCodecContext *avctx, uint8_t *data, size_t *data_len, CodedBitstreamFragment *obu) |
| static int | write_sequence_header (AVCodecContext *avctx, FFHWBaseEncodePicture *base_pic, uint8_t *data, size_t *data_len) |
| static int | write_extra_headers (AVCodecContext *avctx, FFHWBaseEncodePicture *base_pic, uint8_t *data, size_t *data_len) |
| static int | write_padding (AVCodecContext *avctx, uint32_t padding, uint8_t *data, size_t *data_len) |
| static av_cold int | vulkan_encode_av1_init (AVCodecContext *avctx) |
| static av_cold int | vulkan_encode_av1_close (AVCodecContext *avctx) |
Variables | |
| const FFVulkanEncodeDescriptor | ff_vk_enc_av1_desc |
| static const FFVulkanCodec | enc_cb |
| static const AVOption | vulkan_encode_av1_options [] |
| static const FFCodecDefault | vulkan_encode_av1_defaults [] |
| static const AVClass | vulkan_encode_av1_class |
| const FFCodec | ff_av1_vulkan_encoder |
| #define OFFSET | ( | x | ) |
Definition at line 1375 of file vulkan_encode_av1.c.
| #define FLAGS (AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM) |
Definition at line 1376 of file vulkan_encode_av1.c.
| enum UnitElems |
| Enumerator | |
|---|---|
| UNIT_MASTERING_DISPLAY | |
| UNIT_CONTENT_LIGHT_LEVEL | |
Definition at line 42 of file vulkan_encode_av1.c.
|
static |
Definition at line 108 of file vulkan_encode_av1.c.
|
static |
Definition at line 162 of file vulkan_encode_av1.c.
Referenced by init_pic_params().
|
static |
set the nearest frame in L0 as all reference frame.
set the 2nd nearest frame in L0 as Golden frame.
B frame will not be referenced, disable its recon frame.
Use LAST_FRAME and BWDREF_FRAME for reference.
hidden frame header
tail frame header
Definition at line 177 of file vulkan_encode_av1.c.
|
static |
Definition at line 588 of file vulkan_encode_av1.c.
|
static |
Arbitrary value
Definition at line 663 of file vulkan_encode_av1.c.
Referenced by vulkan_encode_av1_init().
|
static |
Definition at line 713 of file vulkan_encode_av1.c.
Referenced by init_base_units().
|
static |
Definition at line 804 of file vulkan_encode_av1.c.
Referenced by create_session_params().
|
static |
Definition at line 898 of file vulkan_encode_av1.c.
Referenced by init_base_units().
|
static |
Definition at line 935 of file vulkan_encode_av1.c.
Referenced by init_base_units().
|
static |
Definition at line 979 of file vulkan_encode_av1.c.
Referenced by vulkan_encode_av1_init().
|
static |
Definition at line 1061 of file vulkan_encode_av1.c.
Referenced by write_extra_headers(), write_padding(), and write_sequence_header().
|
static |
Definition at line 1078 of file vulkan_encode_av1.c.
Referenced by write_extra_headers(), write_padding(), and write_sequence_header().
|
static |
Definition at line 1097 of file vulkan_encode_av1.c.
Referenced by vulkan_encode_av1_init().
|
static |
Definition at line 1117 of file vulkan_encode_av1.c.
|
static |
Definition at line 1179 of file vulkan_encode_av1.c.
|
static |
Definition at line 1224 of file vulkan_encode_av1.c.
|
static |
Definition at line 1363 of file vulkan_encode_av1.c.
| const FFVulkanEncodeDescriptor ff_vk_enc_av1_desc |
Definition at line 32 of file vulkan_encode_av1.c.
Referenced by vulkan_encode_av1_init().
|
static |
Definition at line 1209 of file vulkan_encode_av1.c.
Referenced by vulkan_encode_av1_init(), vulkan_encode_h264_init(), and vulkan_encode_h265_init().
|
static |
Definition at line 1377 of file vulkan_encode_av1.c.
|
static |
Definition at line 1435 of file vulkan_encode_av1.c.
|
static |
Definition at line 1445 of file vulkan_encode_av1.c.
| const FFCodec ff_av1_vulkan_encoder |
Definition at line 1452 of file vulkan_encode_av1.c.