FFmpeg
Loading...
Searching...
No Matches
cbs_av1.c File Reference
#include "libavutil/attributes.h"
#include "libavutil/avassert.h"
#include "libavutil/opt.h"
#include "libavutil/pixfmt.h"
#include "cbs.h"
#include "cbs_internal.h"
#include "cbs_av1.h"
#include "defs.h"
#include "libavutil/refstruct.h"

Go to the source code of this file.

Macros

#define HEADER(name)
 
#define CHECK(call)
 
#define FUNC_NAME(rw, codec, name)
 
#define FUNC_AV1(rw, name)
 
#define FUNC(name)
 
#define SUBSCRIPTS(subs, ...)
 
#define OFFSET(x)
 

Functions

static int cbs_av1_tile_log2 (int blksize, int target)
 
static int cbs_av1_get_relative_dist (const AV1RawSequenceHeader *seq, unsigned int a, unsigned int b)
 
static av_unused size_t cbs_av1_get_payload_bytes_left (GetBitContext *gbc)
 
static int cbs_av1_split_fragment (CodedBitstreamContext *ctx, CodedBitstreamFragment *frag, int header)
 
static int cbs_av1_read_unit (CodedBitstreamContext *ctx, CodedBitstreamUnit *unit)
 
static int cbs_av1_write_obu (CodedBitstreamContext *ctx, CodedBitstreamUnit *unit, PutBitContext *pbc)
 
static int cbs_av1_assemble_fragment (CodedBitstreamContext *ctx, CodedBitstreamFragment *frag)
 
static av_cold void cbs_av1_flush (CodedBitstreamContext *ctx)
 
static av_cold void cbs_av1_close (CodedBitstreamContext *ctx)
 
const CodedBitstreamType CBS_FUNC (type_av1)
 

Variables

static CodedBitstreamUnitTypeDescriptor cbs_av1_unit_types []
 
static const AVOption cbs_av1_options []
 
static const AVClass cbs_av1_class
 

Macro Definition Documentation

◆ HEADER

#define HEADER ( name)
Value:
do { \
CBS_FUNC(trace_header)(ctx, name); \
} while (0)
void CBS_FUNC trace_header(CodedBitstreamContext *ctx, const char *name)
Definition cbs.c:481
const char * name
Definition qsvenc.c:142
static AVFormatContext * ctx
Definition movenc.c:49

Definition at line 477 of file cbs_av1.c.

◆ CHECK

#define CHECK ( call)
Value:
do { \
err = (call); \
if (err < 0) \
return err; \
} while (0)

Definition at line 481 of file cbs_av1.c.

◆ FUNC_NAME

#define FUNC_NAME ( rw,
codec,
name )
Value:
cbs_ ## codec ## _ ## rw ## _ ## name
#define _

Definition at line 487 of file cbs_av1.c.

Referenced by ff_vk_load_functions().

◆ FUNC_AV1

#define FUNC_AV1 ( rw,
name )
Value:
FUNC_NAME(rw, av1, name)
#define FUNC_NAME(rw, codec, name)
Definition cbs_av1.c:487

Definition at line 488 of file cbs_av1.c.

◆ FUNC

#define FUNC ( name)
Value:
#define READWRITE
Definition cbs_h264.c:92
#define FUNC_AV1(rw, name)
Definition cbs_av1.c:488

Definition at line 489 of file cbs_av1.c.

◆ SUBSCRIPTS

#define SUBSCRIPTS ( subs,
... )
Value:
(subs > 0 ? ((int[subs + 1]){ subs, __VA_ARGS__ }) : NULL)
#define NULL
Definition coverity.c:32

Definition at line 491 of file cbs_av1.c.

◆ OFFSET

#define OFFSET ( x)
Value:

Definition at line 1364 of file cbs_av1.c.

Function Documentation

◆ cbs_av1_tile_log2()

static int cbs_av1_tile_log2 ( int blksize,
int target )
static

Definition at line 446 of file cbs_av1.c.

Referenced by tile_group_obu(), and tile_info().

◆ cbs_av1_get_relative_dist()

static int cbs_av1_get_relative_dist ( const AV1RawSequenceHeader * seq,
unsigned int a,
unsigned int b )
static

Definition at line 453 of file cbs_av1.c.

Referenced by set_frame_refs(), skip_mode_params(), and uncompressed_header().

◆ cbs_av1_get_payload_bytes_left()

static av_unused size_t cbs_av1_get_payload_bytes_left ( GetBitContext * gbc)
static

Definition at line 465 of file cbs_av1.c.

◆ cbs_av1_split_fragment()

static int cbs_av1_split_fragment ( CodedBitstreamContext * ctx,
CodedBitstreamFragment * frag,
int header )
static

Definition at line 697 of file cbs_av1.c.

Referenced by CBS_FUNC().

◆ cbs_av1_read_unit()

static int cbs_av1_read_unit ( CodedBitstreamContext * ctx,
CodedBitstreamUnit * unit )
static

Definition at line 839 of file cbs_av1.c.

Referenced by CBS_FUNC().

◆ cbs_av1_write_obu()

static int cbs_av1_write_obu ( CodedBitstreamContext * ctx,
CodedBitstreamUnit * unit,
PutBitContext * pbc )
static

Definition at line 1031 of file cbs_av1.c.

Referenced by CBS_FUNC().

◆ cbs_av1_assemble_fragment()

static int cbs_av1_assemble_fragment ( CodedBitstreamContext * ctx,
CodedBitstreamFragment * frag )
static

Definition at line 1241 of file cbs_av1.c.

Referenced by CBS_FUNC().

◆ cbs_av1_flush()

static av_cold void cbs_av1_flush ( CodedBitstreamContext * ctx)
static

Definition at line 1273 of file cbs_av1.c.

Referenced by CBS_FUNC().

◆ cbs_av1_close()

static av_cold void cbs_av1_close ( CodedBitstreamContext * ctx)
static

Definition at line 1287 of file cbs_av1.c.

Referenced by CBS_FUNC().

◆ CBS_FUNC()

const CodedBitstreamType CBS_FUNC ( type_av1 )

Variable Documentation

◆ cbs_av1_unit_types

CodedBitstreamUnitTypeDescriptor cbs_av1_unit_types[]
static

Definition at line 1319 of file cbs_av1.c.

Referenced by CBS_FUNC().

◆ cbs_av1_options

const AVOption cbs_av1_options[]
static
Initial value:
= {
{ "operating_point", "Set operating point to select layers to parse from a scalable bitstream",
OFFSET(operating_point), AV_OPT_TYPE_INT, { .i64 = -1 }, -1, AV1_MAX_OPERATING_POINTS - 1, 0 },
{ "fixed_obu_size_length", "Set fixed length of the obu_size field",
OFFSET(fixed_obu_size_length), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 8, 0 },
{ NULL }
}
#define OFFSET(x)
@ AV_OPT_TYPE_INT
Underlying C type is int.
Definition opt.h:258
@ AV1_MAX_OPERATING_POINTS
Definition av1.h:74

Definition at line 1365 of file cbs_av1.c.

◆ cbs_av1_class

const AVClass cbs_av1_class
static
Initial value:
= {
.class_name = "cbs_av1",
.item_name = av_default_item_name,
.option = cbs_av1_options,
}
const char * av_default_item_name(void *ptr)
Return the context name.
Definition log.c:241
#define LIBAVUTIL_VERSION_INT
Definition version.h:85
static const AVOption cbs_av1_options[]
Definition cbs_av1.c:1365

Definition at line 1373 of file cbs_av1.c.

Referenced by CBS_FUNC().