FFmpeg
|
Go to the source code of this file.
Macros | |
#define | FF_INPUT_BUFFER_MIN_SIZE 16384 |
Used by some encoders as upper bound for the length of headers. More... | |
Functions | |
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_reordered_opaque (AVCodecContext *avctx, AVPacket *pkt, const AVFrame *frame) |
Propagate user opaque values from the frame to avctx/pkt as needed. More... | |
int | ff_encode_encode_cb (AVCodecContext *avctx, AVPacket *avpkt, AVFrame *frame, int *got_packet) |
AVCPBProperties * | ff_encode_add_cpb_side_data (AVCodecContext *avctx) |
Add a CPB properties side data to an encoding context. More... | |
static av_always_inline int64_t | ff_samples_to_time_base (const AVCodecContext *avctx, int64_t samples) |
Rescale from sample rate to AVCodecContext.time_base. More... | |
#define FF_INPUT_BUFFER_MIN_SIZE 16384 |
int ff_encode_get_frame | ( | AVCodecContext * | avctx, |
AVFrame * | frame | ||
) |
Called by encoders to get the next frame for encoding.
frame | An empty frame to be filled with data. |
Definition at line 205 of file encode.c.
Referenced by eb_receive_packet(), encode_simple_internal(), ff_amf_receive_packet(), ff_hw_base_encode_receive_packet(), ff_nvenc_receive_packet(), librav1e_receive_packet(), mediacodec_encode(), mf_receive_packet(), v4l2_receive_packet(), and vulkan_encode_ffv1_receive_packet().
int ff_get_encode_buffer | ( | AVCodecContext * | avctx, |
AVPacket * | avpkt, | ||
int64_t | size, | ||
int | flags | ||
) |
Get a buffer for a packet.
This is a wrapper around AVCodecContext.get_encode_buffer() and should be used instead calling get_encode_buffer() directly.
Definition at line 106 of file encode.c.
Referenced by a64multi_encode_frame(), adx_encode_frame(), amf_copy_buffer(), aptx_encode_frame(), avui_encode_frame(), bmp_encode_frame(), cng_encode_frame(), d3d12va_encode_get_coded_data(), dfpwm_enc_frame(), dnxhd_encode_picture(), dvvideo_encode_frame(), encode_apng(), encode_frame(), encode_make_refcounted(), encode_nals(), encode_picture_ls(), encode_yuv422p10(), ff_ac3_encode_frame(), fits_encode_frame(), flac_encode_frame(), g723_1_encode_frame(), hdr_encode_frame(), libcodec2_encode(), libgsm_encode_frame(), libjxl_encode_frame(), libkvazaar_encode(), liblc3_encode(), librav1e_receive_packet(), libshine_encode_frame(), libvorbis_encode_frame(), libwebp_anim_encode_frame(), libwebp_encode_frame(), libx265_encode_frame(), libxeve_encode(), mediacodec_receive(), mf_sample_to_avpacket(), mp3lame_encode_frame(), pam_encode_frame(), pcm_bluray_encode_frame(), pcm_dvd_encode_frame(), pcm_encode_frame(), pnm_encode_frame(), process_output_surface(), ra144_encode_frame(), raw_encode(), roq_dpcm_encode_frame(), s302m_encode2_frame(), sbc_encode_frame(), storeframe(), svc_encode_frame(), v308_encode_frame(), v408_encode_frame(), v410_encode_frame(), vaapi_encode_get_coded_data(), vaapi_encode_output(), vbn_encode(), vtenc_cm_to_avpacket(), vvenc_frame(), wbmp_encode_frame(), xavs2_encode_frame(), XAVS_frame(), xface_encode_frame(), xwd_encode_frame(), y41p_encode_frame(), and yuv4_encode_frame().
int ff_encode_alloc_frame | ( | AVCodecContext * | avctx, |
AVFrame * | frame | ||
) |
Allocate buffers for a frame.
Encoder equivalent to ff_get_buffer().
Definition at line 847 of file encode.c.
Referenced by get_encode_buffer(), librav1e_receive_packet(), prepare_picture(), roq_encode_frame(), and svq1_encode_frame().
int ff_alloc_packet | ( | AVCodecContext * | avctx, |
AVPacket * | avpkt, | ||
int64_t | size | ||
) |
Check AVPacket size and allocate data.
Encoders of type FF_CODEC_CB_TYPE_ENCODE can use this as a convenience to obtain a big enough buffer for the encoded bitstream.
avctx | the AVCodecContext of the encoder |
avpkt | The 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. |
size | an upper bound of the size of the packet to encode |
Definition at line 62 of file encode.c.
Referenced by aac_encode_frame(), alac_encode_frame(), amr_wb_encode_frame(), cfhd_encode_frame(), cinepak_encode_frame(), dxv_encode(), 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(), msrle_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().
int ff_encode_reordered_opaque | ( | AVCodecContext * | avctx, |
AVPacket * | pkt, | ||
const AVFrame * | frame | ||
) |
Propagate user opaque values from the frame to avctx/pkt as needed.
Definition at line 235 of file encode.c.
Referenced by encode_apng(), encode_frame(), ff_encode_encode_cb(), and ff_mpv_encode_picture().
int ff_encode_encode_cb | ( | AVCodecContext * | avctx, |
AVPacket * | avpkt, | ||
AVFrame * | frame, | ||
int * | got_packet | ||
) |
Definition at line 248 of file encode.c.
Referenced by encode_simple_internal(), and worker().
AVCPBProperties* ff_encode_add_cpb_side_data | ( | AVCodecContext * | avctx | ) |
Add a CPB properties side data to an encoding context.
Definition at line 909 of file encode.c.
Referenced by aac_encode_init(), aom_init(), config_enc_params(), ff_mpv_encode_init(), libx265_encode_init(), nvenc_setup_encoder(), qsv_retrieve_enc_params(), svc_encode_init(), vpx_init(), and X264_init().
|
static |
Rescale from sample rate to AVCodecContext.time_base.
Definition at line 90 of file encode.h.
Referenced by amr_wb_encode_frame(), encode_superframe(), ff_ac3_encode_frame(), ff_af_queue_remove(), ff_encode_encode_cb(), flac_encode_frame(), libvorbis_encode_frame(), MPA_encode_frame(), and twolame_encode_frame().