AVFrame Struct Reference

This structure describes decoded (raw) audio or video data. More...

#include <avcodec.h>

Data Fields

uint8_tdata [AV_NUM_DATA_POINTERS]
 pointer to the picture/channel planes. More...
 
int linesize [AV_NUM_DATA_POINTERS]
 Size, in bytes, of the data for each picture/channel plane. More...
 
uint8_t ** extended_data
 pointers to the data planes/channels. More...
 
int width
 width and height of the video frame More...
 
int height
 
int nb_samples
 number of audio samples (per channel) described by this frame More...
 
int format
 format of the frame, -1 if unknown or unset Values correspond to enum AVPixelFormat for video frames, enum AVSampleFormat for audio) More...
 
int key_frame
 1 -> keyframe, 0-> not More...
 
enum AVPictureType pict_type
 Picture type of the frame, see ?_TYPE below. More...
 
uint8_tbase [AV_NUM_DATA_POINTERS]
 pointer to the first allocated byte of the picture. More...
 
AVRational sample_aspect_ratio
 sample aspect ratio for the video frame, 0/1 if unknown/unspecified More...
 
int64_t pts
 presentation timestamp in time_base units (time when frame should be shown to user) If AV_NOPTS_VALUE then frame_rate = 1/time_base will be assumed. More...
 
int64_t pkt_pts
 pts copied from the AVPacket that was decoded to produce this frame More...
 
int64_t pkt_dts
 dts copied from the AVPacket that triggered returning this frame More...
 
int coded_picture_number
 picture number in bitstream order More...
 
int display_picture_number
 picture number in display order More...
 
int quality
 quality (between 1 (good) and FF_LAMBDA_MAX (bad)) More...
 
int reference
 is this picture used as reference The values for this are the same as the MpegEncContext.picture_structure variable, that is 1->top field, 2->bottom field, 3->frame/both fields. More...
 
int8_t * qscale_table
 QP table. More...
 
int qstride
 QP store stride. More...
 
int qscale_type
 
uint8_tmbskip_table
 mbskip_table[mb]>=1 if MB didn't change stride= mb_width = (width+15)>>4 More...
 
int16_t(*[2] motion_val )[2]
 motion vector table More...
 
uint32_t * mb_type
 macroblock type table mb_type_base + mb_width + 2 More...
 
short * dct_coeff
 DCT coefficients. More...
 
int8_t * ref_index [2]
 motion reference frame index the order in which these are stored can depend on the codec. More...
 
voidopaque
 for some private data of the user More...
 
uint64_t error [AV_NUM_DATA_POINTERS]
 error More...
 
int type
 type of the buffer (to keep track of who has to deallocate data[*]) More...
 
int repeat_pict
 When decoding, this signals how much the picture must be delayed. More...
 
int interlaced_frame
 The content of the picture is interlaced. More...
 
int top_field_first
 If the content is interlaced, is top field displayed first. More...
 
int palette_has_changed
 Tell user application that palette has changed from previous frame. More...
 
int buffer_hints
 codec suggestion on buffer type if != 0 More...
 
AVPanScanpan_scan
 Pan scan. More...
 
int64_t reordered_opaque
 reordered opaque 64bit (generally an integer or a double precision float PTS but can be anything). More...
 
voidhwaccel_picture_private
 hardware accelerator private data (Libav-allocated) More...
 
struct AVCodecContextowner
 the AVCodecContext which ff_thread_get_buffer() was last called on More...
 
voidthread_opaque
 used by multithreading to store frame-specific info More...
 
uint8_t motion_subsample_log2
 log2 of the size of the block which a single vector in motion_val represents: (4->16x16, 3->8x8, 2-> 4x4, 1-> 2x2) More...
 
int sample_rate
 Sample rate of the audio data. More...
 
uint64_t channel_layout
 Channel layout of the audio data. More...
 

Detailed Description

This structure describes decoded (raw) audio or video data.

AVFrame must be allocated using avcodec_alloc_frame() and freed with avcodec_free_frame(). Note that this allocates only the AVFrame itself. The buffers for the data must be managed through other means.

AVFrame is typically allocated once and then reused multiple times to hold different data (e.g. a single AVFrame to hold frames received from a decoder). In such a case, avcodec_get_frame_defaults() should be used to reset the frame to its original clean state before it is reused again.

sizeof(AVFrame) is not a part of the public ABI, so new fields may be added to the end with a minor bump.

Examples:
libavcodec/api-example.c, and libavformat/output-example.c.

Definition at line 989 of file avcodec.h.

Field Documentation

uint8_t* AVFrame::base[AV_NUM_DATA_POINTERS]

pointer to the first allocated byte of the picture.

Can be used in get_buffer/release_buffer. This isn't used by libavcodec unless the default get/release_buffer() is used.

  • encoding:
  • decoding:

Definition at line 1073 of file avcodec.h.

Referenced by avcodec_default_reget_buffer(), codec_get_buffer(), decode_slice_header(), free_picture(), and video_get_buffer().

uint64_t AVFrame::channel_layout

Channel layout of the audio data.

  • encoding: unused
  • decoding: set by get_buffer()
Examples:
libavcodec/api-example.c.

Definition at line 1318 of file avcodec.h.

Referenced by audio_decode_frame(), audio_encode_example(), av_buffersrc_write_frame(), avcodec_decode_audio4(), avfilter_copy_buf_props(), avfilter_copy_frame_props(), decode_audio(), and ff_get_buffer().

int AVFrame::coded_picture_number

picture number in bitstream order

  • encoding: set by
  • decoding: Set by libavcodec.

Definition at line 1109 of file avcodec.h.

Referenced by copy_picture_attributes(), encode_frame(), ff_MPV_encode_picture(), ff_MPV_frame_start(), ff_write_pass1_stats(), mpeg1_encode_sequence_header(), and select_input_picture().

uint8_t* AVFrame::data[AV_NUM_DATA_POINTERS]

pointer to the picture/channel planes.

This might be different from the first allocated byte

Examples:
libavcodec/api-example.c, and libavformat/output-example.c.

Definition at line 997 of file avcodec.h.

Referenced by aac_encode_frame(), aasc_decode_end(), aasc_decode_frame(), ac3_decode_frame(), add_frame_default(), adpcm_decode_frame(), adpcm_encode_frame(), adx_encode_frame(), alloc_frame_buffer(), amr_wb_encode_frame(), amrnb_decode_frame(), amrwb_decode_frame(), ape_decode_frame(), apply_loop_filter(), apply_motion_generic(), audio_decode_example(), audio_decode_frame(), audio_get_buffer(), aura_decode_end(), aura_decode_frame(), av_buffersrc_write_frame(), avcodec_decode_audio4(), avcodec_decode_video2(), avcodec_default_reget_buffer(), avcodec_default_release_buffer(), avcodec_encode_audio2(), avcodec_fill_audio_frame(), avcodec_free_frame(), avcodec_get_frame_defaults(), avfilter_copy_buf_props(), avs_decode_end(), avs_decode_frame(), bethsoftvid_decode_end(), bethsoftvid_decode_frame(), bfi_decode_close(), bfi_decode_frame(), bink_decode_plane(), binkb_decode_plane(), bmp_decode_end(), bmp_decode_frame(), bmp_encode_frame(), bmv_aud_decode_frame(), cavs_decode_frame(), cdg_border_preset(), cdg_decode_end(), cdg_decode_frame(), cdg_load_palette(), cdg_scroll(), cdg_tile_block(), cdxl_decode_end(), cdxl_decode_frame(), cdxl_decode_ham6(), cdxl_decode_ham8(), cdxl_decode_rgb(), cinaudio_decode_frame(), cinepak_decode_end(), cinepak_decode_frame(), cinepak_decode_init(), cinepak_decode_vectors(), cinvideo_decode_end(), cinvideo_decode_frame(), cinvideo_decode_init(), cllc_decode_close(), cllc_decode_frame(), close_video(), cmv_decode_end(), cmv_decode_frame(), cmv_decode_inter(), cmv_decode_intra(), cng_decode_frame(), cng_encode_frame(), codec_get_buffer(), codec_reinit(), codec_release_buffer(), comp_block(), cond_release_buffer(), copy_frame_default(), copy_from(), create_clusters(), cyuv_decode_end(), cyuv_decode_frame(), dct_get(), decode_argb_frame(), decode_close(), decode_end(), decode_flush(), decode_frame(), decode_frame_byterun1(), decode_frame_ilbm(), decode_i2_frame(), decode_init(), decode_mb(), decode_p_block(), decode_p_frame(), decode_pic(), decode_rgb24_frame(), decode_slice(), decode_slice_header(), decode_tag(), decode_video(), decode_wmv9(), dfa_decode_end(), dfa_decode_frame(), dnxhd_decode_close(), dnxhd_decode_frame(), dnxhd_decode_macroblock(), dnxhd_encode_picture(), dnxhd_load_picture(), dpcm_decode_frame(), draw_char(), dv_decode_video_segment(), dv_encode_video_segment(), dvvideo_close(), dvvideo_decode_frame(), eightsvx_decode_frame(), encode_bitstream(), encode_end(), encode_frame(), encode_mb_internal(), encode_picture_lossless(), encode_picture_ls(), encode_q_branch(), encode_slice(), encode_thread(), end_frame(), erase_line(), erase_screen(), escape124_decode_close(), escape124_decode_frame(), estimate_best_b_count(), eval_motion_dist(), execute_code(), Faac_encode_frame(), ff_alloc_picture(), ff_apply_vector_2x2(), ff_apply_vector_4x4(), ff_cavs_end(), ff_cavs_init_pic(), ff_cavs_next_mb(), ff_draw_horiz_band(), ff_dxva2_get_surface(), ff_er_frame_end(), ff_estimate_b_frame_motion(), ff_estimate_p_frame_motion(), ff_h263_decode_frame(), ff_h264_decode_ref_pic_list_reordering(), ff_h264_fill_default_ref_list(), ff_h264_fill_mbaff_ref_list(), ff_init_block_index(), ff_ivi_decode_close(), ff_ivi_decode_frame(), ff_jpegls_decode_picture(), ff_mjpeg_decode_end(), ff_mjpeg_decode_sof(), ff_mpeg4_encode_mb(), ff_mpeg_flush(), ff_mpeg_update_thread_context(), ff_MPV_encode_picture(), ff_MPV_frame_end(), ff_MPV_frame_start(), ff_msmpeg4_pred_dc(), ff_pnm_end(), ff_pre_estimate_p_frame_motion(), ff_print_debug_info(), ff_release_unused_pictures(), ff_rtjpeg_decode_frame_yuv420(), ff_rv34_decode_frame(), ff_snow_common_end(), ff_snow_frame_start(), ff_snow_pred_block(), ff_snow_release_buffer(), ff_thread_release_buffer(), ff_vaapi_get_surface_id(), ff_vc1_decode_end(), ff_vdpau_add_data_chunk(), ff_vdpau_h264_picture_complete(), ff_vdpau_h264_picture_start(), ff_vdpau_h264_set_reference_frames(), ff_vdpau_mpeg4_decode_picture(), ff_vdpau_mpeg_picture_complete(), ff_vdpau_vc1_decode_picture(), ff_vp56_decode_frame(), ff_vp56_free(), ff_xvmc_decode_mb(), ff_xvmc_field_end(), ff_xvmc_field_start(), ff_xvmc_init_block(), ffv1_close(), ffv1_decode_frame(), fill_yuv_image(), find_slice_quant(), find_unused_picture(), flac_decode_frame(), flac_encode_frame(), flashsv_decode_block(), flashsv_decode_end(), flashsv_decode_frame(), flashsv_decode_init(), flashsv_encode_frame(), flic_decode_end(), flic_decode_frame_15_16BPP(), flic_decode_frame_8BPP(), flic_decode_init(), frame_worker_thread(), free_picture(), g722_decode_frame(), g722_encode_frame(), g723_1_decode_frame(), gather_data_for_cel(), gather_data_for_subcel(), get_4block_rd(), get_block_rd(), get_frame_mb(), gif_decode_close(), gif_decode_frame(), gif_decode_init(), gif_encode_frame(), gif_read_image(), gsm_decode_frame(), guess_mv(), h261_decode_frame(), h263_mv4_search(), halfpel_interpol(), hl_decode_mb(), hl_decode_mb_444(), hscroll(), idcin_decode_end(), idcin_decode_frame(), idcin_decode_init(), idcin_decode_vlcs(), idct_put(), ilbc_decode_frame(), ilbc_encode_frame(), init_image(), ipvideo_decode_end(), ipvideo_decode_frame(), ipvideo_decode_init(), ipvideo_decode_opcodes(), ir2_decode_end(), ir2_decode_frame(), is_intra_more_likely(), iterative_me(), lag_decode_end(), lag_decode_frame(), libgsm_decode_frame(), libgsm_encode_frame(), libopenjpeg_copy_packed16(), libopenjpeg_copy_packed8(), libopenjpeg_copy_to_packed16(), libopenjpeg_copy_to_packed8(), libopenjpeg_copy_unpacked16(), libopenjpeg_copy_unpacked8(), libopenjpeg_copyto16(), libopenjpeg_copyto8(), libopenjpeg_decode_close(), libopenjpeg_decode_frame(), libopus_decode(), libopus_encode(), libschroedinger_decode_close(), libschroedinger_decode_frame(), libspeex_decode_frame(), ljpeg_decode_rgb_scan(), ljpeg_decode_yuv_scan(), load_input_picture(), loop_filter(), mb_var_thread(), mc_dir_part(), mimic_decode_end(), mimic_decode_frame(), mjpeg_decode_scan(), mjpeg_decode_scan_progressive_ac(), mm_decode_end(), mm_decode_frame(), mm_decode_inter(), mm_decode_intra(), movie_get_frame(), mp3lame_encode_frame(), mp_decode_end(), mp_decode_frame(), mp_get_yuv_from_rgb(), mp_read_changes_map(), mp_set_rgb_from_yuv(), MPA_encode_frame(), mpeg_field_start(), MPV_decode_mb_internal(), MPV_motion_internal(), msrle_decode_end(), msrle_decode_frame(), msrle_decode_init(), mss1_decode_end(), mss1_decode_frame(), mss2_decode_end(), mss2_decode_frame(), mss3_decode_end(), mss3_decode_frame(), mss4_decode_end(), mss4_decode_frame(), msvideo1_decode_16bit(), msvideo1_decode_8bit(), msvideo1_decode_end(), msvideo1_decode_init(), mxpeg_check_dimensions(), mxpeg_decode_end(), mxpeg_decode_frame(), output_data(), pack_yuv(), pad_last_frame(), pam_encode_frame(), pcm_bluray_decode_frame(), pcm_decode_frame(), pcm_encode_frame(), pcx_decode_frame(), pcx_encode_frame(), pcx_end(), pic_as_field(), pic_is_unused(), picmemset(), picmemset_8bpp(), png_dec_end(), pnm_decode_frame(), pnm_encode_frame(), predict_slice(), predict_slice_buffered(), prefetch_motion(), print_long_term(), print_short_term(), ptx_decode_frame(), ptx_end(), qcelp_decode_frame(), qdm2_decode_frame(), qtrle_decode_16bpp(), qtrle_decode_1bpp(), qtrle_decode_24bpp(), qtrle_decode_2n4bpp(), qtrle_decode_32bpp(), qtrle_decode_8bpp(), qtrle_decode_end(), qtrle_decode_frame(), qtrle_decode_init(), queue_picture(), ra144_decode_frame(), ra144_encode_frame(), ra288_decode_frame(), raw_decode(), reconstruct_and_encode_image(), render_slice(), rl2_decode_end(), rl2_decode_frame(), roq_decode_end(), roq_decode_frame(), roq_dpcm_encode_frame(), rpza_decode_end(), rpza_decode_init(), rpza_decode_stream(), rv30_loop_filter(), rv34_mc(), rv40_loop_filter(), s302m_decode_frame(), select_input_picture(), seqvideo_decode(), seqvideo_decode_end(), seqvideo_decode_init(), set_palette(), sgi_end(), sipr_decode_frame(), skip_check(), smc_decode_end(), smc_decode_init(), smc_decode_stream(), smka_decode_frame(), sse_mb(), sunrast_decode_frame(), sunrast_encode_frame(), sunrast_end(), svq1_decode_end(), svq1_decode_frame(), svq1_encode_frame(), svq1_encode_plane(), svq1_flush(), svq3_mc_dir_part(), synth_superframe(), targa_encode_normal(), targa_encode_rle(), targa_end(), tgq_decode_end(), tgq_decode_frame(), tgq_idct_put_mb(), tgq_idct_put_mb_dconly(), tgv_decode_frame(), tgv_decode_inter(), tiff_end(), tm2_decode_blocks(), tmv_decode_close(), tmv_decode_frame(), to_meta_with_crop(), tqi_decode_end(), tqi_decode_frame(), tqi_idct_put(), truemotion1_decode_16bit(), truemotion1_decode_24bit(), truemotion1_decode_end(), truemotion1_decode_header(), truemotion1_decode_init(), truespeech_decode_frame(), tscc2_decode_end(), tscc2_decode_slice(), tta_decode_frame(), txd_decode_frame(), txd_end(), ulti_convert_yuv(), ulti_decode_end(), update_frames(), utvideo_encode_frame(), v410_decode_close(), v410_decode_frame(), v410_encode_frame(), vble_decode_close(), vble_decode_frame(), vble_restore_plane(), vc1_decode_frame(), vc1_decode_skip_blocks(), vc1_interp_mc(), vc1_mc_1mv(), vc1_mc_4mv_chroma(), vc1_mc_4mv_chroma4(), vc1_mc_4mv_luma(), vcr1_decode_end(), vcr1_decode_frame(), video_decode_example(), video_encode_example(), video_get_buffer(), video_thread(), vmd_decode(), vmdaudio_decode_frame(), vmdvideo_decode_end(), vmdvideo_decode_frame(), vp3_decode_flush(), vp3_decode_init(), vp3_update_thread_context(), vp56_decode_mb(), vp56_mc(), vp8_decode(), vp8_decode_flush_impl(), vp8_decode_frame(), vp8_decode_mb_row_no_filter(), vp8_encode(), vp8_filter_mb_row(), vp8_mc_chroma(), vp8_mc_luma(), vqa_decode_chunk(), vqa_decode_end(), vqa_decode_frame(), vqa_decode_init(), wavpack_decode_frame(), write_video_frame(), ws_snd_decode_frame(), X264_frame(), x8_init_block_index(), xan_decode_chroma(), xan_decode_end(), xan_decode_frame(), xan_decode_frame_type0(), xan_decode_frame_type1(), xan_wc3_copy_pixel_run(), xan_wc3_output_pixel_run(), XAVS_frame(), xbm_encode_frame(), xvid_encode_frame(), xwd_decode_close(), xwd_decode_frame(), xwd_encode_frame(), yop_decode_close(), yop_decode_frame(), zerocodec_decode_close(), and zerocodec_decode_frame().

short* AVFrame::dct_coeff

DCT coefficients.

  • encoding: unused
  • decoding: Set by libavcodec.

Definition at line 1187 of file avcodec.h.

Referenced by ff_alloc_picture(), free_picture(), and MPV_decode_mb_internal().

int AVFrame::display_picture_number

picture number in display order

  • encoding: set by
  • decoding: Set by libavcodec.

Definition at line 1115 of file avcodec.h.

Referenced by copy_picture_attributes(), encode_frame(), ff_write_pass1_stats(), load_input_picture(), and select_input_picture().

uint64_t AVFrame::error[AV_NUM_DATA_POINTERS]

error

  • encoding: Set by libavcodec. if flags&CODEC_FLAG_PSNR.
  • decoding: unused

Definition at line 1209 of file avcodec.h.

Referenced by do_video_stats(), encode_frame(), encode_thread(), ff_MPV_encode_picture(), merge_context_after_encode(), and print_report().

uint8_t** AVFrame::extended_data

pointers to the data planes/channels.

For video, this should simply point to data[].

For planar audio, each channel has a separate data pointer, and linesize[0] contains the size of each channel buffer. For packed audio, there is just one data pointer, and linesize[0] contains the total size of the buffer for all channels.

Note: Both data and extended_data will always be set by get_buffer(), but for planar audio with more channels that can fit in data, extended_data must be used by the decoder in order to access all channels.

encoding: set by user decoding: set by AVCodecContext.get_buffer()

Definition at line 1028 of file avcodec.h.

Referenced by adpcm_decode_frame(), adpcm_encode_frame(), adx_decode_frame(), alac_encode_frame(), apply_window_and_mdct(), atrac1_decode_frame(), atrac3_decode_frame(), av_buffersrc_write_frame(), avcodec_decode_audio4(), avcodec_decode_video2(), avcodec_encode_audio2(), avcodec_fill_audio_frame(), avcodec_free_frame(), avcodec_get_frame_defaults(), avfilter_copy_buf_props(), codec_get_buffer(), cook_decode_frame(), copy_input_samples(), dca_decode_frame(), decode_element(), decode_frame(), ff_mpeg_update_thread_context(), frame_configure_elements(), frame_worker_thread(), imc_decode_frame(), mace_decode_frame(), mp_decode_frame(), mpc7_decode_frame(), mpc8_decode_frame(), oggvorbis_encode_frame(), pad_last_frame(), pcm_decode_frame(), shorten_decode_frame(), tak_decode_frame(), twin_decode_frame(), video_get_buffer(), vorbis_decode_frame(), vorbis_encode_frame(), and wma_decode_superframe().

int AVFrame::format

format of the frame, -1 if unknown or unset Values correspond to enum AVPixelFormat for video frames, enum AVSampleFormat for audio)

  • encoding: unused
  • decoding: Read by user.
Examples:
libavcodec/api-example.c.

Definition at line 1051 of file avcodec.h.

Referenced by audio_decode_frame(), audio_encode_example(), av_buffersrc_write_frame(), avcodec_decode_audio4(), avcodec_decode_video2(), avcodec_default_reget_buffer(), avcodec_get_frame_defaults(), avfilter_copy_buf_props(), avfilter_copy_frame_props(), decode_audio(), decode_video(), ff_get_buffer(), libschroedinger_decode_frame(), mss2_decode_frame(), video_encode_example(), and video_thread().

void* AVFrame::hwaccel_picture_private

hardware accelerator private data (Libav-allocated)

  • encoding: unused
  • decoding: Set by libavcodec

Definition at line 1280 of file avcodec.h.

Referenced by alloc_frame_buffer(), commit_bitstream_and_slice_buffer(), decode_slice(), end_frame(), free_frame_buffer(), and start_frame().

int AVFrame::key_frame

1 -> keyframe, 0-> not

  • encoding: Set by libavcodec.
  • decoding: Set by libavcodec.
Examples:
libavformat/output-example.c.

Definition at line 1058 of file avcodec.h.

Referenced by a64multi_encode_frame(), a64multi_init_encoder(), avcodec_get_frame_defaults(), avfilter_copy_buf_props(), avfilter_copy_frame_props(), avs_decode_frame(), bfi_decode_frame(), bmp_decode_frame(), bmp_encode_frame(), cllc_decode_frame(), cmv_decode_frame(), decode_frame(), decode_init(), decode_nal_units(), decode_postinit(), decode_slice(), dnxhd_decode_init(), dnxhd_encode_init(), dvvideo_decode_frame(), encode_frame(), encode_init(), encode_picture(), encode_picture_lossless(), encode_picture_ls(), encode_slice(), ff_h263_decode_frame(), ff_h264_frame_start(), ff_mjpeg_decode_sof(), ff_MPV_encode_picture(), ff_MPV_frame_start(), ff_snow_frame_start(), ff_vp56_decode_frame(), ffv1_decode_frame(), ffv1_encode_frame(), flashsv_encode_frame(), gif_encode_frame(), h261_decode_frame(), lag_decode_frame(), libschroedinger_encode_frame(), mpeg1_decode_picture(), mpeg1_encode_sequence_header(), mpeg_decode_picture_coding_extension(), mss1_decode_frame(), mss2_decode_frame(), mss3_decode_frame(), mss4_decode_frame(), mxpeg_decode_frame(), pam_encode_frame(), pcx_encode_frame(), pnm_decode_frame(), pnm_encode_frame(), qtrle_encode_frame(), qtrle_encode_line(), raw_init_decoder(), raw_init_encoder(), storeframe(), sunrast_encode_init(), svq1_encode_frame(), svq3_decode_frame(), targa_encode_init(), tgq_decode_frame(), tgv_decode_frame(), tmv_decode_frame(), utvideo_encode_frame(), v410_decode_frame(), v410_encode_frame(), vble_decode_frame(), vc1_decode_frame(), vcr1_decode_frame(), vp56_decode_mb(), vp56_mc(), vp5_parse_coeff_models(), vp5_parse_header(), vp6_parse_coeff_models(), vp6_parse_header(), write_video_frame(), XAVS_frame(), xvid_encode_frame(), xwd_decode_frame(), xwd_encode_frame(), and zerocodec_decode_frame().

int AVFrame::linesize[AV_NUM_DATA_POINTERS]

Size, in bytes, of the data for each picture/channel plane.

For audio, only linesize[0] may be set. For planar audio, each channel plane must be the same size.

Examples:
libavcodec/api-example.c, and libavformat/output-example.c.

Definition at line 1008 of file avcodec.h.

Referenced by aasc_decode_frame(), add_frame_default(), alloc_frame_buffer(), apply_loop_filter(), apply_motion_generic(), audio_decode_frame(), aura_decode_frame(), av_buffersrc_write_frame(), avcodec_fill_audio_frame(), avfilter_copy_buf_props(), avs_decode_frame(), bethsoftvid_decode_frame(), bfi_decode_frame(), bink_decode_plane(), binkb_decode_plane(), bmp_decode_frame(), bmp_encode_frame(), cdg_border_preset(), cdg_decode_frame(), cdg_scroll(), cdg_tile_block(), cdxl_decode_ham6(), cdxl_decode_ham8(), cdxl_decode_rgb(), cinepak_decode_vectors(), cinvideo_decode_frame(), cmv_decode_inter(), cmv_decode_intra(), codec_get_buffer(), comp_block(), copy_frame_default(), copy_from(), create_clusters(), cyuv_decode_frame(), dct_get(), decode_13(), decode_argb_frame(), decode_frame(), decode_frame_byterun1(), decode_frame_ilbm(), decode_i2_frame(), decode_p_frame(), decode_pic(), decode_rgb24_frame(), decode_slice(), decode_slice_header(), decode_video(), decode_wmv9(), dfa_decode_frame(), dnxhd_decode_macroblock(), dnxhd_encode_picture(), dnxhd_load_picture(), draw_char(), draw_slice(), dv_decode_video_segment(), dv_encode_video_segment(), encode_bitstream(), encode_frame(), encode_picture_lossless(), encode_picture_ls(), encode_q_branch(), encode_slice(), erase_line(), erase_screen(), escape124_decode_frame(), estimate_best_b_count(), eval_motion_dist(), execute_code(), ff_alloc_picture(), ff_apply_vector_2x2(), ff_apply_vector_4x4(), ff_cavs_init_pic(), ff_er_frame_end(), ff_h264_fill_mbaff_ref_list(), ff_init_block_index(), ff_ivi_decode_frame(), ff_jpegls_decode_picture(), ff_mjpeg_decode_sof(), ff_MPV_frame_start(), ff_print_debug_info(), ff_rtjpeg_decode_frame_yuv420(), ff_snow_frame_start(), ff_snow_release_buffer(), ff_vp56_decode_frame(), ffv1_decode_frame(), fill_yuv_image(), find_slice_quant(), flashsv_decode_block(), flashsv_decode_frame(), flashsv_encode_frame(), flic_decode_frame_15_16BPP(), flic_decode_frame_8BPP(), gather_data_for_cel(), gather_data_for_subcel(), get_4block_rd(), get_block_rd(), get_dc(), get_frame_mb(), gif_encode_frame(), gif_read_image(), halfpel_interpol(), hscroll(), idcin_decode_vlcs(), idct_put(), init_mv(), ipvideo_decode_opcodes(), ir2_decode_frame(), iterative_me(), lag_decode_frame(), libopenjpeg_copy_packed16(), libopenjpeg_copy_packed8(), libopenjpeg_copy_to_packed16(), libopenjpeg_copy_to_packed8(), libopenjpeg_copy_unpacked16(), libopenjpeg_copy_unpacked8(), libopenjpeg_copyto16(), libopenjpeg_copyto8(), libschroedinger_decode_frame(), load_input_picture(), mca(), mm_decode_inter(), mm_decode_intra(), movie_get_frame(), mp3lame_encode_frame(), mp_get_yuv_from_rgb(), mp_read_changes_map(), mp_set_rgb_from_yuv(), mpeg_field_start(), mpeg_motion_internal(), MPV_decode_mb_internal(), msrle_decode_frame(), mss1_decode_frame(), mss2_decode_frame(), mss3_decode_frame(), mss4_decode_dct_block(), mss4_decode_frame(), mss4_decode_image_block(), msvideo1_decode_16bit(), msvideo1_decode_8bit(), mxpeg_check_dimensions(), pack_yuv(), pad_last_frame(), pam_encode_frame(), pcx_decode_frame(), pcx_encode_frame(), pic_as_field(), picmemset(), picmemset_8bpp(), pnm_decode_frame(), pnm_encode_frame(), predict_slice(), predict_slice_buffered(), ptx_decode_frame(), qtrle_decode_16bpp(), qtrle_decode_1bpp(), qtrle_decode_24bpp(), qtrle_decode_2n4bpp(), qtrle_decode_32bpp(), qtrle_decode_8bpp(), qtrle_decode_frame(), qtrle_encode_line(), queue_picture(), raw_decode(), reconstruct_and_encode_image(), render_slice(), rl2_decode_frame(), rpza_decode_stream(), seq_decode_op1(), seq_decode_op2(), seq_decode_op3(), seqvideo_decode(), skip_check(), smc_decode_stream(), sunrast_decode_frame(), sunrast_encode_frame(), svq1_decode_frame(), svq1_encode_frame(), svq1_encode_plane(), targa_encode_normal(), targa_encode_rle(), tgq_idct_put_mb(), tgq_idct_put_mb_dconly(), tgv_decode_frame(), tgv_decode_inter(), tm2_decode_blocks(), tmv_decode_frame(), to_meta_with_crop(), tqi_idct_put(), truemotion1_decode_16bit(), truemotion1_decode_24bit(), tscc2_decode_slice(), txd_decode_frame(), ulti_convert_yuv(), utvideo_encode_frame(), v410_decode_frame(), v410_encode_frame(), vble_restore_plane(), vc1_decode_b_mb_intfi(), vc1_decode_frame(), vc1_decode_p_mb_intfi(), vc1_interp_mc(), vc1_mc_1mv(), vc1_mc_4mv_chroma(), vc1_mc_4mv_luma(), vcr1_decode_frame(), video_decode_example(), video_encode_example(), video_get_buffer(), video_thread(), vmd_decode(), vp3_draw_horiz_band(), vp56_size_changed(), vp8_decode(), vp8_decode_mb_row_no_filter(), vp8_encode(), vqa_decode_chunk(), write_video_frame(), X264_frame(), x8_decode_intra_mb(), x8_init_block_index(), x8_setup_spatial_predictor(), xan_decode_chroma(), xan_decode_frame(), xan_decode_frame_type0(), xan_decode_frame_type1(), xan_wc3_copy_pixel_run(), xan_wc3_output_pixel_run(), XAVS_frame(), xbm_encode_frame(), xvid_encode_frame(), xwd_decode_frame(), xwd_encode_frame(), yop_copy_previous_block(), yop_decode_frame(), yop_paint_block(), and zerocodec_decode_frame().

uint32_t* AVFrame::mb_type

macroblock type table mb_type_base + mb_width + 2

  • encoding: Set by user.
  • decoding: Set by libavcodec.

Definition at line 1180 of file avcodec.h.

Referenced by await_references(), check_input_motion(), copy_picture_attributes(), decode_cabac_field_decoding_flag(), decode_cabac_mb_skip(), decode_mb_skip(), direct_search(), fetch_diagonal_mv(), ff_alloc_picture(), ff_er_frame_end(), ff_estimate_p_frame_motion(), ff_fix_long_p_mvs(), ff_h263_decode_mb(), ff_h263_loop_filter(), ff_h263_update_motion_val(), ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), ff_h264_filter_mb(), ff_h264_hl_decode_mb(), ff_mpeg4_set_direct_mv(), ff_print_debug_info(), ff_wmv2_decode_mb(), fill_decode_caches(), fill_decode_neighbors(), fill_filter_caches(), filter_mb_dir(), free_picture(), guess_dc(), guess_mv(), h261_decode_mb(), h261_decode_mb_skipped(), h264_filter_mb_fast_internal(), h_block_filter(), hl_decode_mb(), hl_decode_mb_444(), hl_motion(), is_intra_more_likely(), loop_filter(), mpeg4_decode_mb(), mpeg4_decode_partition_a(), mpeg4_decode_partition_b(), mpeg4_decode_partitioned_mb(), mpeg_decode_mb(), MPV_motion_internal(), msmpeg4v34_decode_mb(), parse_mb_skip(), pred_spatial_direct_motion(), pred_temp_direct_motion(), predict_field_decoding_flag(), preview_obmc(), rv30_loop_filter(), rv34_decode_inter_macroblock(), rv34_decode_inter_mb_header(), rv34_decode_intra_macroblock(), rv34_decode_intra_mb_header(), rv34_decode_mv(), rv34_pred_mv_b(), rv40_loop_filter(), svq1_encode_plane(), svq3_decode_frame(), svq3_decode_mb(), v_block_filter(), vc1_decode_b_mb_intfi(), vc1_decode_i_blocks(), vc1_decode_i_blocks_adv(), vc1_decode_p_mb(), vc1_decode_p_mb_intfi(), vc1_decode_p_mb_intfr(), and vc1_pred_b_mv_intfi().

uint8_t* AVFrame::mbskip_table

mbskip_table[mb]>=1 if MB didn't change stride= mb_width = (width+15)>>4

  • encoding: unused
  • decoding: Set by libavcodec.

Definition at line 1158 of file avcodec.h.

Referenced by ff_alloc_picture(), ff_estimate_b_frame_motion(), ff_h263_update_motion_val(), ff_mpeg4_decode_video_packet_header(), ff_mpeg4_encode_mb(), free_picture(), and mpeg4_decode_mb().

uint8_t AVFrame::motion_subsample_log2

log2 of the size of the block which a single vector in motion_val represents: (4->16x16, 3->8x8, 2-> 4x4, 1-> 2x2)

  • encoding: unused
  • decoding: Set by libavcodec.

Definition at line 1302 of file avcodec.h.

Referenced by copy_picture_attributes(), ff_alloc_picture(), ff_er_frame_end(), and ff_print_debug_info().

int16_t(*[2] AVFrame::motion_val)[2]

motion vector table

example:
int mv_sample_log2= 4 - motion_subsample_log2;
int mb_width= (width+15)>>4;
int mv_stride= (mb_width << mv_sample_log2) + 1;
motion_val[direction][x + y*mv_stride][0->mv_x, 1->mv_y];
  • encoding: Set by user.
  • decoding: Set by libavcodec.

Definition at line 1172 of file avcodec.h.

Referenced by check_input_motion(), copy_picture_attributes(), direct_search(), encode_thread(), ff_alloc_picture(), ff_er_frame_end(), ff_estimate_p_frame_motion(), ff_fix_long_p_mvs(), ff_h263_decode_mb(), ff_h263_encode_mb(), ff_h263_pred_motion(), ff_h263_update_motion_val(), ff_mpeg4_encode_mb(), ff_mpeg4_set_one_direct_mv(), ff_print_debug_info(), fill_decode_caches(), fill_filter_caches_inter(), free_picture(), guess_mv(), h263_mv4_search(), h_block_filter(), mpeg4_decode_partition_a(), mpeg4_decode_partitioned_mb(), mpeg_decode_slice(), MPV_motion_internal(), pred_pskip_motion(), pred_spatial_direct_motion(), pred_temp_direct_motion(), preview_obmc(), rv34_decode_mv(), rv34_mc(), rv34_pred_mv(), rv34_pred_mv_b(), rv34_pred_mv_rv3(), rv34_set_deblock_coef(), set_p_mv_tables(), svq1_encode_plane(), svq3_decode_mb(), svq3_mc_dir(), v_block_filter(), vc1_apply_p_h_loop_filter(), vc1_apply_p_v_loop_filter(), vc1_decode_b_mb_intfi(), vc1_decode_i_blocks(), vc1_decode_i_blocks_adv(), vc1_decode_p_mb(), vc1_decode_p_mb_intfi(), vc1_decode_p_mb_intfr(), vc1_mc_1mv(), vc1_mc_4mv_chroma(), vc1_mc_4mv_luma(), vc1_pred_b_mv(), vc1_pred_b_mv_intfi(), vc1_pred_mv(), vc1_pred_mv_intfr(), wmv2_pred_motion(), and write_back_motion_list().

int AVFrame::nb_samples

number of audio samples (per channel) described by this frame

  • encoding: Set by user
  • decoding: Set by libavcodec
Examples:
libavcodec/api-example.c, and libavformat/output-example.c.

Definition at line 1042 of file avcodec.h.

Referenced by aac_decode_frame_int(), aac_encode_frame(), ac3_decode_frame(), adpcm_decode_frame(), adpcm_encode_frame(), adx_decode_frame(), alac_encode_frame(), amrnb_decode_frame(), amrwb_decode_frame(), ape_decode_frame(), apply_window_and_mdct(), atrac1_decode_frame(), atrac3_decode_frame(), audio_decode_example(), audio_decode_frame(), audio_encode_example(), audio_get_buffer(), av_buffersrc_write_frame(), avcodec_encode_audio2(), avcodec_fill_audio_frame(), avfilter_copy_buf_props(), bmv_aud_decode_frame(), cinaudio_decode_frame(), cng_decode_frame(), cng_encode_frame(), cook_decode_frame(), copy_input_samples(), dca_decode_frame(), decode_element(), decode_frame(), decode_packet(), decode_subframe(), decode_tag(), do_audio_out(), dpcm_decode_frame(), eightsvx_decode_frame(), encode_frame(), Faac_encode_frame(), ff_af_queue_add(), flac_decode_frame(), flac_encode_frame(), flush(), frame_configure_elements(), g722_decode_frame(), g722_encode_frame(), g723_1_decode_frame(), gsm_decode_frame(), ilbc_decode_frame(), imc_decode_frame(), libgsm_decode_frame(), libopus_decode(), libopus_encode(), libspeex_decode_frame(), mace_decode_frame(), mp3lame_encode_frame(), mp_decode_frame(), mpc7_decode_frame(), mpc8_decode_frame(), oggvorbis_encode_frame(), output_data(), pad_last_frame(), pcm_bluray_decode_frame(), pcm_decode_frame(), pcm_encode_frame(), qcelp_decode_frame(), qdm2_decode_frame(), ra144_decode_frame(), ra144_encode_frame(), ra288_decode_frame(), s302m_decode_frame(), shorten_decode_frame(), sipr_decode_frame(), smka_decode_frame(), synth_superframe(), tak_decode_frame(), truespeech_decode_frame(), tta_decode_frame(), twin_decode_frame(), vmdaudio_decode_frame(), vorbis_decode_frame(), vorbis_encode_frame(), wavpack_decode_frame(), wma_decode_superframe(), write_audio_frame(), and ws_snd_decode_frame().

void* AVFrame::opaque

for some private data of the user

  • encoding: unused
  • decoding: Set by user.

Definition at line 1202 of file avcodec.h.

Referenced by avcodec_default_reget_buffer(), codec_get_buffer(), codec_release_buffer(), decode_video(), queue_picture(), and video_thread().

struct AVCodecContext* AVFrame::owner

the AVCodecContext which ff_thread_get_buffer() was last called on

  • encoding: Set by libavcodec.
  • decoding: Set by libavcodec.

Definition at line 1287 of file avcodec.h.

Referenced by ff_thread_await_progress(), ff_thread_get_buffer(), ff_thread_release_buffer(), ff_thread_report_progress(), free_progress(), and release_delayed_buffers().

int AVFrame::palette_has_changed
AVPanScan* AVFrame::pan_scan

Pan scan.

  • encoding: Set by user.
  • decoding: Set by libavcodec.

Definition at line 1260 of file avcodec.h.

Referenced by ff_alloc_picture(), free_picture(), and mpeg_field_start().

enum AVPictureType AVFrame::pict_type

Picture type of the frame, see ?_TYPE below.

  • encoding: Set by libavcodec. for coded_picture (and set by user for input).
  • decoding: Set by libavcodec.

Definition at line 1065 of file avcodec.h.

Referenced by a64multi_encode_frame(), a64multi_init_encoder(), avfilter_copy_buf_props(), avfilter_copy_frame_props(), avs_decode_frame(), bfi_decode_frame(), bmp_decode_frame(), bmp_encode_frame(), cavs_decode_frame(), cdxl_decode_frame(), cllc_decode_frame(), cmv_decode_frame(), copy_picture_attributes(), decode_frame(), decode_mb_i(), decode_pic(), decode_postinit(), decode_slice_header(), dnxhd_encode_init(), do_video_out(), do_video_stats(), dvvideo_decode_frame(), encode_frame(), encode_init(), encode_picture(), encode_picture_lossless(), encode_picture_ls(), estimate_best_b_count(), execute_code(), ff_h263_decode_frame(), ff_mjpeg_decode_sof(), ff_mpeg4_encode_mb(), ff_MPV_encode_picture(), ff_MPV_frame_start(), ff_print_debug_info(), ff_vc1_parse_frame_header_adv(), ff_vp56_decode_frame(), ffv1_decode_frame(), ffv1_encode_frame(), flashsv_encode_frame(), gif_encode_frame(), h261_decode_frame(), mimic_decode_frame(), mpeg1_decode_picture(), mpeg_decode_picture_coding_extension(), mss1_decode_frame(), mss2_decode_frame(), mss3_decode_frame(), mss4_decode_frame(), mxpeg_decode_frame(), pam_encode_frame(), pcx_decode_frame(), pcx_encode_frame(), pnm_decode_frame(), pnm_encode_frame(), ptx_decode_frame(), qtrle_encode_frame(), ratecontrol_1pass(), raw_decode(), raw_init_decoder(), raw_init_encoder(), rv10_decode_packet(), select_input_picture(), set_mv_intra(), storeframe(), sunrast_decode_frame(), sunrast_encode_init(), svq1_decode_frame(), svq1_decode_frame_header(), svq1_encode_frame(), svq1_encode_plane(), svq3_decode_frame(), targa_encode_init(), tgq_decode_frame(), tgv_decode_frame(), tmv_decode_frame(), txd_decode_frame(), utvideo_encode_frame(), v410_decode_frame(), v410_encode_frame(), vaapi_mpeg4_start_frame(), vble_decode_frame(), vc1_decode_frame(), vcr1_decode_frame(), vp8_encode(), X264_frame(), XAVS_frame(), xbm_encode_init(), xvid_encode_frame(), xwd_decode_frame(), xwd_encode_frame(), and zerocodec_decode_frame().

int64_t AVFrame::pkt_dts

dts copied from the AVPacket that triggered returning this frame

  • encoding: unused
  • decoding: Read by user.

Definition at line 1102 of file avcodec.h.

Referenced by avcodec_decode_audio4(), avcodec_decode_video2(), decode_video(), ff_thread_decode_frame(), get_video_frame(), and movie_get_frame().

int64_t AVFrame::pkt_pts

pts copied from the AVPacket that was decoded to produce this frame

  • encoding: unused
  • decoding: Read by user.

Definition at line 1095 of file avcodec.h.

Referenced by avcodec_default_reget_buffer(), decode_video(), ff_get_buffer(), get_video_frame(), libschroedinger_decode_frame(), movie_get_frame(), and raw_decode().

int AVFrame::qscale_type

Definition at line 1150 of file avcodec.h.

Referenced by decode_postinit(), ff_vp56_decode_frame(), and slice_end().

int AVFrame::qstride

QP store stride.

  • encoding: unused
  • decoding: Set by libavcodec.

Definition at line 1145 of file avcodec.h.

Referenced by decode_init(), ff_alloc_picture(), ff_mjpeg_decode_frame(), ff_vp56_decode_frame(), and mjpegb_decode_frame().

int AVFrame::quality

quality (between 1 (good) and FF_LAMBDA_MAX (bad))

  • encoding: Set by libavcodec. for coded_picture (and set by user for input).
  • decoding: Set by libavcodec.

Definition at line 1122 of file avcodec.h.

Referenced by copy_picture_attributes(), decode_frame(), decode_init(), dnxhd_encode_picture(), do_video_out(), do_video_stats(), encode_frame(), estimate_best_b_count(), estimate_qp(), ff_mjpeg_decode_frame(), ff_MPV_frame_end(), ff_write_pass1_stats(), mjpegb_decode_frame(), print_report(), ratecontrol_1pass(), roq_encode_frame(), svq1_encode_plane(), X264_frame(), XAVS_frame(), and xvid_encode_frame().

int AVFrame::reference

is this picture used as reference The values for this are the same as the MpegEncContext.picture_structure variable, that is 1->top field, 2->bottom field, 3->frame/both fields.

Set to 4 for delayed, non-reference frames.

  • encoding: unused
  • decoding: Set by libavcodec. (before get_buffer() call)).

Definition at line 1132 of file avcodec.h.

Referenced by aasc_decode_frame(), aura_decode_frame(), avs_decode_frame(), await_reference_mb_row(), await_references(), bethsoftvid_decode_init(), bfi_decode_frame(), bmp_decode_frame(), cdg_init_frame(), cdxl_decode_frame(), cinepak_decode_frame(), cllc_decode_frame(), cmv_decode_frame(), cyuv_decode_frame(), decode_frame(), decode_init(), decode_postinit(), decode_slice_header(), dvvideo_decode_frame(), escape124_decode_frame(), ff_draw_horiz_band(), ff_generate_sliding_window_mmcos(), ff_h264_decode_ref_pic_list_reordering(), ff_h264_direct_ref_list_init(), ff_h264_execute_ref_pic_marking(), ff_h264_fill_mbaff_ref_list(), ff_h264_frame_start(), ff_ivi_decode_frame(), ff_MPV_frame_end(), ff_MPV_frame_start(), ff_release_unused_pictures(), ff_snow_frame_start(), ff_vdpau_h264_picture_complete(), ff_vdpau_h264_set_reference_frames(), ff_vp56_decode_frame(), ffv1_decode_frame(), fill_colmap(), fill_picture_parameters(), fill_slice_long(), fill_vaapi_pic(), fill_vaapi_ReferenceFrames(), flashsv_decode_frame(), flic_decode_frame_15_16BPP(), flic_decode_frame_8BPP(), flush_change(), flush_dpb(), get_lowest_part_y(), ipvideo_decode_frame(), ir2_decode_frame(), lag_decode_frame(), load_input_picture(), mc_dir_part(), mimic_decode_frame(), mm_decode_init(), mp_decode_frame(), MPV_decode_mb_internal(), msrle_decode_frame(), mss1_decode_frame(), mss2_decode_frame(), mss3_decode_frame(), mss4_decode_frame(), msvideo1_decode_frame(), mxpeg_decode_init(), pic_as_field(), pic_is_unused(), pnm_decode_frame(), pred_spatial_direct_motion(), pred_temp_direct_motion(), qtrle_decode_frame(), rl2_decode_frame(), roq_decode_frame(), rpza_decode_frame(), select_input_picture(), seqvideo_decode_frame(), smc_decode_frame(), split_field_copy(), tgv_decode_frame(), truemotion1_decode_frame(), tscc2_decode_frame(), ulti_decode_frame(), unreference_pic(), utvideo_encode_frame(), v410_decode_frame(), v410_encode_frame(), vble_decode_frame(), vcr1_decode_frame(), vmdvideo_decode_frame(), xan_decode_frame(), xwd_decode_frame(), and zerocodec_decode_frame().

int64_t AVFrame::reordered_opaque

reordered opaque 64bit (generally an integer or a double precision float PTS but can be anything).

The user sets AVCodecContext.reordered_opaque to represent the input at that time, the decoder reorders values as needed and sets AVFrame.reordered_opaque to exactly one of the values provided by the user through AVCodecContext.reordered_opaque

Deprecated:
in favor of pkt_pts
  • encoding: unused
  • decoding: Read by user.

Definition at line 1273 of file avcodec.h.

Referenced by avcodec_default_reget_buffer(), end_frame(), ff_get_buffer(), movie_get_frame(), and raw_decode().

int AVFrame::repeat_pict

When decoding, this signals how much the picture must be delayed.

extra_delay = repeat_pict / (2*fps)

  • encoding: unused
  • decoding: Set by libavcodec.

Definition at line 1225 of file avcodec.h.

Referenced by decode_postinit(), mpeg_field_start(), output_picture2(), and vc1_decode_frame().

AVRational AVFrame::sample_aspect_ratio

sample aspect ratio for the video frame, 0/1 if unknown/unspecified

  • encoding: unused
  • decoding: Read by user.

Definition at line 1080 of file avcodec.h.

Referenced by avcodec_decode_video2(), avcodec_get_frame_defaults(), avfilter_copy_buf_props(), avfilter_copy_frame_props(), decode_slice_header(), decode_video(), encode_slice_header(), ff_get_buffer(), and movie_get_frame().

int AVFrame::sample_rate

Sample rate of the audio data.

  • encoding: unused
  • decoding: set by get_buffer()

Definition at line 1310 of file avcodec.h.

Referenced by audio_decode_frame(), av_buffersrc_write_frame(), avfilter_copy_buf_props(), avfilter_copy_frame_props(), decode_audio(), and ff_get_buffer().

void* AVFrame::thread_opaque

used by multithreading to store frame-specific info

  • encoding: Set by libavcodec.
  • decoding: Set by libavcodec.

Definition at line 1294 of file avcodec.h.

Referenced by ff_thread_await_progress(), ff_thread_get_buffer(), ff_thread_report_progress(), free_progress(), get_lowest_part_y(), and release_delayed_buffers().

int AVFrame::type

type of the buffer (to keep track of who has to deallocate data[*])

  • encoding: Set by the one who allocates it.
  • decoding: Set by the one who allocates it. Note: User allocated (direct rendering) & internal buffers cannot coexist currently.

Definition at line 1217 of file avcodec.h.

Referenced by alloc_frame_buffer(), avcodec_default_get_buffer(), avcodec_default_reget_buffer(), avcodec_default_release_buffer(), codec_get_buffer(), decode_init(), dnxhd_decode_init(), estimate_best_b_count(), ff_alloc_picture(), ff_copy_picture(), ff_mpeg4_encode_mb(), ff_mpeg_flush(), ff_print_debug_info(), find_unused_picture(), free_picture(), select_input_picture(), skip_check(), and update_frames().


The documentation for this struct was generated from the following file: