FFmpeg
Macros | Functions | Variables
h264_levels.c File Reference
#include "libavutil/common.h"
#include "libavcodec/h264_levels.h"

Go to the source code of this file.

Macros

#define CHECK(expected, format, ...)
 

Functions

int main (void)
 

Variables

struct {
   int   width
 
   int   height
 
   int   level_idc
 
test_sizes []
 
struct {
   int   width
 
   int   height
 
   int   framerate
 
   int   level_idc
 
test_framerate []
 
struct {
   int   width
 
   int   height
 
   int   dpb_size
 
   int   level_idc
 
test_dpb []
 
struct {
   int64_t   bitrate
 
   int   profile_idc
 
   int   level_idc
 
test_bitrate []
 
struct {
   const char *   name
 
   int   profile_idc
 
   int64_t   bitrate
 
   int   width
 
   int   height
 
   int   dpb_frames
 
   int   level_idc
 
test_all []
 

Macro Definition Documentation

◆ CHECK

#define CHECK (   expected,
  format,
  ... 
)
Value:
do { \
if (expected ? (!level || level->level_idc != expected) \
: !!level) { \
av_log(NULL, AV_LOG_ERROR, "Incorrect level for " \
format ": expected %d, got %d.\n", __VA_ARGS__, \
expected, level ? level->level_idc : -1); \
return 1; \
} \
} while (0)

Function Documentation

◆ main()

int main ( void  )

Definition at line 176 of file h264_levels.c.

Variable Documentation

◆ width

int width

Definition at line 23 of file h264_levels.c.

Referenced by ff_h264_guess_level(), and main().

◆ height

int height

Definition at line 24 of file h264_levels.c.

Referenced by ff_h264_guess_level(), and main().

◆ level_idc

int level_idc

◆ test_sizes

const { ... } test_sizes[]

Referenced by main().

◆ framerate

int framerate

◆ test_framerate

const { ... } test_framerate[]

Referenced by main().

◆ dpb_size

int dpb_size

◆ test_dpb

const { ... } test_dpb[]
Initial value:
= {
{ 176, 144, 4, 10 },
{ 176, 144, 8, 11 },
{ 176, 144, 16, 12 },
{ 1280, 720, 1, 31 },
{ 1280, 720, 5, 31 },
{ 1280, 720, 9, 40 },
{ 1280, 720, 10, 50 },
{ 1920, 1080, 1, 40 },
{ 1920, 1080, 5, 50 },
{ 1920, 1080, 13, 50 },
{ 1920, 1080, 14, 51 },
{ 3840, 2160, 5, 51 },
{ 3840, 2160, 6, 60 },
{ 3840, 2160, 16, 60 },
{ 7680, 4320, 5, 60 },
{ 7680, 4320, 6, 0 },
}

Referenced by main().

◆ bitrate

int64_t bitrate

◆ profile_idc

int profile_idc

Definition at line 132 of file h264_levels.c.

◆ test_bitrate

const { ... } test_bitrate[]
Initial value:
= {
{ 2500000, 77, 21 },
{ 2500000, 100, 20 },
{ 2500000, 244, 13 },
{ 100000000, 77, 50 },
{ 100000000, 100, 50 },
{ 100000000, 244, 41 },
{ 999999999, 77, 0 },
{ 999999999, 100, 62 },
{ 32 * 1200, 66, 10 },
{ 32 * 1500, 100, 10 },
{ 96 * 1200, 66, 11 },
{ 96 * 1500, 100, 9 },
{ 144 * 1200, 66, 11 },
{ 144 * 1500, 100, 11 },
}

Referenced by main().

◆ name

const char* name

Definition at line 154 of file h264_levels.c.

Referenced by main().

◆ dpb_frames

int dpb_frames

◆ test_all

const { ... } test_all[]
Initial value:
= {
{ "Bluray 1080p 40Mb/s", 100, 40000000, 1920, 1080, 4, 41 },
{ "Bluray 1080p 24Mb/s", 100, 24000000, 1920, 1080, 4, 40 },
{ "Bluray 720p 40Mb/s", 100, 40000000, 1280, 720, 6, 41 },
{ "Bluray 720p 24Mb/s", 100, 24000000, 1280, 720, 6, 40 },
{ "Bluray PAL 40Mb/s", 100, 40000000, 720, 576, 6, 41 },
{ "Bluray PAL 24Mb/s", 100, 24000000, 720, 576, 6, 32 },
{ "Bluray PAL 16Mb/s", 100, 16800000, 720, 576, 6, 31 },
{ "Bluray PAL 12Mb/s", 100, 12000000, 720, 576, 5, 30 },
{ "Bluray NTSC 40Mb/s", 100, 40000000, 720, 480, 6, 41 },
{ "Bluray NTSC 24Mb/s", 100, 24000000, 720, 480, 6, 32 },
{ "Bluray NTSC 16Mb/s", 100, 16800000, 720, 480, 6, 31 },
{ "Bluray NTSC 12Mb/s", 100, 12000000, 720, 480, 6, 30 },
}

Referenced by main().

level
uint8_t level
Definition: svq3.c:204
AV_LOG_ERROR
#define AV_LOG_ERROR
Something went wrong and cannot losslessly be recovered.
Definition: log.h:181
NULL
#define NULL
Definition: coverity.c:32
format
fg outputs[0] format
Definition: ffmpeg_filter.c:175