FFmpeg
Macros | Functions | Variables
h265_profile_level.c File Reference
#include "h265_profile_level.h"

Go to the source code of this file.

Macros

#define check_flag(name)
 

Functions

const H265ProfileDescriptorff_h265_get_profile (const H265RawProfileTierLevel *ptl)
 
const H265LevelDescriptorff_h265_guess_level (const H265RawProfileTierLevel *ptl, int64_t bitrate, int width, int height, int slice_segments, int tile_rows, int tile_cols, int max_dec_pic_buffering)
 Guess the level of a stream from some parameters. More...
 

Variables

static const H265LevelDescriptor h265_levels []
 
static const H265ProfileDescriptor h265_profiles []
 

Macro Definition Documentation

◆ check_flag

#define check_flag (   name)
Value:
if (profile->name < 2) { \
if (profile->name != ptl->general_ ## name ## _constraint_flag) \
continue; \
}

Function Documentation

◆ ff_h265_get_profile()

const H265ProfileDescriptor* ff_h265_get_profile ( const H265RawProfileTierLevel ptl)

◆ ff_h265_guess_level()

const H265LevelDescriptor* ff_h265_guess_level ( const H265RawProfileTierLevel ptl,
int64_t  bitrate,
int  width,
int  height,
int  slice_segments,
int  tile_rows,
int  tile_cols,
int  max_dec_pic_buffering 
)

Guess the level of a stream from some parameters.

Unknown parameters may be zero, in which case they are ignored.

Definition at line 162 of file h265_profile_level.c.

Referenced by d3d12va_encode_hevc_init_sequence_params(), ff_hw_base_encode_init_params_h265(), h265_metadata_guess_level(), and main().

Variable Documentation

◆ h265_levels

const H265LevelDescriptor h265_levels[]
static
Initial value:
= {
{ "1", 30, 36864, 350, 0, 16, 1, 1, 552960, 128, 0, 2, 2 },
{ "2", 60, 122880, 1500, 0, 16, 1, 1, 3686400, 1500, 0, 2, 2 },
{ "2.1", 63, 245760, 3000, 0, 20, 1, 1, 7372800, 3000, 0, 2, 2 },
{ "3", 90, 552960, 6000, 0, 30, 2, 2, 16588800, 6000, 0, 2, 2 },
{ "3.1", 93, 983040, 10000, 0, 40, 3, 3, 33177600, 10000, 0, 2, 2 },
{ "4", 120, 2228224, 12000, 30000, 75, 5, 5, 66846720, 12000, 30000, 4, 4 },
{ "4.1", 123, 2228224, 20000, 50000, 75, 5, 5, 133693440, 20000, 50000, 4, 4 },
{ "5", 150, 8912896, 25000, 100000, 200, 11, 10, 267386880, 25000, 100000, 6, 4 },
{ "5.1", 153, 8912896, 40000, 160000, 200, 11, 10, 534773760, 40000, 160000, 8, 4 },
{ "5.2", 156, 8912896, 60000, 240000, 200, 11, 10, 1069547520, 60000, 240000, 8, 4 },
{ "6", 180, 35651584, 60000, 240000, 600, 22, 20, 1069547520, 60000, 240000, 8, 4 },
{ "6.1", 183, 35651584, 120000, 480000, 600, 22, 20, 2139095040, 120000, 480000, 8, 4 },
{ "6.2", 186, 35651584, 240000, 800000, 600, 22, 20, 4278190080, 240000, 800000, 6, 4 },
}

Definition at line 22 of file h265_profile_level.c.

Referenced by ff_h265_guess_level().

◆ h265_profiles

const H265ProfileDescriptor h265_profiles[]
static

Definition at line 42 of file h265_profile_level.c.

Referenced by ff_h265_get_profile(), and ff_h265_guess_level().

name
it s the only field you need to keep assuming you have a context There is some magic you don t need to care about around this just let it vf default minimum maximum flags name is the option name
Definition: writing_filters.txt:88
ptl
const H265RawProfileTierLevel * ptl
Definition: h265_levels.c:170
profile
int profile
Definition: mxfenc.c:2228