FFmpeg
Macros | Functions | Variables
avcodec.c File Reference
#include "config.h"
#include "libavutil/avassert.h"
#include "libavutil/avstring.h"
#include "libavutil/bprint.h"
#include "libavutil/channel_layout.h"
#include "libavutil/emms.h"
#include "libavutil/fifo.h"
#include "libavutil/imgutils.h"
#include "libavutil/mem.h"
#include "libavutil/opt.h"
#include "libavutil/thread.h"
#include "avcodec.h"
#include "avcodec_internal.h"
#include "bsf.h"
#include "codec_desc.h"
#include "codec_internal.h"
#include "decode.h"
#include "encode.h"
#include "frame_thread_encoder.h"
#include "hwconfig.h"
#include "internal.h"
#include "refstruct.h"
#include "thread.h"

Go to the source code of this file.

Macros

#define FF_MAX_EXTRADATA_SIZE   ((1 << 28) - AV_INPUT_BUFFER_PADDING_SIZE)
 Maximum size in bytes of extradata. More...
 

Functions

int avcodec_default_execute (AVCodecContext *c, int(*func)(AVCodecContext *c2, void *arg2), void *arg, int *ret, int count, int size)
 
int avcodec_default_execute2 (AVCodecContext *c, int(*func)(AVCodecContext *c2, void *arg2, int jobnr, int threadnr), void *arg, int *ret, int count)
 
static void lock_avcodec (const FFCodec *codec)
 
static void unlock_avcodec (const FFCodec *codec)
 
static int64_t get_bit_rate (AVCodecContext *ctx)
 
int attribute_align_arg avcodec_open2 (AVCodecContext *avctx, const AVCodec *codec, AVDictionary **options)
 Initialize the AVCodecContext to use the given AVCodec. More...
 
void avcodec_flush_buffers (AVCodecContext *avctx)
 Reset the internal codec state / flush internal buffers. More...
 
void avsubtitle_free (AVSubtitle *sub)
 Free all allocated data in the given subtitle struct. More...
 
av_cold void ff_codec_close (AVCodecContext *avctx)
 
int avcodec_close (AVCodecContext *avctx)
 Close a given AVCodecContext and free all the data associated with it (but not the AVCodecContext itself). More...
 
static const char * unknown_if_null (const char *str)
 
void avcodec_string (char *buf, int buf_size, AVCodecContext *enc, int encode)
 
int avcodec_is_open (AVCodecContext *s)
 
int attribute_align_arg avcodec_receive_frame (AVCodecContext *avctx, AVFrame *frame)
 Return decoded output data from a decoder or encoder (when the AV_CODEC_FLAG_RECON_FRAME flag is used). More...
 

Variables

static AVMutex codec_mutex = AV_MUTEX_INITIALIZER
 

Detailed Description

AVCodecContext functions for libavcodec

Definition in file avcodec.c.

Macro Definition Documentation

◆ FF_MAX_EXTRADATA_SIZE

#define FF_MAX_EXTRADATA_SIZE   ((1 << 28) - AV_INPUT_BUFFER_PADDING_SIZE)

Maximum size in bytes of extradata.

This value was chosen such that every bit of the buffer is addressable by a 32-bit signed integer as used by get_bits.

Definition at line 55 of file avcodec.c.

Function Documentation

◆ avcodec_default_execute2()

int avcodec_default_execute2 ( AVCodecContext c,
int(*)(AVCodecContext *c2, void *arg2, int jobnr, int threadnr)  func,
void *  arg,
int ret,
int  count 
)

Definition at line 71 of file avcodec.c.

Referenced by init_context_defaults().

◆ lock_avcodec()

static void lock_avcodec ( const FFCodec codec)
static

Definition at line 86 of file avcodec.c.

Referenced by avcodec_open2().

◆ unlock_avcodec()

static void unlock_avcodec ( const FFCodec codec)
static

Definition at line 92 of file avcodec.c.

Referenced by avcodec_open2().

◆ get_bit_rate()

static int64_t get_bit_rate ( AVCodecContext ctx)
static

Definition at line 98 of file avcodec.c.

Referenced by avcodec_open2(), and avcodec_string().

◆ ff_codec_close()

av_cold void ff_codec_close ( AVCodecContext avctx)

◆ unknown_if_null()

static const char* unknown_if_null ( const char *  str)
static

Definition at line 476 of file avcodec.c.

Referenced by avcodec_string().

Variable Documentation

◆ codec_mutex

AVMutex codec_mutex = AV_MUTEX_INITIALIZER
static

Definition at line 84 of file avcodec.c.

Referenced by lock_avcodec(), and unlock_avcodec().