encode.h File Reference
#include "libavutil/frame.h"
#include "avcodec.h"
#include "packet.h"

Go to the source code of this file.


int ff_encode_receive_frame (AVCodecContext *avctx, AVFrame *frame)
 avcodec_receive_frame() implementation for encoders. More...
int ff_encode_get_frame (AVCodecContext *avctx, AVFrame *frame)
 Called by encoders to get the next frame for encoding. More...
int ff_get_encode_buffer (AVCodecContext *avctx, AVPacket *avpkt, int64_t size, int flags)
 Get a buffer for a packet. More...
int ff_encode_alloc_frame (AVCodecContext *avctx, AVFrame *frame)
 Allocate buffers for a frame. More...
int ff_alloc_packet (AVCodecContext *avctx, AVPacket *avpkt, int64_t size)
 Check AVPacket size and allocate data. More...
int ff_encode_preinit (AVCodecContext *avctx)

Function Documentation

◆ ff_encode_receive_frame()

int ff_encode_receive_frame ( AVCodecContext avctx,
AVFrame frame 

avcodec_receive_frame() implementation for encoders.

Definition at line 714 of file encode.c.

Referenced by avcodec_receive_frame().

◆ ff_encode_get_frame()

int ff_encode_get_frame ( AVCodecContext avctx,
AVFrame frame 

Called by encoders to get the next frame for encoding.

frameAn empty frame to be filled with data.
0 if a new reference has been successfully written to frame AVERROR(EAGAIN) if no data is currently available AVERROR_EOF if end of stream has been reached, so no more data will be available

Definition at line 160 of file encode.c.

Referenced by eb_receive_packet(), encode_simple_internal(), ff_amf_receive_packet(), ff_nvenc_receive_packet(), ff_vaapi_encode_receive_packet(), librav1e_receive_packet(), mf_receive_packet(), and v4l2_receive_packet().

◆ ff_get_encode_buffer()

int ff_get_encode_buffer ( AVCodecContext avctx,
AVPacket avpkt,
int64_t  size,
int  flags 

◆ ff_encode_alloc_frame()

int ff_encode_alloc_frame ( AVCodecContext avctx,
AVFrame frame 

Allocate buffers for a frame.

Encoder equivalent to ff_get_buffer().

Definition at line 680 of file encode.c.

Referenced by alloc_frame_buffer(), ff_snow_get_buffer(), roq_encode_frame(), and svq1_encode_frame().

◆ ff_alloc_packet()

int ff_alloc_packet ( AVCodecContext avctx,
AVPacket avpkt,
int64_t  size 

Check AVPacket size and allocate data.

Encoders supporting FFCodec.encode2() can use this as a convenience to obtain a big enough buffer for the encoded bitstream.

avctxthe AVCodecContext of the encoder
avpktThe AVPacket: on success, avpkt->data will point to a buffer of size at least size; the packet will not be refcounted. This packet must be initially blank.
sizean upper bound of the size of the packet to encode
non negative on success, negative error code on failure

Definition at line 35 of file encode.c.

Referenced by aac_encode_frame(), alac_encode_frame(), amr_wb_encode_frame(), cfhd_encode_frame(), cinepak_encode_frame(), encode_frame(), encode_png(), encode_superframe(), ff_mpv_encode_picture(), ffat_encode(), flashsv2_encode_frame(), flashsv_encode_frame(), gif_encode_frame(), hap_encode(), ilbc_encode_frame(), libopenjpeg_encode_frame(), libopus_encode(), ljpeg_encode_frame(), magy_encode_frame(), mlp_encode_frame(), MPA_encode_frame(), opus_encode_frame(), pcx_encode_frame(), prores_encode_frame(), qoi_encode_frame(), qtrle_encode_frame(), roq_encode_frame(), rpza_encode_frame(), smc_encode_frame(), sunrast_encode_frame(), svq1_encode_frame(), targa_encode_frame(), tta_encode_frame(), twolame_encode_frame(), utvideo_encode_frame(), vorbis_encode_frame(), wavpack_encode_frame(), xbm_encode_frame(), and xvid_encode_frame().

◆ ff_encode_preinit()

int ff_encode_preinit ( AVCodecContext avctx)

Definition at line 625 of file encode.c.

Referenced by avcodec_open2().