FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Fields
AVFrame Struct Reference

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

#include <frame.h>

Data Fields

uint8_tdata [AV_NUM_DATA_POINTERS]
 pointer to the picture/channel planes.
 
int linesize [AV_NUM_DATA_POINTERS]
 For video, size in bytes of each picture line.
 
uint8_t ** extended_data
 pointers to the data planes/channels.
 
int width
 width and height of the video frame
 
int height
 
int nb_samples
 number of audio samples (per channel) described by this frame
 
int format
 format of the frame, -1 if unknown or unset Values correspond to enum AVPixelFormat for video frames, enum AVSampleFormat for audio)
 
int key_frame
 1 -> keyframe, 0-> not
 
enum AVPictureType pict_type
 Picture type of the frame.
 
attribute_deprecated uint8_tbase [AV_NUM_DATA_POINTERS]
 
AVRational sample_aspect_ratio
 Sample aspect ratio for the video frame, 0/1 if unknown/unspecified.
 
int64_t pts
 Presentation timestamp in time_base units (time when frame should be shown to user).
 
int64_t pkt_pts
 PTS copied from the AVPacket that was decoded to produce this frame.
 
int64_t pkt_dts
 DTS copied from the AVPacket that triggered returning this frame.
 
int coded_picture_number
 picture number in bitstream order
 
int display_picture_number
 picture number in display order
 
int quality
 quality (between 1 (good) and FF_LAMBDA_MAX (bad))
 
attribute_deprecated int reference
 
attribute_deprecated int8_t * qscale_table
 QP table.
 
attribute_deprecated int qstride
 QP store stride.
 
attribute_deprecated int qscale_type
 
attribute_deprecated uint8_tmbskip_table
 mbskip_table[mb]>=1 if MB didn't change stride= mb_width = (width+15)>>4
 
attribute_deprecated int16_t(*[2] motion_val )[2]
 motion vector table
 
attribute_deprecated uint32_t * mb_type
 macroblock type table mb_type_base + mb_width + 2
 
attribute_deprecated short * dct_coeff
 DCT coefficients.
 
attribute_deprecated int8_t * ref_index [2]
 motion reference frame index the order in which these are stored can depend on the codec.
 
voidopaque
 for some private data of the user
 
uint64_t error [AV_NUM_DATA_POINTERS]
 error
 
attribute_deprecated int type
 
int repeat_pict
 When decoding, this signals how much the picture must be delayed.
 
int interlaced_frame
 The content of the picture is interlaced.
 
int top_field_first
 If the content is interlaced, is top field displayed first.
 
int palette_has_changed
 Tell user application that palette has changed from previous frame.
 
attribute_deprecated int buffer_hints
 
attribute_deprecated struct
AVPanScan
pan_scan
 Pan scan.
 
int64_t reordered_opaque
 reordered opaque 64bit (generally an integer or a double precision float PTS but can be anything).
 
attribute_deprecated voidhwaccel_picture_private
 
attribute_deprecated struct
AVCodecContext
owner
 
attribute_deprecated voidthread_opaque
 
attribute_deprecated 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)
 
int sample_rate
 Sample rate of the audio data.
 
uint64_t channel_layout
 Channel layout of the audio data.
 
AVBufferRefbuf [AV_NUM_DATA_POINTERS]
 AVBuffer references backing the data for this frame.
 
AVBufferRef ** extended_buf
 For planar audio which requires more than AV_NUM_DATA_POINTERS AVBufferRef pointers, this array will hold all the references which cannot fit into AVFrame.buf.
 
int nb_extended_buf
 Number of elements in extended_buf.
 
AVFrameSideData ** side_data
 
int nb_side_data
 
int64_t best_effort_timestamp
 frame timestamp estimated using various heuristics, in stream time base Code outside libavcodec should access this field using: av_frame_get_best_effort_timestamp(frame)
 
int64_t pkt_pos
 reordered pos from the last AVPacket that has been input into the decoder Code outside libavcodec should access this field using: av_frame_get_pkt_pos(frame)
 
int64_t pkt_duration
 duration of the corresponding packet, expressed in AVStream->time_base units, 0 if unknown.
 
AVDictionarymetadata
 metadata.
 
int decode_error_flags
 decode error flags of the frame, set to a combination of FF_DECODE_ERROR_xxx flags if the decoder produced a frame, but there were errors during the decoding.
 
int channels
 number of audio channels, only used for audio.
 
int pkt_size
 size of the corresponding packet containing the compressed frame.
 
AVBufferRefqp_table_buf
 Not to be accessed directly from outside libavutil.
 

Detailed Description

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

AVFrame must be allocated using av_frame_alloc(). Note that this only allocates the AVFrame itself, the buffers for the data must be managed through other means (see below). AVFrame must be freed with av_frame_free().

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, av_frame_unref() will free any references held by the frame and reset it to its original clean state before it is reused again.

The data described by an AVFrame is usually reference counted through the AVBuffer API. The underlying buffer references are stored in AVFrame.buf / AVFrame.extended_buf. An AVFrame is considered to be reference counted if at least one reference is set, i.e. if AVFrame.buf[0] != NULL. In such a case, every single data plane must be contained in one of the buffers in AVFrame.buf or AVFrame.extended_buf. There may be a single buffer for all the data, or one separate buffer for each plane, or anything in between.

sizeof(AVFrame) is not a part of the public ABI, so new fields may be added to the end with a minor bump. Similarly fields that are marked as to be only accessed by av_opt_ptr() can be reordered. This allows 2 forks to add fields without breaking compatibility with each other.

Examples:
doc/examples/decoding_encoding.c, doc/examples/demuxing.c, doc/examples/filtering_audio.c, doc/examples/filtering_video.c, and doc/examples/muxing.c.

Definition at line 76 of file frame.h.

Field Documentation

uint8_t* AVFrame::data[AV_NUM_DATA_POINTERS]

pointer to the picture/channel planes.

This might be different from the first allocated byte

Some decoders access areas outside 0,0 - width,height, please see avcodec_align_dimensions2(). Some filters and swscale can read up to 16 bytes beyond the planes, if these filters are to be used, then 16 extra bytes must be allocated.

Examples:
doc/examples/decoding_encoding.c, doc/examples/demuxing.c, doc/examples/filtering_audio.c, and doc/examples/filtering_video.c.

Definition at line 87 of file frame.h.

Referenced by aac_encode_frame(), aacPlus_encode_frame(), aasc_decode_frame(), ac3_decode_frame(), add_frame_default(), adpcm_decode_frame(), adx_encode_frame(), aic_decode_slice(), alloc_frame_buffer(), alloc_picture(), amr_wb_encode_frame(), amrnb_decode_frame(), amrwb_decode_frame(), amv_encode_picture(), ape_decode_frame(), apply_loop_filter(), apply_motion_generic(), apply_unsharp_c(), audio_decode_example(), audio_decode_frame(), audio_get_buffer(), aura_decode_frame(), av_frame_make_writable(), av_frame_move_ref(), av_frame_ref(), avcodec_decode_audio4(), avcodec_decode_video2(), avcodec_encode_audio2(), avcodec_fill_audio_frame(), avcodec_free_frame(), avcodec_get_frame_defaults(), avpriv_color_frame(), avs_decode_frame(), avui_decode_frame(), avui_encode_frame(), bethsoftvid_decode_frame(), bfi_decode_frame(), bink_decode_plane(), binkb_decode_plane(), blend_image(), bmp_decode_frame(), bmp_encode_frame(), bmv_aud_decode_frame(), brpix_decode_frame(), buffer_needs_copy(), buffer_offset(), calc_combed_score(), calc_diffs(), cavs_decode_frame(), cdg_border_preset(), cdg_decode_frame(), cdg_load_palette(), cdg_scroll(), cdg_tile_block(), cdxl_decode_ham6(), cdxl_decode_ham8(), cdxl_decode_rgb(), channelmap_filter_frame(), cinaudio_decode_frame(), cinepak_decode_frame(), cinepak_decode_vectors(), cinvideo_decode_frame(), cmv_decode_frame(), cmv_decode_inter(), cmv_decode_intra(), cng_decode_frame(), cng_encode_frame(), comp_block(), compare_fields(), config_output(), config_video_output(), copy_fields(), copy_frame(), copy_frame_default(), copy_from(), copy_output(), copy_picture_field(), cpia_decode_frame(), create_clusters(), cyuv_decode_frame(), dct_get(), decimate_frame(), decode_argb_frame(), decode_block(), decode_frame(), decode_i2_frame(), decode_init(), decode_mb(), decode_nal_units(), decode_p_block(), decode_p_frame(), decode_packet(), decode_pic(), decode_rgb24_frame(), decode_slice(), decode_slice_header(), decode_slice_thread(), decode_tag(), decode_thread(), decode_wmv9(), decode_write_frame(), decode_yuv_frame(), deshake_transform_c(), dfa_decode_frame(), dirac_decode_data_unit(), dirac_decode_frame(), dirac_decode_frame_internal(), dirac_decode_picture_header(), display_frame(), dnxhd_decode_macroblock(), dnxhd_encode_picture(), dnxhd_load_picture(), do_psnr(), do_swap(), dpcm_decode_frame(), draw_blank_frame(), draw_char(), draw_dot(), draw_frame(), draw_glyphs(), draw_text(), drawline(), drawtext(), dv_decode_video_segment(), dv_encode_video_segment(), dxtory_decode_v1(), dxtory_decode_v2(), eightsvx_decode_frame(), encode_bitstream(), encode_frame(), encode_mb_internal(), encode_picture_lossless(), encode_picture_ls(), encode_q_branch(), encode_slice(), encode_thread(), erase_line(), erase_screen(), escape124_decode_frame(), escape130_decode_frame(), estimate_best_b_count(), eval_motion_dist(), evrc_decode_frame(), execute_code(), Faac_encode_frame(), fade(), ff_alloc_picture(), ff_apply_vector_2x2(), ff_apply_vector_4x4(), 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_filter_frame_framed(), ff_h263_decode_frame(), ff_h264_decode_ref_pic_list_reordering(), ff_h264_draw_horiz_band(), ff_h264_fill_default_ref_list(), ff_init_block_index(), ff_ivi_decode_frame(), ff_jpegls_decode_picture(), ff_load_image(), ff_mjpeg_decode_frame(), ff_mjpeg_decode_sos(), ff_mpeg4_encode_mb(), ff_MPV_encode_picture(), ff_MPV_frame_end(), ff_MPV_frame_start(), ff_msmpeg4_pred_dc(), ff_opencl_apply_unsharp(), ff_opencl_deshake_process_inout_buf(), ff_opencl_transform(), ff_opencl_unsharp_process_inout_buf(), ff_pre_estimate_p_frame_motion(), ff_print_debug_info2(), 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_thread_video_encode_frame(), ff_tlog_ref(), ff_vaapi_get_surface_id(), ff_vdpau_get_surface_id(), ff_vdpau_h264_set_reference_frames(), ff_vf_next_put_image(), ff_xvmc_decode_mb(), ff_xvmc_field_end(), ff_xvmc_field_start(), ff_xvmc_init_block(), fill_frame_from_iplimage(), fill_iplimage_from_frame(), fill_picture(), fill_picture_monoblack(), fill_picture_rgb(), filter(), filter_frame(), filter_slice(), filter_slice_alpha(), filter_slice_chroma(), filter_slice_luma(), find_slice_quant(), find_unused_picture(), flac_decode_frame(), flac_encode_frame(), flashsv2_encode_frame(), flashsv_decode_block(), flashsv_decode_frame(), flashsv_encode_frame(), flic_decode_frame_15_16BPP(), flic_decode_frame_8BPP(), frame_worker_thread(), free_sequence_buffers(), g2m_decode_frame(), g722_decode_frame(), g723_1_decode_frame(), gather_data_for_cel(), gather_data_for_subcel(), geq_filter_frame(), get_4block_rd(), get_audio_buffer(), get_block_rd(), get_buffer2(), get_buffer_internal(), get_frame_defaults(), get_frame_mb(), get_sample(), get_video_buffer(), getpix(), gif_encode_frame(), gif_fill(), gif_fill_rect(), gif_image_write_image(), gif_read_image(), gsm_decode_frame(), guess_mv(), h261_decode_frame(), h263_mv4_search(), h264_er_decode_mb(), halfpel_interpol(), hscroll(), idcin_decode_frame(), idcin_decode_vlcs(), idct_put(), ilbc_decode_frame(), ilbc_encode_frame(), init_image(), interpolate_refplane(), ipvideo_decode_opcodes(), ir2_decode_frame(), is_intra_more_likely(), iterative_me(), join_request_frame(), jpeg2000_decode_tile(), lag_decode_frame(), lavfi_read_packet(), libcelt_dec_decode(), 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_encode_frame(), libopus_decode(), libopus_encode(), libschroedinger_decode_frame(), libshine_encode_frame(), libspeex_decode_frame(), ljpeg_decode_rgb_scan(), ljpeg_decode_yuv_scan(), load_input_picture(), loop_filter(), luma_abs_diff(), mb_var_thread(), mc_dir_part(), mimic_decode_frame(), mjpeg_decode_scan(), mjpeg_decode_scan_progressive_ac(), mm_decode_frame(), mm_decode_inter(), mm_decode_intra(), mp3lame_encode_frame(), mp_decode_frame(), mp_get_yuv_from_rgb(), mp_read_changes_map(), mp_set_rgb_from_yuv(), MPA_encode_frame(), mpeg_er_decode_mb(), mpeg_field_start(), MPV_decode_mb_internal(), MPV_motion_internal(), MPV_motion_lowres(), msrle_decode_frame(), mss1_decode_frame(), mss2_decode_frame(), mss3_decode_frame(), mss4_decode_frame(), msvideo1_decode_16bit(), msvideo1_decode_8bit(), mvc_decode_frame(), mxpeg_check_dimensions(), mxpeg_decode_frame(), oggvorbis_decode_frame(), output_data(), output_frame(), overlay_ass_image(), pack_yuv(), paf_aud_decode(), paf_vid_decode(), pam_encode_frame(), pcm_bluray_decode_frame(), pcm_decode_frame(), pcm_encode_frame(), pcx_decode_frame(), pcx_encode_frame(), pic_as_field(), pic_is_unused(), picmemset(), picmemset_8bpp(), plot_spectrum_column(), pnm_decode_frame(), pnm_encode_frame(), pp_filter_frame(), predict_slice(), predict_slice_buffered(), prefetch_motion(), prepare_avpic(), print_frame(), print_long_term(), print_short_term(), process_frame_uyvy422(), process_frame_yuv420p(), process_frame_yuv422p(), ptx_decode_frame(), 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_frame(), queue_picture(), ra144_decode_frame(), ra144_encode_frame(), ra288_decode_frame(), raw_decode(), reconstruct_and_encode_image(), ref_frame(), reget_buffer_internal(), release_delayed_buffers(), release_unused_pictures(), render_slice(), request_frame(), rl2_decode_frame(), roq_decode_frame(), roq_dpcm_encode_frame(), rpza_decode_stream(), rv30_loop_filter(), rv34_mc(), rv40_loop_filter(), s302m_decode_frame(), s302m_encode2_frame(), scale_slice(), select_input_picture(), seqvideo_decode(), set_palette(), sgirle_decode_frame(), sipr_decode_frame(), skip_check(), smc_decode_stream(), smka_decode_frame(), smvjpeg_decode_frame(), sse_mb(), sub2video_get_blank_frame(), sub2video_heartbeat(), sub2video_push_ref(), sub2video_update(), sunrast_decode_frame(), sunrast_encode_frame(), svq1_decode_frame(), svq1_encode_frame(), svq1_encode_plane(), svq3_decode_frame(), svq3_mc_dir_part(), synth_superframe(), targa_encode_frame(), 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(), truespeech_decode_frame(), tscc2_decode_slice(), tta_decode_frame(), twolame_encode_frame(), txd_decode_frame(), ulti_convert_yuv(), unref_picture(), update_thread_context(), utvideo_encode_frame(), v308_decode_frame(), v308_encode_frame(), v408_decode_frame(), v408_encode_frame(), v410_decode_frame(), v410_encode_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_frame(), vda_h264_end_frame(), vdadec_decode(), video_encode_example(), video_get_buffer(), vmd_decode(), vmdaudio_decode_frame(), vmdvideo_decode_frame(), vp3_update_thread_context(), vp56_decode_mb(), vp8_decode(), 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_frame(), wavesynth_decode(), wavpack_encode_frame(), ws_snd_decode_frame(), X264_frame(), x8_init_block_index(), 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_decode_frame(), xbm_encode_frame(), xface_decode_frame(), xface_encode_frame(), xvid_encode_frame(), xwd_decode_frame(), xwd_encode_frame(), y216_decode_frame(), y41p_decode_frame(), y41p_encode_frame(), yop_decode_frame(), yuv4_decode_frame(), yuv4_encode_frame(), zero12v_decode_frame(), and zerocodec_decode_frame().

int AVFrame::linesize[AV_NUM_DATA_POINTERS]

For video, size in bytes of each picture line.

For audio, size in bytes of each plane.

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

For video the linesizes should be multiplies of the CPUs alignment preference, this is 16 or 32 for modern desktop CPUs. Some code requires such alignment other code can be slower without correct alignment, for yet other it makes no difference.

Examples:
doc/examples/decoding_encoding.c, doc/examples/demuxing.c, and doc/examples/filtering_video.c.

Definition at line 101 of file frame.h.

Referenced by aasc_decode_frame(), add_frame_default(), aic_decode_slice(), alloc_frame_buffer(), alloc_picture(), amv_encode_picture(), apply_loop_filter(), apply_motion_generic(), apply_unsharp_c(), audio_get_buffer(), aura_decode_frame(), av_frame_make_writable(), av_frame_ref(), avcodec_fill_audio_frame(), avpriv_color_frame(), avs_decode_frame(), avui_decode_frame(), avui_encode_frame(), bethsoftvid_decode_frame(), bfi_decode_frame(), bink_decode_plane(), binkb_decode_plane(), blend_image(), bmp_decode_frame(), bmp_encode_frame(), brpix_decode_frame(), buffer_needs_copy(), buffer_offset(), calc_combed_score(), calc_diffs(), 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(), comp_block(), compare_fields(), config_output(), config_video_output(), copy_fields(), copy_frame(), copy_frame_default(), copy_from(), copy_output(), copy_picture_field(), cpia_decode_frame(), create_clusters(), cyuv_decode_frame(), dct_get(), decimate_frame(), decode_argb_frame(), decode_block(), decode_frame(), decode_i2_frame(), decode_p_frame(), decode_packet(), decode_pic(), decode_rgb24_frame(), decode_slice(), decode_slice_header(), decode_slice_thread(), decode_thread(), decode_wmv9(), decode_write_frame(), decode_yuv_frame(), deshake_transform_c(), dfa_decode_frame(), dirac_decode_data_unit(), display_frame(), dnxhd_decode_macroblock(), dnxhd_encode_picture(), dnxhd_load_picture(), do_psnr(), do_swap(), draw_blank_frame(), draw_char(), draw_dot(), draw_frame(), draw_glyphs(), draw_slice(), draw_text(), drawline(), drawtext(), dv_decode_video_segment(), dv_encode_video_segment(), dxtory_decode_v1(), dxtory_decode_v2(), encode_bitstream(), encode_frame(), encode_picture_lossless(), encode_picture_ls(), encode_q_branch(), encode_slice(), erase_line(), erase_screen(), escape124_decode_frame(), escape130_decode_frame(), estimate_best_b_count(), eval_motion_dist(), execute_code(), fade(), ff_alloc_picture(), ff_apply_vector_2x2(), ff_apply_vector_4x4(), ff_cavs_init_pic(), ff_draw_horiz_band(), ff_er_frame_end(), ff_filter_frame_framed(), ff_h264_draw_horiz_band(), ff_h264_fill_mbaff_ref_list(), ff_init_block_index(), ff_ivi_decode_frame(), ff_jpegls_decode_picture(), ff_load_image(), ff_mjpeg_decode_sof(), ff_MPV_frame_end(), ff_MPV_frame_start(), ff_opencl_apply_unsharp(), ff_opencl_deshake_process_inout_buf(), ff_opencl_transform(), ff_opencl_unsharp_process_inout_buf(), ff_print_debug_info2(), ff_rtjpeg_decode_frame_yuv420(), ff_snow_common_init_after_header(), ff_snow_frame_start(), ff_snow_release_buffer(), ff_thread_video_encode_frame(), ff_tlog_ref(), ff_vf_next_put_image(), ff_vp56_decode_mbs(), fill_frame_from_iplimage(), fill_iplimage_from_frame(), fill_picture(), fill_picture_monoblack(), fill_picture_rgb(), filter(), filter_frame(), filter_slice(), filter_slice_alpha(), filter_slice_chroma(), filter_slice_luma(), find_slice_quant(), flashsv2_encode_frame(), flashsv_decode_block(), flashsv_decode_frame(), flashsv_encode_frame(), flic_decode_frame_15_16BPP(), flic_decode_frame_8BPP(), g2m_decode_frame(), gather_data_for_cel(), gather_data_for_subcel(), geq_filter_frame(), get_4block_rd(), get_audio_buffer(), get_block_rd(), get_buffer(), get_buffer_internal(), get_dc(), get_frame_mb(), get_video_buffer(), getpix(), gif_encode_frame(), gif_fill(), gif_fill_rect(), gif_image_write_image(), gif_read_image(), guess_mv(), halfpel_interpol(), hscroll(), idcin_decode_vlcs(), idct_put(), init_block_index(), interpolate_refplane(), ipvideo_decode_opcodes(), ir2_decode_frame(), is_intra_more_likely(), iterative_me(), join_request_frame(), jpeg2000_decode_tile(), lag_decode_frame(), lavfi_read_packet(), 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_encode_frame(), libschroedinger_decode_frame(), load_input_picture(), luma_abs_diff(), mm_decode_inter(), mm_decode_intra(), mp3lame_encode_frame(), mp_get_yuv_from_rgb(), mp_read_changes_map(), mp_set_rgb_from_yuv(), mpeg_field_start(), mpeg_motion_internal(), mpeg_motion_lowres(), 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(), mvc_decode_frame(), mxpeg_check_dimensions(), output_frame(), overlay_ass_image(), pack_yuv(), paf_vid_decode(), pam_encode_frame(), pcx_decode_frame(), pcx_encode_frame(), pic_as_field(), picmemset(), picmemset_8bpp(), plot_spectrum_column(), pnm_decode_frame(), pnm_encode_frame(), pp_filter_frame(), predict_slice(), predict_slice_buffered(), prepare_avpic(), process_frame_uyvy422(), process_frame_yuv420p(), process_frame_yuv422p(), ptx_decode_frame(), put_dc(), 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(), reget_buffer_internal(), render_slice(), request_frame(), rl2_decode_frame(), rpza_decode_stream(), scale_slice(), seq_decode_op1(), seq_decode_op2(), seq_decode_op3(), seqvideo_decode(), sgirle_decode_frame(), skip_check(), smc_decode_stream(), smvjpeg_decode_frame(), sub2video_get_blank_frame(), sub2video_update(), sunrast_decode_frame(), sunrast_encode_frame(), svq1_decode_frame(), svq1_encode_frame(), svq1_encode_plane(), svq3_decode_frame(), 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(), v308_decode_frame(), v308_encode_frame(), v408_decode_frame(), v408_encode_frame(), v410_decode_frame(), v410_encode_frame(), vble_restore_plane(), vc1_decode_frame(), vc1_interp_mc(), vc1_mc_1mv(), vc1_mc_4mv_chroma(), vc1_mc_4mv_luma(), vcr1_decode_frame(), vdadec_decode(), video_encode_example(), video_get_buffer(), vmd_decode(), vp3_draw_horiz_band(), vp8_decode(), vp8_decode_mb_row_no_filter(), vp8_encode(), vqa_decode_chunk(), write_to_fifo(), 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_decode_frame(), xbm_encode_frame(), xface_decode_frame(), xface_encode_frame(), xvid_encode_frame(), xwd_decode_frame(), xwd_encode_frame(), y216_decode_frame(), y41p_decode_frame(), y41p_encode_frame(), yop_decode_frame(), yuv4_decode_frame(), yuv4_encode_frame(), zero12v_decode_frame(), and zerocodec_decode_frame().

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 should always be set in a valid frame, but for planar audio with more channels that can fit in data, extended_data must be used in order to access all channels.

Definition at line 117 of file frame.h.

Referenced by adpcm_decode_frame(), adx_decode_frame(), alac_encode_frame(), apply_window_and_mdct(), atrac1_decode_frame(), atrac3_decode_frame(), audio_decode_frame(), audio_get_buffer(), av_buffersink_get_samples(), av_frame_alloc(), av_frame_get_plane_buffer(), av_frame_make_writable(), av_frame_move_ref(), av_frame_ref(), avcodec_alloc_frame(), avcodec_decode_audio4(), avcodec_decode_video2(), avcodec_encode_audio2(), avcodec_fill_audio_frame(), avcodec_free_frame(), avcodec_get_frame_defaults(), buffer_offset(), calc_ptr_alignment(), channelmap_filter_frame(), cook_decode_frame(), copy_input_samples(), dca_decode_frame(), decode_element(), decode_frame(), encode_frame(), ff_default_get_audio_buffer(), ff_filter_frame_framed(), ff_filter_frame_needs_framing(), filter_frame(), frame_configure_elements(), frame_worker_thread(), get_audio_buffer(), get_buffer_internal(), get_frame_defaults(), get_video_buffer(), imc_decode_frame(), join_request_frame(), mace_decode_frame(), mp_decode_frame(), mpc7_decode_frame(), mpc8_decode_frame(), oggvorbis_encode_frame(), output_frame(), pad_last_frame(), pcm_decode_frame(), pcm_encode_frame(), plot_spectrum_column(), push_samples(), read_from_fifo(), release_delayed_buffers(), request_frame(), return_audio_frame(), send_silence(), shorten_decode_frame(), smvjpeg_decode_frame(), tak_decode_frame(), twin_decode_frame(), video_get_buffer(), vorbis_decode_frame(), vorbis_encode_frame(), wavpack_decode_block(), wma_decode_superframe(), and write_to_fifo().

int AVFrame::width
int AVFrame::height
int AVFrame::nb_samples

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

Examples:
doc/examples/decoding_encoding.c, doc/examples/demuxing.c, doc/examples/filtering_audio.c, and doc/examples/muxing.c.

Definition at line 127 of file frame.h.

Referenced by aac_decode_frame_int(), aac_encode_frame(), ac3_decode_frame(), adpcm_decode_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(), av_buffersink_get_samples(), av_frame_get_buffer(), av_frame_get_plane_buffer(), av_frame_make_writable(), av_frame_ref(), avcodec_decode_audio4(), avcodec_encode_audio2(), avcodec_fill_audio_frame(), bmv_aud_decode_frame(), buffer_offset(), cinaudio_decode_frame(), cng_decode_frame(), cng_encode_frame(), cook_decode_frame(), copy_input_samples(), dca_decode_frame(), decode_audio(), decode_element(), decode_frame(), decode_packet(), decode_subframe(), decode_tag(), describe_frame_to_str(), do_audio_out(), dpcm_decode_frame(), eightsvx_decode_frame(), encode_frame(), evrc_decode_frame(), Faac_encode_frame(), ff_af_queue_add(), ff_default_get_audio_buffer(), ff_filter_frame(), ff_filter_frame_framed(), ff_filter_frame_needs_framing(), ff_tlog_ref(), filter_frame(), flac_decode_frame(), flac_encode_frame(), flush(), frame_configure_elements(), g722_decode_frame(), g723_1_decode_frame(), get_audio_buffer(), gsm_decode_frame(), ilbc_decode_frame(), imc_decode_frame(), join_request_frame(), lavfi_read_packet(), libcelt_dec_decode(), 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_decode_frame(), oggvorbis_encode_frame(), output_data(), pad_last_frame(), paf_aud_decode(), pcm_bluray_decode_frame(), pcm_decode_frame(), pcm_encode_frame(), print_frame(), push_frame(), push_samples(), qcelp_decode_frame(), qdm2_decode_frame(), ra144_decode_frame(), ra144_encode_frame(), ra288_decode_frame(), request_frame(), return_audio_frame(), s302m_decode_frame(), s302m_encode2_frame(), select_frame(), send_out(), shorten_decode_frame(), show_frame(), sipr_decode_frame(), smka_decode_frame(), synth_superframe(), tak_decode_frame(), truespeech_decode_frame(), tta_decode_frame(), tta_encode_frame(), twin_decode_frame(), twolame_encode_frame(), update_frame_pool(), vmdaudio_decode_frame(), vorbis_decode_frame(), vorbis_encode_frame(), wavesynth_decode(), wavpack_decode_block(), wavpack_encode_frame(), wma_decode_superframe(), write_audio_frame(), write_to_fifo(), and ws_snd_decode_frame().

int AVFrame::format
int AVFrame::key_frame

1 -> keyframe, 0-> not

Definition at line 139 of file frame.h.

Referenced by a64multi_encode_frame(), a64multi_init_encoder(), aic_decode_frame(), av_frame_copy_props(), avcodec_get_frame_defaults(), avfilter_copy_frame_props(), avs_decode_frame(), avui_decode_frame(), avui_encode_frame(), bfi_decode_frame(), bmp_decode_frame(), bmp_encode_frame(), cinepak_decode(), cllc_decode_frame(), cmv_decode_frame(), cpia_decode_frame(), decode_frame(), decode_nal_units(), decode_postinit(), decode_slice(), decode_video(), dirac_decode_data_unit(), dnxhd_decode_frame(), 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_mjpeg_decode_sof(), ff_MPV_encode_picture(), ff_MPV_frame_start(), ff_snow_frame_start(), ff_tlog_ref(), ff_vp56_decode_mbs(), filter_frame(), flashsv2_encode_frame(), flashsv_encode_frame(), g2m_decode_frame(), get_frame_defaults(), gif_decode_frame(), gif_encode_frame(), h261_decode_frame(), h264_frame_start(), jpeg2000_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(), paf_vid_decode(), pam_encode_frame(), pcx_encode_frame(), pnm_decode_frame(), pnm_encode_frame(), prores_encode_init(), qtrle_encode_frame(), qtrle_encode_line(), raw_decode(), request_frame(), show_frame(), 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(), v308_decode_frame(), v308_encode_frame(), v408_decode_frame(), v408_encode_frame(), v410_decode_frame(), v410_encode_frame(), vble_decode_frame(), vc1_decode_frame(), vcr1_decode_frame(), XAVS_frame(), xbm_decode_frame(), xvid_encode_frame(), xwd_decode_frame(), xwd_encode_frame(), y216_decode_frame(), y41p_decode_frame(), y41p_encode_frame(), yuv4_decode_frame(), yuv4_encode_frame(), zero12v_decode_frame(), and zerocodec_decode_frame().

enum AVPictureType AVFrame::pict_type

Picture type of the frame.

Definition at line 144 of file frame.h.

Referenced by a64multi_encode_frame(), a64multi_init_encoder(), aic_decode_frame(), av_frame_copy_props(), avfilter_copy_frame_props(), avs_decode_frame(), avui_decode_frame(), avui_encode_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(), cpia_decode_frame(), decode_frame(), decode_mb_i(), decode_pic(), decode_postinit(), decode_slice_header(), decode_video(), dirac_decode_data_unit(), dnxhd_decode_frame(), 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_draw_horiz_band(), ff_er_frame_end(), ff_h263_decode_frame(), ff_h264_draw_horiz_band(), ff_h264_execute_ref_pic_marking(), ff_mjpeg_decode_sof(), ff_mpeg4_encode_mb(), ff_MPV_encode_picture(), ff_MPV_frame_start(), ff_print_debug_info2(), ff_thread_video_encode_frame(), ff_tlog_ref(), ff_vc1_parse_frame_header_adv(), ff_vp56_decode_mbs(), filter_frame(), flashsv2_encode_frame(), flashsv_encode_frame(), g2m_decode_frame(), gif_decode_frame(), gif_encode_frame(), h261_decode_frame(), is_intra_more_likely(), jpeg2000_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(), paf_vid_decode(), pam_encode_frame(), pcx_decode_frame(), pcx_encode_frame(), pnm_decode_frame(), pnm_encode_frame(), pp_filter_frame(), prores_encode_init(), ptx_decode_frame(), qtrle_encode_frame(), queue_picture(), ratecontrol_1pass(), raw_decode(), raw_init_encoder(), request_frame(), rv10_decode_packet(), select_frame(), select_input_picture(), set_mv_intra(), show_frame(), 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(), v308_decode_frame(), v308_encode_frame(), v408_decode_frame(), v408_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_decode_frame(), xface_encode_init(), xvid_encode_frame(), xwd_decode_frame(), xwd_encode_frame(), y216_decode_frame(), y41p_decode_frame(), y41p_encode_frame(), yuv4_decode_frame(), yuv4_encode_frame(), zero12v_decode_frame(), and zerocodec_decode_frame().

Definition at line 148 of file frame.h.

AVRational AVFrame::sample_aspect_ratio
int64_t AVFrame::pts

Presentation timestamp in time_base units (time when frame should be shown to user).

Examples:
doc/examples/decoding_encoding.c, doc/examples/demuxing.c, doc/examples/filtering_video.c, and doc/examples/muxing.c.

Definition at line 159 of file frame.h.

Referenced by a64multi_encode_frame(), aacPlus_encode_frame(), amr_wb_encode_frame(), audio_decode_frame(), av_buffersink_get_samples(), av_frame_copy_props(), avcodec_encode_audio2(), avcodec_encode_video2(), avcodec_get_frame_defaults(), avfilter_copy_frame_props(), buffer_offset(), copy_picture_attributes(), decode_audio(), decode_packet(), decode_thread(), decode_video(), decode_vop_header(), describe_frame_to_str(), display_frame(), do_audio_out(), do_blend(), do_video_out(), draw_text(), encode_frame(), encode_superframe(), ff_af_queue_add(), ff_filter_frame_framed(), ff_filter_frame_needs_framing(), ff_h263_decode_picture_header(), ff_MPV_encode_picture(), ff_rate_estimate_qscale(), ff_thread_video_encode_frame(), ff_tlog_ref(), ff_vf_next_put_image(), filter_frame(), filter_slice(), flac_encode_frame(), geq_filter_frame(), get_best_frame(), get_frame_defaults(), get_video_frame(), gif_decode_frame(), h261_decode_picture_header(), join_request_frame(), lavfi_read_packet(), libschroedinger_encode_frame(), load_input_picture(), main(), movie_push_frame(), MPA_encode_frame(), mpeg4_encode_gop_header(), output_frame(), plot_spectrum_column(), push_frame(), push_samples(), read_from_fifo(), reap_filters(), request_frame(), return_audio_frame(), return_frame(), roq_dpcm_encode_frame(), select_frame(), send_out(), send_silence(), set_frame_distances(), source_request_frame(), storeframe(), sub2video_push_ref(), try_filter_frame(), tta_encode_frame(), twolame_encode_frame(), update_context(), video_encode_example(), video_thread(), vorbis_encode_frame(), vp8_encode(), X264_frame(), and XAVS_frame().

int64_t AVFrame::pkt_pts
int64_t AVFrame::pkt_dts

DTS copied from the AVPacket that triggered returning this frame.

(if frame threading isnt used) This is also the Presentation time of this AVFrame calculated from only AVPacket.dts values without pts values.

Definition at line 171 of file frame.h.

Referenced by av_frame_copy_props(), avcodec_decode_audio4(), avcodec_decode_video2(), avcodec_get_frame_defaults(), ff_thread_decode_frame(), get_frame_defaults(), get_video_frame(), gif_decode_frame(), and show_frame().

int AVFrame::coded_picture_number
int AVFrame::display_picture_number
int AVFrame::quality
attribute_deprecated int AVFrame::reference
attribute_deprecated int8_t* AVFrame::qscale_table

QP table.

Definition at line 195 of file frame.h.

Referenced by av_frame_copy_props(), and av_frame_set_qp_table().

attribute_deprecated int AVFrame::qstride

QP store stride.

Definition at line 200 of file frame.h.

Referenced by av_frame_copy_props(), av_frame_get_qp_table(), and av_frame_set_qp_table().

attribute_deprecated int AVFrame::qscale_type

Definition at line 203 of file frame.h.

Referenced by av_frame_copy_props(), av_frame_get_qp_table(), and av_frame_set_qp_table().

attribute_deprecated uint8_t* AVFrame::mbskip_table

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

Definition at line 210 of file frame.h.

attribute_deprecated 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];

Definition at line 223 of file frame.h.

attribute_deprecated uint32_t* AVFrame::mb_type

macroblock type table mb_type_base + mb_width + 2

Definition at line 230 of file frame.h.

attribute_deprecated short* AVFrame::dct_coeff

DCT coefficients.

Definition at line 236 of file frame.h.

attribute_deprecated int8_t* AVFrame::ref_index[2]

motion reference frame index the order in which these are stored can depend on the codec.

Definition at line 243 of file frame.h.

void* AVFrame::opaque

for some private data of the user

Definition at line 249 of file frame.h.

Referenced by av_frame_copy_props(), and ff_print_debug_info2().

uint64_t AVFrame::error[AV_NUM_DATA_POINTERS]
attribute_deprecated int AVFrame::type
int AVFrame::repeat_pict

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

extra_delay = repeat_pict / (2*fps)

Definition at line 265 of file frame.h.

Referenced by av_frame_copy_props(), decode_postinit(), filter_frame(), mpeg_field_start(), show_frame(), and vc1_decode_frame().

int AVFrame::interlaced_frame
int AVFrame::top_field_first
int AVFrame::palette_has_changed
attribute_deprecated int AVFrame::buffer_hints

Definition at line 284 of file frame.h.

attribute_deprecated struct AVPanScan* AVFrame::pan_scan

Pan scan.

Definition at line 290 of file frame.h.

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

Definition at line 302 of file frame.h.

Referenced by av_frame_copy_props(), decode_thread(), ff_init_buffer_info(), and raw_decode().

attribute_deprecated void* AVFrame::hwaccel_picture_private
Deprecated:
this field is unused

Definition at line 308 of file frame.h.

attribute_deprecated struct AVCodecContext* AVFrame::owner

Definition at line 311 of file frame.h.

attribute_deprecated void* AVFrame::thread_opaque

Definition at line 313 of file frame.h.

attribute_deprecated 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)

Definition at line 320 of file frame.h.

int AVFrame::sample_rate
uint64_t AVFrame::channel_layout

AVBuffer references backing the data for this frame.

If all elements of this array are NULL, then this frame is not reference counted.

There may be at most one AVBuffer per data plane, so for video this array always contains all the references. For planar audio with more than AV_NUM_DATA_POINTERS channels, there may be more buffers than can fit in this array. Then the extra AVBufferRef pointers are stored in the extended_buf array.

Definition at line 343 of file frame.h.

Referenced by audio_get_buffer(), av_frame_get_plane_buffer(), av_frame_is_writable(), av_frame_make_writable(), av_frame_ref(), av_frame_unref(), avcodec_decode_audio4(), avcodec_decode_video2(), decode_slice_header(), do_swap(), ff_h264_decode_ref_pic_list_reordering(), ff_mpeg_ref_picture(), ff_tlog_ref(), frame_needs_copy(), get_audio_buffer(), get_buffer2(), get_buffer_internal(), get_video_buffer(), join_request_frame(), load_input_picture(), raw_decode(), ref_picture(), vda_h264_end_frame(), vdadec_decode(), and video_get_buffer().

AVBufferRef** AVFrame::extended_buf

For planar audio which requires more than AV_NUM_DATA_POINTERS AVBufferRef pointers, this array will hold all the references which cannot fit into AVFrame.buf.

Note that this is different from AVFrame.extended_data, which always contains all the pointers. This array only contains the extra pointers, which cannot fit into AVFrame.buf.

This array is always allocated using av_malloc() by whoever constructs the frame. It is freed in av_frame_unref().

Definition at line 357 of file frame.h.

Referenced by audio_get_buffer(), av_frame_get_plane_buffer(), av_frame_is_writable(), av_frame_ref(), av_frame_unref(), avcodec_decode_audio4(), get_audio_buffer(), get_buffer_internal(), and join_request_frame().

int AVFrame::nb_extended_buf
AVFrameSideData** AVFrame::side_data
int AVFrame::nb_side_data
int64_t AVFrame::best_effort_timestamp

frame timestamp estimated using various heuristics, in stream time base Code outside libavcodec should access this field using: av_frame_get_best_effort_timestamp(frame)

  • encoding: unused
  • decoding: set by libavcodec, read by user.

Definition at line 373 of file frame.h.

Referenced by av_frame_copy_props().

int64_t AVFrame::pkt_pos

reordered pos from the last AVPacket that has been input into the decoder Code outside libavcodec should access this field using: av_frame_get_pkt_pos(frame)

  • encoding: unused
  • decoding: Read by user.

Definition at line 382 of file frame.h.

Referenced by av_frame_copy_props().

int64_t AVFrame::pkt_duration

duration of the corresponding packet, expressed in AVStream->time_base units, 0 if unknown.

Code outside libavcodec should access this field using: av_frame_get_pkt_duration(frame)

  • encoding: unused
  • decoding: Read by user.

Definition at line 392 of file frame.h.

Referenced by av_frame_copy_props().

AVDictionary* AVFrame::metadata

metadata.

Code outside libavcodec should access this field using: av_frame_get_metadata(frame)

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

Definition at line 401 of file frame.h.

Referenced by av_frame_copy_props(), av_frame_unref(), avpriv_frame_get_metadatap(), filter_frame(), and get_metadata_val().

int AVFrame::decode_error_flags

decode error flags of the frame, set to a combination of FF_DECODE_ERROR_xxx flags if the decoder produced a frame, but there were errors during the decoding.

Code outside libavcodec should access this field using: av_frame_get_decode_error_flags(frame)

  • encoding: unused
  • decoding: set by libavcodec, read by user.

Definition at line 412 of file frame.h.

Referenced by av_frame_copy_props().

int AVFrame::channels

number of audio channels, only used for audio.

Code outside libavcodec should access this field using: av_frame_get_channels(frame)

  • encoding: unused
  • decoding: Read by user.

Definition at line 423 of file frame.h.

Referenced by av_frame_get_plane_buffer(), av_frame_make_writable(), av_frame_ref(), and get_audio_buffer().

int AVFrame::pkt_size

size of the corresponding packet containing the compressed frame.

It must be accessed using av_frame_get_pkt_size() and av_frame_set_pkt_size(). It is set to a negative value if unknown.

  • encoding: unused
  • decoding: set by libavcodec, read by user.

Definition at line 433 of file frame.h.

Referenced by av_frame_copy_props().

AVBufferRef* AVFrame::qp_table_buf

Not to be accessed directly from outside libavutil.

Definition at line 438 of file frame.h.

Referenced by av_frame_copy_props(), av_frame_get_qp_table(), av_frame_set_qp_table(), and av_frame_unref().


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