World of Might and Magic  0.2.0
Open reimplementation of Might and Magic 6 7 8 game engine
Структура AVCodec

#include <avcodec.h>

+ Граф связей класса AVCodec:

Открытые атрибуты

const char * name
 
const char * long_name
 
enum AVMediaType type
 
enum AVCodecID id
 
int capabilities
 
const AVRationalsupported_framerates
 array of supported framerates, or NULL if any, array is terminated by {0,0} Подробнее...
 
enum AVPixelFormatpix_fmts
 array of supported pixel formats, or NULL if unknown, array is terminated by -1 Подробнее...
 
const int * supported_samplerates
 array of supported audio samplerates, or NULL if unknown, array is terminated by 0 Подробнее...
 
enum AVSampleFormatsample_fmts
 array of supported sample formats, or NULL if unknown, array is terminated by -1 Подробнее...
 
const uint64_tchannel_layouts
 array of support channel layouts, or NULL if unknown. array is terminated by 0 Подробнее...
 
uint8_t max_lowres
 maximum value for lowres supported by the decoder Подробнее...
 
const AVClasspriv_class
 AVClass for the private context. Подробнее...
 
const AVProfileprofiles
 array of recognized profiles, or NULL if unknown, array is terminated by {FF_PROFILE_UNKNOWN} Подробнее...
 
const char * wrapper_name
 
int priv_data_size
 
struct AVCodecnext
 
const AVCodecDefaultdefaults
 
void(* init_static_data )(struct AVCodec *codec)
 
int(* init )(AVCodecContext *)
 
int(* encode_sub )(AVCodecContext *, uint8_t *buf, int buf_size, const struct AVSubtitle *sub)
 
int(* encode2 )(AVCodecContext *avctx, AVPacket *avpkt, const AVFrame *frame, int *got_packet_ptr)
 
int(* decode )(AVCodecContext *, void *outdata, int *outdata_size, AVPacket *avpkt)
 
int(* close )(AVCodecContext *)
 
int(* send_frame )(AVCodecContext *avctx, const AVFrame *frame)
 
int(* receive_packet )(AVCodecContext *avctx, AVPacket *avpkt)
 
int(* receive_frame )(AVCodecContext *avctx, AVFrame *frame)
 
void(* flush )(AVCodecContext *)
 
int caps_internal
 
const char * bsfs
 
const struct AVCodecHWConfigInternal ** hw_configs
 
Frame-level threading support functions
int(* init_thread_copy )(AVCodecContext *)
 
int(* update_thread_context )(AVCodecContext *dst, const AVCodecContext *src)
 

Подробное описание

AVCodec.

См. определение в файле avcodec.h строка 3481

Данные класса

◆ name

const char* AVCodec::name

Name of the codec implementation. The name is globally unique among encoders and among decoders (but an encoder and a decoder can share the same name). This is the primary way to find a codec from the user perspective.

См. определение в файле avcodec.h строка 3488

◆ long_name

const char* AVCodec::long_name

Descriptive name for the codec, meant to be more human readable than name. You should use the NULL_IF_CONFIG_SMALL() macro to define it.

См. определение в файле avcodec.h строка 3493

◆ type

enum AVMediaType AVCodec::type

См. определение в файле avcodec.h строка 3494

◆ id

enum AVCodecID AVCodec::id

См. определение в файле avcodec.h строка 3495

◆ capabilities

int AVCodec::capabilities

Codec capabilities. see AV_CODEC_CAP_*

См. определение в файле avcodec.h строка 3500

◆ supported_framerates

const AVRational* AVCodec::supported_framerates

array of supported framerates, or NULL if any, array is terminated by {0,0}

См. определение в файле avcodec.h строка 3501

◆ pix_fmts

enum AVPixelFormat* AVCodec::pix_fmts

array of supported pixel formats, or NULL if unknown, array is terminated by -1

См. определение в файле avcodec.h строка 3502

◆ supported_samplerates

const int* AVCodec::supported_samplerates

array of supported audio samplerates, or NULL if unknown, array is terminated by 0

См. определение в файле avcodec.h строка 3503

◆ sample_fmts

enum AVSampleFormat* AVCodec::sample_fmts

array of supported sample formats, or NULL if unknown, array is terminated by -1

См. определение в файле avcodec.h строка 3504

◆ channel_layouts

const uint64_t* AVCodec::channel_layouts

array of support channel layouts, or NULL if unknown. array is terminated by 0

См. определение в файле avcodec.h строка 3505

◆ max_lowres

uint8_t AVCodec::max_lowres

maximum value for lowres supported by the decoder

См. определение в файле avcodec.h строка 3506

◆ priv_class

const AVClass* AVCodec::priv_class

AVClass for the private context.

См. определение в файле avcodec.h строка 3507

◆ profiles

const AVProfile* AVCodec::profiles

array of recognized profiles, or NULL if unknown, array is terminated by {FF_PROFILE_UNKNOWN}

См. определение в файле avcodec.h строка 3508

◆ wrapper_name

const char* AVCodec::wrapper_name

Group name of the codec implementation. This is a short symbolic name of the wrapper backing this codec. A wrapper uses some kind of external implementation for the codec, such as an external library, or a codec implementation provided by the OS or the hardware. If this field is NULL, this is a builtin, libavcodec native codec. If non-NULL, this will be the suffix in AVCodec.name in most cases (usually AVCodec.name will be of the form "<codec_name>_<wrapper_name>").

См. определение в файле avcodec.h строка 3520

◆ priv_data_size

int AVCodec::priv_data_size

См. определение в файле avcodec.h строка 3529

◆ next

struct AVCodec* AVCodec::next

См. определение в файле avcodec.h строка 3530

◆ init_thread_copy

int(* AVCodec::init_thread_copy) (AVCodecContext *)

If defined, called on thread contexts when they are created. If the codec allocates writable tables in init(), re-allocate them here. priv_data will be set to a copy of the original.

См. определение в файле avcodec.h строка 3540

◆ update_thread_context

int(* AVCodec::update_thread_context) (AVCodecContext *dst, const AVCodecContext *src)

Copy necessary context variables from a previous thread context to the current one. If not defined, the next thread will start automatically; otherwise, the codec must call ff_thread_finish_setup().

dst and src will (rarely) point to the same context, in which case memcpy should be skipped.

См. определение в файле avcodec.h строка 3548

◆ defaults

const AVCodecDefault* AVCodec::defaults

Private codec-specific defaults.

См. определение в файле avcodec.h строка 3554

◆ init_static_data

void(* AVCodec::init_static_data) (struct AVCodec *codec)

Initialize codec static data, called from avcodec_register().

This is not intended for time consuming operations as it is run for every codec regardless of that codec being used.

См. определение в файле avcodec.h строка 3562

◆ init

int(* AVCodec::init) (AVCodecContext *)

См. определение в файле avcodec.h строка 3564

◆ encode_sub

int(* AVCodec::encode_sub) (AVCodecContext *, uint8_t *buf, int buf_size, const struct AVSubtitle *sub)

См. определение в файле avcodec.h строка 3565

◆ encode2

int(* AVCodec::encode2) (AVCodecContext *avctx, AVPacket *avpkt, const AVFrame *frame, int *got_packet_ptr)

Encode data to an AVPacket.

Аргументы
avctxcodec context
avpktoutput AVPacket (may contain a user-provided buffer)
[in]frameAVFrame containing the raw data to be encoded
[out]got_packet_ptrencoder sets to 0 or 1 to indicate that a non-empty packet was returned in avpkt.
Возвращает
0 on success, negative error code on failure

См. определение в файле avcodec.h строка 3577

◆ decode

int(* AVCodec::decode) (AVCodecContext *, void *outdata, int *outdata_size, AVPacket *avpkt)

См. определение в файле avcodec.h строка 3579

◆ close

int(* AVCodec::close) (AVCodecContext *)

См. определение в файле avcodec.h строка 3580

◆ send_frame

int(* AVCodec::send_frame) (AVCodecContext *avctx, const AVFrame *frame)

Encode API with decoupled packet/frame dataflow. The API is the same as the avcodec_ prefixed APIs (avcodec_send_frame() etc.), except that:

  • never called if the codec is closed or the wrong type,
  • if AV_CODEC_CAP_DELAY is not set, drain frames are never sent,
  • only one drain frame is ever passed down,

См. определение в файле avcodec.h строка 3589

◆ receive_packet

int(* AVCodec::receive_packet) (AVCodecContext *avctx, AVPacket *avpkt)

См. определение в файле avcodec.h строка 3590

◆ receive_frame

int(* AVCodec::receive_frame) (AVCodecContext *avctx, AVFrame *frame)

Decode API with decoupled packet/frame dataflow. This function is called to get one output frame. It should call ff_decode_get_packet() to obtain input data.

См. определение в файле avcodec.h строка 3597

◆ flush

void(* AVCodec::flush) (AVCodecContext *)

Flush buffers. Will be called when seeking

См. определение в файле avcodec.h строка 3602

◆ caps_internal

int AVCodec::caps_internal

Internal codec capabilities. See FF_CODEC_CAP_* in internal.h

См. определение в файле avcodec.h строка 3607

◆ bsfs

const char* AVCodec::bsfs

Decoding only, a comma-separated list of bitstream filters to apply to packets before decoding.

См. определение в файле avcodec.h строка 3613

◆ hw_configs

const struct AVCodecHWConfigInternal** AVCodec::hw_configs

Array of pointers to hardware configurations supported by the codec, or NULL if no hardware supported. The array is terminated by a NULL pointer.

The user can only access this field via avcodec_get_hw_config().

См. определение в файле avcodec.h строка 3622


Объявления и описания членов структуры находятся в файле: