FFmpeg
|
#include <internal.h>
Data Fields | |
int | is_copy |
When using frame-threaded decoding, this field is set for the first worker thread (e.g. More... | |
int | last_audio_frame |
An audio frame with less than required samples has been submitted (and potentially padded with silence). More... | |
int | pad_samples |
Audio encoders can set this flag during init to indicate that they want the small last frame to be padded to a multiple of pad_samples. More... | |
AVBufferRef * | pool |
void * | thread_ctx |
AVPacket * | in_pkt |
This packet is used to hold the packet given to decoders implementing the .decode API; it is unused by the generic code for decoders implementing the .receive_frame API and may be freely used (but not freed) by them with the caveat that the packet will be unreferenced generically in avcodec_flush_buffers(). More... | |
struct AVBSFContext * | bsf |
AVPacket * | last_pkt_props |
Properties (timestamps+side data) extracted from the last packet passed for decoding. More... | |
uint8_t * | byte_buffer |
temporary buffer used for encoders to store their bitstream More... | |
unsigned int | byte_buffer_size |
int | intra_only_flag |
This is set to AV_PKT_FLAG_KEY for encoders that encode intra-only formats (i.e. More... | |
void * | frame_thread_encoder |
AVFrame * | in_frame |
The input frame is stored here for encoders implementing the simple encode API. More... | |
AVFrame * | recon_frame |
When the AV_CODEC_FLAG_RECON_FRAME flag is used. More... | |
int | needs_close |
If this is set, then FFCodec->close (if existing) needs to be called for the parent AVCodecContext. More... | |
int | skip_samples |
Number of audio samples to skip at the start of the next decoded frame. More... | |
void * | hwaccel_priv_data |
hwaccel-specific private data More... | |
int | draining |
checks API usage: after codec draining, flush is required to resume operation More... | |
AVPacket * | buffer_pkt |
Temporary buffers for newly received or not yet output packets/frames. More... | |
AVFrame * | buffer_frame |
int | draining_done |
int | showed_multi_packet_warning |
int | nb_draining_errors |
int | changed_frames_dropped |
int | initial_format |
int | initial_width |
int | initial_height |
int | initial_sample_rate |
AVChannelLayout | initial_ch_layout |
Definition at line 52 of file internal.h.
int AVCodecInternal::is_copy |
When using frame-threaded decoding, this field is set for the first worker thread (e.g.
to decode extradata just once).
Definition at line 57 of file internal.h.
Referenced by cfhd_decode(), h264_decode_init(), and hevc_decode_init().
int AVCodecInternal::last_audio_frame |
An audio frame with less than required samples has been submitted (and potentially padded with silence).
Reject all subsequent frames.
Definition at line 63 of file internal.h.
Referenced by encode_send_frame_internal().
int AVCodecInternal::pad_samples |
Audio encoders can set this flag during init to indicate that they want the small last frame to be padded to a multiple of pad_samples.
Definition at line 69 of file internal.h.
Referenced by aptx_encode_init(), and encode_send_frame_internal().
AVBufferRef* AVCodecInternal::pool |
Definition at line 71 of file internal.h.
Referenced by audio_get_buffer(), avcodec_close(), update_context_from_thread(), and update_frame_pool().
void* AVCodecInternal::thread_ctx |
Definition at line 73 of file internal.h.
Referenced by avcodec_close(), ff_frame_thread_free(), ff_frame_thread_init(), ff_slice_thread_allocz_entries(), ff_slice_thread_execute_with_mainfunc(), ff_slice_thread_free(), ff_slice_thread_init(), ff_slice_thread_init_progress(), ff_thread_await_progress2(), ff_thread_can_start_frame(), ff_thread_decode_frame(), ff_thread_finish_setup(), ff_thread_flush(), ff_thread_report_progress2(), main_function(), thread_execute(), thread_execute2(), thread_get_buffer_internal(), and worker_func().
AVPacket* AVCodecInternal::in_pkt |
This packet is used to hold the packet given to decoders implementing the .decode API; it is unused by the generic code for decoders implementing the .receive_frame API and may be freely used (but not freed) by them with the caveat that the packet will be unreferenced generically in avcodec_flush_buffers().
Definition at line 83 of file internal.h.
Referenced by avcodec_close(), avcodec_flush_buffers(), cuvid_decode_init(), decode_init(), decode_simple_internal(), ff_decode_preinit(), ffmmal_init_decoder(), and init().
struct AVBSFContext* AVCodecInternal::bsf |
Definition at line 84 of file internal.h.
Referenced by avcodec_close(), avcodec_flush_buffers(), avcodec_send_packet(), cuvid_decode_init(), decode_bsfs_init(), and ff_decode_get_packet().
AVPacket* AVCodecInternal::last_pkt_props |
Properties (timestamps+side data) extracted from the last packet passed for decoding.
Definition at line 90 of file internal.h.
Referenced by avcodec_close(), avcodec_flush_buffers(), decode_simple_internal(), extract_packet_props(), ff_decode_frame_props(), ff_decode_preinit(), and update_context_from_user().
uint8_t* AVCodecInternal::byte_buffer |
temporary buffer used for encoders to store their bitstream
Definition at line 95 of file internal.h.
Referenced by avcodec_close(), ff_alloc_packet(), and ff_mpv_encode_picture().
unsigned int AVCodecInternal::byte_buffer_size |
Definition at line 96 of file internal.h.
Referenced by avcodec_close(), ff_alloc_packet(), and ff_mpv_encode_picture().
int AVCodecInternal::intra_only_flag |
This is set to AV_PKT_FLAG_KEY for encoders that encode intra-only formats (i.e.
whose codec descriptor has AV_CODEC_PROP_INTRA_ONLY set). This is used to set said flag generically for said encoders.
Definition at line 103 of file internal.h.
Referenced by encode_receive_packet_internal(), and ff_encode_preinit().
void* AVCodecInternal::frame_thread_encoder |
Definition at line 105 of file internal.h.
Referenced by avcodec_close(), avcodec_open2(), encode_simple_internal(), ff_frame_thread_encoder_free(), ff_frame_thread_encoder_init(), ff_thread_video_encode_frame(), and worker().
AVFrame* AVCodecInternal::in_frame |
The input frame is stored here for encoders implementing the simple encode API.
Not allocated in other cases.
Definition at line 113 of file internal.h.
Referenced by avcodec_close(), avcodec_flush_buffers(), encode_simple_internal(), and ff_encode_preinit().
AVFrame* AVCodecInternal::recon_frame |
When the AV_CODEC_FLAG_RECON_FRAME flag is used.
the encoder should store here the reconstructed frame corresponding to the last returned packet.
Not allocated in other cases.
Definition at line 121 of file internal.h.
Referenced by aom_encode(), avcodec_close(), avcodec_flush_buffers(), ff_encode_preinit(), ff_encode_receive_frame(), librav1e_receive_packet(), and X264_frame().
int AVCodecInternal::needs_close |
If this is set, then FFCodec->close (if existing) needs to be called for the parent AVCodecContext.
Definition at line 127 of file internal.h.
Referenced by avcodec_close(), and avcodec_open2().
int AVCodecInternal::skip_samples |
Number of audio samples to skip at the start of the next decoded frame.
Definition at line 132 of file internal.h.
Referenced by cng_decode_frame(), decode_fill(), decode_simple_internal(), ff_opus_parse_extradata(), flush(), libopus_decode_init(), libopus_flush(), wma_decode_init(), and xma_decode_packet().
void* AVCodecInternal::hwaccel_priv_data |
hwaccel-specific private data
Definition at line 137 of file internal.h.
Referenced by avcodec_close(), dxva2_av1_decode_slice(), dxva2_av1_uninit(), ff_frame_thread_free(), ff_nvdec_decode_init(), ff_nvdec_decode_uninit(), ff_nvdec_end_frame(), ff_nvdec_simple_decode_slice(), ff_nvdec_simple_end_frame(), ff_nvdec_start_frame(), ff_nvdec_start_frame_sep_ref(), ff_thread_finish_setup(), ff_vaapi_decode_destroy_buffers(), ff_vaapi_decode_init(), ff_vaapi_decode_issue(), ff_vaapi_decode_make_param_buffer(), ff_vaapi_decode_make_slice_buffer(), ff_vaapi_decode_uninit(), ff_vdpau_common_end_frame(), ff_vdpau_common_init(), ff_vdpau_common_reinit(), ff_vdpau_common_uninit(), ff_videotoolbox_avcc_extradata_create(), frame_worker_thread(), hwaccel_init(), hwaccel_uninit(), nvdec_av1_decode_slice(), nvdec_av1_start_frame(), nvdec_h264_decode_slice(), nvdec_h264_start_frame(), nvdec_hevc_decode_init(), nvdec_hevc_decode_slice(), nvdec_hevc_start_frame(), nvdec_mjpeg_start_frame(), nvdec_mpeg12_start_frame(), nvdec_mpeg4_start_frame(), nvdec_vc1_start_frame(), nvdec_vp8_start_frame(), nvdec_vp9_start_frame(), submit_packet(), vaapi_av1_decode_init(), vaapi_av1_decode_uninit(), vaapi_av1_end_frame(), vaapi_av1_start_frame(), vaapi_decode_find_best_format(), and videotoolbox_vp9_decode_slice().
int AVCodecInternal::draining |
checks API usage: after codec draining, flush is required to resume operation
Definition at line 142 of file internal.h.
Referenced by avcodec_flush_buffers(), avcodec_send_frame(), avcodec_send_packet(), decode_simple_internal(), encode_simple_internal(), ff_decode_get_packet(), ff_encode_get_frame(), ff_nvenc_receive_packet(), and librav1e_receive_packet().
AVPacket* AVCodecInternal::buffer_pkt |
Temporary buffers for newly received or not yet output packets/frames.
Definition at line 147 of file internal.h.
Referenced by avcodec_close(), avcodec_decode_subtitle2(), avcodec_flush_buffers(), avcodec_open2(), avcodec_receive_packet(), avcodec_send_frame(), and avcodec_send_packet().
AVFrame* AVCodecInternal::buffer_frame |
Definition at line 148 of file internal.h.
Referenced by avcodec_close(), avcodec_flush_buffers(), avcodec_open2(), avcodec_send_frame(), avcodec_send_packet(), encode_send_frame_internal(), ff_decode_receive_frame(), and ff_encode_get_frame().
int AVCodecInternal::draining_done |
Definition at line 149 of file internal.h.
Referenced by avcodec_flush_buffers(), decode_receive_frame_internal(), decode_simple_internal(), encode_receive_packet_internal(), encode_simple_internal(), and ff_encode_receive_frame().
int AVCodecInternal::showed_multi_packet_warning |
Definition at line 151 of file internal.h.
Referenced by decode_simple_internal().
int AVCodecInternal::nb_draining_errors |
Definition at line 154 of file internal.h.
Referenced by avcodec_flush_buffers(), and decode_simple_internal().
int AVCodecInternal::changed_frames_dropped |
Definition at line 157 of file internal.h.
Referenced by ff_decode_receive_frame().
int AVCodecInternal::initial_format |
Definition at line 158 of file internal.h.
Referenced by ff_decode_receive_frame().
int AVCodecInternal::initial_width |
Definition at line 159 of file internal.h.
Referenced by ff_decode_receive_frame().
int AVCodecInternal::initial_height |
Definition at line 159 of file internal.h.
Referenced by ff_decode_receive_frame().
int AVCodecInternal::initial_sample_rate |
Definition at line 160 of file internal.h.
Referenced by ff_decode_receive_frame().
AVChannelLayout AVCodecInternal::initial_ch_layout |
Definition at line 161 of file internal.h.
Referenced by avcodec_close(), and ff_decode_receive_frame().