FFmpeg
Functions
av1.c File Reference
#include "libavutil/mem.h"
#include "libavcodec/av1.h"
#include "libavcodec/av1_parse.h"
#include "libavcodec/profiles.h"
#include "libavcodec/put_bits.h"
#include "av1.h"
#include "avio.h"
#include "avio_internal.h"

Go to the source code of this file.

Functions

int ff_av1_filter_obus (AVIOContext *pb, const uint8_t *buf, int size)
 Filter out AV1 OBUs not meant to be present in ISOBMFF sample data and write the resulting bitstream to the provided AVIOContext. More...
 
int ff_av1_filter_obus_buf (const uint8_t *buf, uint8_t **out, int *size)
 Filter out AV1 OBUs not meant to be present in ISOBMFF sample data and write the resulting bitstream to a newly allocated data buffer. More...
 
static void uvlc (GetBitContext *gb)
 
static int parse_color_config (AV1SequenceParameters *seq_params, GetBitContext *gb)
 
static int parse_sequence_header (AV1SequenceParameters *seq_params, const uint8_t *buf, int size)
 
int ff_av1_parse_seq_header (AV1SequenceParameters *seq, const uint8_t *buf, int size)
 Parses a Sequence Header from the the provided buffer. More...
 
int ff_isom_write_av1c (AVIOContext *pb, const uint8_t *buf, int size)
 Writes AV1 extradata (Sequence Header and Metadata OBUs) to the provided AVIOContext. More...
 

Function Documentation

◆ ff_av1_filter_obus()

int ff_av1_filter_obus ( AVIOContext pb,
const uint8_t buf,
int  size 
)

Filter out AV1 OBUs not meant to be present in ISOBMFF sample data and write the resulting bitstream to the provided AVIOContext.

Parameters
pbpointer to the AVIOContext where the filtered bitstream shall be written
bufinput data buffer
sizesize of the input data buffer
Returns
the amount of bytes written in case of success, a negative AVERROR code in case of failure

Definition at line 31 of file av1.c.

Referenced by ff_av1_filter_obus_buf(), and ff_mov_write_packet().

◆ ff_av1_filter_obus_buf()

int ff_av1_filter_obus_buf ( const uint8_t buf,
uint8_t **  out,
int size 
)

Filter out AV1 OBUs not meant to be present in ISOBMFF sample data and write the resulting bitstream to a newly allocated data buffer.

Parameters
pbpointer to the AVIOContext where the filtered bitstream shall be written
bufinput data buffer
outpointer to pointer that will hold the allocated data buffer
sizesize of the input data buffer. The size of the resulting output data buffer will be written here
Returns
the amount of bytes written in case of success, a negative AVERROR code in case of failure. On failure, out and size are unchanged

Definition at line 61 of file av1.c.

Referenced by ff_mov_write_packet(), and mkv_write_block().

◆ uvlc()

static void uvlc ( GetBitContext gb)
inlinestatic

Definition at line 82 of file av1.c.

Referenced by parse_sequence_header().

◆ parse_color_config()

static int parse_color_config ( AV1SequenceParameters seq_params,
GetBitContext gb 
)
static

Definition at line 98 of file av1.c.

Referenced by parse_sequence_header().

◆ parse_sequence_header()

static int parse_sequence_header ( AV1SequenceParameters seq_params,
const uint8_t buf,
int  size 
)
static

Definition at line 164 of file av1.c.

Referenced by ff_av1_parse_seq_header(), and ff_isom_write_av1c().

◆ ff_av1_parse_seq_header()

int ff_av1_parse_seq_header ( AV1SequenceParameters seq,
const uint8_t buf,
int  size 
)

Parses a Sequence Header from the the provided buffer.

Parameters
seqpointer to the AV1SequenceParameters where the parsed values will be written
bufinput data buffer
sizesize in bytes of the input data buffer
Returns
>= 0 in case of success, a negative AVERROR code in case of failure

Definition at line 293 of file av1.c.

Referenced by set_codec_str().

◆ ff_isom_write_av1c()

int ff_isom_write_av1c ( AVIOContext pb,
const uint8_t buf,
int  size 
)

Writes AV1 extradata (Sequence Header and Metadata OBUs) to the provided AVIOContext.

Parameters
pbpointer to the AVIOContext where the hvcC shall be written
bufinput data buffer
sizesize in bytes of the input data buffer
Returns
>= 0 in case of success, a negative AVERROR code in case of failure

Definition at line 323 of file av1.c.

Referenced by mkv_check_new_extra_data(), mkv_write_native_codecprivate(), and mov_write_av1c_tag().