FFmpeg
|
Types and functions for working with AVPacket. More...
Data Structures | |
struct | AVPacket |
This structure stores compressed data. More... | |
Macros | |
#define | AV_PKT_FLAG_KEY 0x0001 |
The packet contains a keyframe. | |
#define | AV_PKT_FLAG_CORRUPT 0x0002 |
The packet content is corrupted. | |
Functions | |
void | av_init_packet (AVPacket *pkt) |
Initialize optional fields of a packet with default values. | |
int | av_new_packet (AVPacket *pkt, int size) |
Allocate the payload of a packet and initialize its fields with default values. | |
void | av_shrink_packet (AVPacket *pkt, int size) |
Reduce packet size, correctly zeroing padding. | |
int | av_grow_packet (AVPacket *pkt, int grow_by) |
Increase packet size, correctly zeroing padding. | |
int | av_packet_from_data (AVPacket *pkt, uint8_t *data, int size) |
Initialize a reference-counted packet from av_malloc()ed data. | |
int | av_dup_packet (AVPacket *pkt) |
int | av_copy_packet (AVPacket *dst, AVPacket *src) |
Copy packet, including contents. | |
int | av_copy_packet_side_data (AVPacket *dst, AVPacket *src) |
Copy packet side data. | |
void | av_free_packet (AVPacket *pkt) |
Free a packet. | |
uint8_t * | av_packet_new_side_data (AVPacket *pkt, enum AVPacketSideDataType type, int size) |
Allocate new information of a packet. | |
int | av_packet_shrink_side_data (AVPacket *pkt, enum AVPacketSideDataType type, int size) |
Shrink the already allocated side data buffer. | |
uint8_t * | av_packet_get_side_data (AVPacket *pkt, enum AVPacketSideDataType type, int *size) |
Get side information from packet. | |
int | av_packet_merge_side_data (AVPacket *pkt) |
int | av_packet_split_side_data (AVPacket *pkt) |
Types and functions for working with AVPacket.
#define AV_PKT_FLAG_KEY 0x0001 |
The packet contains a keyframe.
Definition at line 1119 of file avcodec.h.
Referenced by a64multi_encode_frame(), ape_tag_read_field(), asf_parse_packet(), asf_read_picture(), asf_read_pts(), asf_write_packet(), av_read_frame(), avcodec_encode_audio2(), avi_write_packet(), avpriv_dv_produce_packet(), avs_read_audio_packet(), avs_read_video_packet(), avui_encode_frame(), bmp_encode_frame(), cdxl_read_packet(), compute_pkt_fields(), dc1394_read_common(), decode_frame(), dirac_gptopts(), dnxhd_encode_picture(), do_streamcopy(), do_video_out(), dv_extract_audio_info(), ea_read_packet(), encode_frame(), encode_picture_lossless(), encode_picture_ls(), ff_flac_parse_picture(), ff_id3v2_parse_apic(), ff_mov_add_hinted_packet(), ff_mov_write_packet(), ff_MPV_encode_picture(), ff_rm_parse_packet(), ff_rm_retrieve_cache(), ff_subtitles_queue_insert(), ffm_read_packet(), ffm_write_packet(), flashsv2_encode_frame(), flashsv_decode_frame(), flashsv_encode_frame(), flv_data_packet(), flv_read_packet(), flv_write_packet(), framecrc_write_packet(), get_attachment(), get_needed_flags(), gif_encode_frame(), gif_read_packet(), h263_handle_packet(), hls_read_packet(), hls_write_packet(), http_prepare_data(), idcin_read_packet(), iff_read_packet(), img_read_packet(), ism_write_packet(), libopenjpeg_encode_frame(), libschroedinger_encode_frame(), lmlm4_read_packet(), lvf_read_packet(), lxf_read_packet(), main(), matroska_parse_block(), mkv_write_packet(), mkv_write_packet_internal(), modplug_read_packet(), mov_create_chapter_track(), mov_create_timecode_track(), mov_parse_vc1_frame(), mov_read_covr(), mov_read_packet(), mov_write_single_packet(), mpeg_mux_write_packet(), mpegts_write_flush(), mpegts_write_packet_internal(), msnwc_tcp_read_packet(), mv_read_packet(), nsv_read_chunk(), nut_read_packet(), nut_write_packet(), nuv_packet(), ogg_read_packet(), ogg_read_timestamp(), ogg_validate_keyframe(), ogg_write_packet(), ogm_packet(), old_dirac_gptopts(), pam_encode_frame(), parse_packet(), pcx_encode_frame(), pkt_dump_internal(), pnm_encode_frame(), prores_encode_frame(), put_payload_header(), qt_rtp_parse_packet(), qtrle_encode_frame(), raw_encode(), read_frame(), read_frame_internal(), read_packet(), rm_write_audio(), rm_write_video(), roq_encode_frame(), rpl_read_packet(), search_hi_lo_keyframes(), seek_frame_generic(), seg_write_packet(), show_packet(), siff_read_packet(), smush_read_packet(), Stagefright_decode_frame(), storeframe(), sunrast_encode_frame(), svq1_encode_frame(), targa_encode_frame(), theora_gptopts(), tmv_read_packet(), utvideo_encode_frame(), v308_encode_frame(), v408_encode_frame(), v410_encode_frame(), vc1t_read_packet(), vc1test_write_packet(), vid_read_packet(), write_frame(), write_timestamp(), write_video_frame(), X264_frame(), XAVS_frame(), xbm_encode_frame(), xface_encode_frame(), xmv_fetch_video_packet(), xvid_encode_frame(), xwd_encode_frame(), y41p_encode_frame(), yop_read_packet(), yuv4_encode_frame(), and zerocodec_decode_frame().
#define AV_PKT_FLAG_CORRUPT 0x0002 |
The packet content is corrupted.
Definition at line 1120 of file avcodec.h.
Referenced by aiff_read_packet(), apc_read_packet(), append_packet_chunked(), ff_pcm_read_packet(), ff_read_packet(), handle_packet(), mp3_read_packet(), new_pes_packet(), read_packet(), sol_read_packet(), vorbis_packet(), and vp8_handle_packet().
enum AVPacketSideDataType |
AV_PKT_DATA_PALETTE | |
AV_PKT_DATA_NEW_EXTRADATA | |
AV_PKT_DATA_PARAM_CHANGE |
An AV_PKT_DATA_PARAM_CHANGE side data packet is laid out as follows: u32le param_flags
if (param_flags & AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT)
s32le channel_count
if (param_flags & AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT)
u64le channel_layout
if (param_flags & AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE)
s32le sample_rate
if (param_flags & AV_SIDE_DATA_PARAM_CHANGE_DIMENSIONS)
s32le width
s32le height
|
AV_PKT_DATA_H263_MB_INFO |
An AV_PKT_DATA_H263_MB_INFO side data packet contains a number of structures with info about macroblocks relevant to splitting the packet into smaller packets on macroblock edges (e.g. as for RFC 2190). That is, it does not necessarily contain info about all macroblocks, as long as the distance between macroblocks in the info is smaller than the target payload size. Each MB info structure is 12 bytes, and is laid out as follows: |
AV_PKT_DATA_SKIP_SAMPLES |
Recommmends skipping the specified number of samples. |
AV_PKT_DATA_JP_DUALMONO |
An AV_PKT_DATA_JP_DUALMONO side data packet indicates that the packet may contain "dual mono" audio specific to Japanese DTV and if it is true, recommends only the selected channel to be used. u8 selected channels (0=mail/left, 1=sub/right, 2=both)
|
AV_PKT_DATA_STRINGS_METADATA |
A list of zero terminated key/value strings. There is no end marker for the list, so it is required to rely on the side data size to stop. |
AV_PKT_DATA_SUBTITLE_POSITION |
Subtitle event position. u32le x1
u32le y1
u32le x2
u32le y2
|
AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL |
Data found in BlockAdditional element of matroska container. There is no end marker for the data, so it is required to rely on the side data size to recognize the end. 8 byte id (as found in BlockAddId) followed by data. |
AV_PKT_DATA_WEBVTT_IDENTIFIER |
The optional first identifier line of a WebVTT cue. |
AV_PKT_DATA_WEBVTT_SETTINGS |
The optional settings (rendering instructions) that immediately follow the timestamp specifier of a WebVTT cue. |
Initialize optional fields of a packet with default values.
Note, this does not touch the data and size members, which have to be initialized separately.
pkt | packet |
Definition at line 56 of file avpacket.c.
Referenced by audio_decode_example(), audio_encode_example(), av_get_packet(), av_new_packet(), avcodec_encode_audio2(), avcodec_encode_video2(), avformat_find_stream_info(), avi_write_packet(), avpriv_dv_produce_packet(), dc1394_read_common(), do_audio_out(), do_streamcopy(), do_subtitle_out(), do_video_out(), dv_extract_audio_info(), encode_frame(), ff_alloc_packet2(), ff_flac_parse_picture(), ff_id3v2_parse_apic(), ff_interleave_packet_per_dts(), ff_mov_add_hinted_packet(), ff_read_packet(), ff_rtp_finalize_packet(), filter_frame(), flush_encoders(), main(), mkv_write_header(), mov_write_subtitle_end_packet(), movie_push_frame(), mpegts_get_dts(), mpegts_write_packet_internal(), mxf_interleave_get_packet(), new_pes_packet(), output_packet(), parse_packet(), qt_rtp_parse_packet(), read_frame_internal(), read_packets(), read_thread(), reset_packet(), sp5x_decode_frame(), v4l2_read_packet(), video_decode_example(), video_encode_example(), wc3_read_header(), worker(), write_audio_frame(), write_video_frame(), and x11grab_read_packet().
int av_new_packet | ( | AVPacket * | pkt, |
int | size | ||
) |
Allocate the payload of a packet and initialize its fields with default values.
pkt | packet |
size | wanted payload size |
Definition at line 73 of file avpacket.c.
Referenced by aac_parse_packet(), amr_handle_packet(), amr_read_packet(), ape_read_packet(), asf_parse_packet(), audio_read_packet(), av_grow_packet(), avs_read_video_packet(), bmv_read_packet(), callback(), cdxl_read_packet(), cin_read_packet(), decode_frame(), dxa_read_packet(), fbdev_read_packet(), ff_alloc_packet2(), ff_h263_handle_packet(), ff_raw_read_partial_packet(), ff_rm_retrieve_cache(), ff_spdif_read_packet(), ff_subtitles_queue_insert(), ffm_read_packet(), film_read_packet(), fourxm_read_packet(), g723_1_read_packet(), grab_read_packet(), h264_handle_packet(), iff_read_packet(), ilbc_read_packet(), img_read_packet(), interleave_new_audio_packet(), latm_parse_packet(), lavfi_read_packet(), load_ipmovie_packet(), lxf_read_packet(), matroska_parse_frame(), matroska_parse_rm_audio(), mmap_read_frame(), modplug_read_packet(), mpc_read_packet(), mpeg_parse_packet(), mpegts_raw_read_packet(), nut_read_packet(), nuv_packet(), ogg_read_packet(), pulse_read_packet(), qdm2_restore_block(), qt_rtp_parse_packet(), read_frame(), read_packet(), read_packet_gme(), recode_subtitle(), return_stored_frame(), rm_assemble_video_frame(), rm_read_audio_stream_info(), roq_read_packet(), rtp_parse_packet_internal(), sbg_read_packet(), seq_read_packet(), siff_read_packet(), smacker_read_packet(), store_packet(), str_read_packet(), supply_new_packets(), swf_read_packet(), videostream_cb(), vmd_read_packet(), vqf_read_packet(), wsaud_read_packet(), wv_read_packet(), xiph_handle_packet(), and yop_read_packet().
Reduce packet size, correctly zeroing padding.
pkt | packet |
size | new size |
Definition at line 97 of file avpacket.c.
Referenced by adp_read_packet(), append_packet_chunked(), asf_parse_packet(), cdxl_read_packet(), cin_read_packet(), ff_raw_read_partial_packet(), libopus_encode(), mxf_decrypt_triplet(), mxf_get_d10_aes3_packet(), nuv_packet(), rsd_read_packet(), and yop_read_packet().
int av_grow_packet | ( | AVPacket * | pkt, |
int | grow_by | ||
) |
Increase packet size, correctly zeroing padding.
pkt | packet |
grow_by | number of bytes by which to increase the size of the packet |
Definition at line 105 of file avpacket.c.
Referenced by append_packet_chunked(), encode_callback(), ff_subtitles_queue_insert(), and wv_read_packet().
Initialize a reference-counted packet from av_malloc()ed data.
pkt | packet to be initialized. This function will set the data, size, buf and destruct fields, all others are left untouched. |
data | Data allocated by av_malloc() to be used as packet data. If this function returns successfully, the data is owned by the underlying AVBuffer. The caller may not access the data through other means. |
size | size of data in bytes, without the padding. I.e. the full buffer size is assumed to be size + FF_INPUT_BUFFER_PADDING_SIZE. |
Definition at line 136 of file avpacket.c.
Referenced by ff_rtp_finalize_packet(), and qt_rtp_parse_packet().
int av_dup_packet | ( | AVPacket * | pkt | ) |
Definition at line 233 of file avpacket.c.
Referenced by av_read_frame(), avcodec_encode_audio2(), avcodec_encode_video2(), avformat_find_stream_info(), ff_interleave_add_packet(), mkv_write_packet(), packet_queue_put(), parse_packet(), tee_write_packet(), and worker().
Copy packet, including contents.
Definition at line 248 of file avpacket.c.
Referenced by aiff_write_packet(), ff_subtitles_queue_read_packet(), flush_packet(), gif_write_packet(), read_thread(), tee_write_packet(), and write_packet().
Copy packet side data.
Definition at line 211 of file avpacket.c.
Referenced by copy_packet_data(), and ff_interleave_add_packet().
Free a packet.
pkt | packet to free |
Definition at line 254 of file avpacket.c.
Referenced by adp_read_packet(), adx_read_packet(), aiff_write_trailer(), amr_read_packet(), append_packet_chunked(), asf_parse_packet(), asf_read_header(), asf_read_picture(), asf_read_pts(), asf_reset_header(), asfrtp_parse_packet(), audio_decode_frame(), audio_encode_example(), audio_read_packet(), av_interleaved_write_frame(), av_packet_merge_side_data(), av_write_trailer(), avcodec_decode_subtitle2(), avcodec_encode_audio2(), avcodec_encode_video2(), avi_read_close(), avs_read_video_packet(), cdxl_read_packet(), cin_read_packet(), dfa_read_packet(), do_audio_out(), do_video_out(), dxa_read_packet(), ea_read_packet(), encode_frame(), estimate_timings_from_pts(), extract_mpeg4_header(), ff_free_stream(), ff_raw_read_partial_packet(), ff_read_packet(), ff_rm_free_rmstream(), ff_spdif_read_packet(), ff_subtitles_queue_clean(), ffm_read_packet(), flush_packet(), fourxm_read_packet(), free_packet_buffer(), free_packet_list(), free_pkt_fifo(), free_variant_list(), g723_1_read_packet(), gsm_read_packet(), hls_read_seek(), http_prepare_data(), idcin_read_packet(), ilbc_read_packet(), img_read_packet(), interleave_packet(), load_ipmovie_packet(), lxf_read_packet(), main(), matroska_clear_queue(), matroska_parse_frame(), mkv_write_packet(), mkv_write_trailer(), mmap_read_frame(), modplug_read_packet(), mov_write_subtitle_end_packet(), movie_push_frame(), mp3_queue_flush(), mpc_read_packet(), mpc_read_seek(), mpegts_get_dts(), mpegts_raw_read_packet(), mpegts_read_packet(), mxf_interleave_get_packet(), nc_read_packet(), nsv_read_close(), nuv_packet(), packet_queue_flush(), packet_queue_put(), parse_packet(), process_input(), pulse_read_packet(), qt_rtp_parse_packet(), read_frame_internal(), read_packet(), read_packets(), read_thread(), recode_subtitle(), redspark_read_packet(), rl2_read_packet(), rm_assemble_video_frame(), rm_read_packet(), rpl_read_packet(), rsd_read_packet(), sap_fetch_packet(), search_hi_lo_keyframes(), seek_frame_generic(), seek_subtitle(), storeframe(), str_read_close(), str_read_packet(), stream_component_close(), subtitle_thread(), thp_read_packet(), video_encode_example(), video_thread(), vivo_read_packet(), vmd_read_packet(), vqf_read_packet(), wc3_read_close(), write_frame(), write_trailer(), wv_read_packet(), wv_read_seek(), xiph_handle_packet(), xvid_encode_frame(), yop_read_close(), yop_read_packet(), and yop_read_seek().
uint8_t* av_packet_new_side_data | ( | AVPacket * | pkt, |
enum AVPacketSideDataType | type, | ||
int | size | ||
) |
Allocate new information of a packet.
pkt | packet |
type | side information type |
size | side information size |
Definition at line 276 of file avpacket.c.
Referenced by asf_parse_packet(), av_read_frame(), ff_add_param_change(), ff_MPV_encode_picture(), flv_read_packet(), gif_encode_frame(), gif_image_write_image(), idcin_read_packet(), lavfi_read_packet(), load_ipmovie_packet(), matroska_parse_frame(), mov_read_packet(), read_frame(), srt_read_header(), storeframe(), and swf_read_packet().
int av_packet_shrink_side_data | ( | AVPacket * | pkt, |
enum AVPacketSideDataType | type, | ||
int | size | ||
) |
Shrink the already allocated side data buffer.
pkt | packet |
type | side information type |
size | new side information size |
Definition at line 405 of file avpacket.c.
Referenced by ff_MPV_encode_picture().
uint8_t* av_packet_get_side_data | ( | AVPacket * | pkt, |
enum AVPacketSideDataType | type, | ||
int * | size | ||
) |
Get side information from packet.
pkt | packet |
type | desired side information type |
size | pointer for side information size to store (optional) |
Definition at line 301 of file avpacket.c.
Referenced by aac_decode_frame(), aac_decode_frame_int(), add_metadata_from_side_data(), apply_param_change(), avcodec_decode_audio4(), cinepak_decode_frame(), decode_frame(), decode_tag(), flush_packet(), idcin_decode_frame(), ipvideo_decode_frame(), mkv_write_block(), mkv_write_vtt_blocks(), msrle_decode_frame(), msvideo1_decode_frame(), qtrle_decode_frame(), raw_decode(), rtp_write_packet(), smc_decode_frame(), srt_decode_frame(), srt_write_packet(), and webvtt_write_packet().
int av_packet_merge_side_data | ( | AVPacket * | pkt | ) |
Definition at line 318 of file avpacket.c.
Referenced by avcodec_encode_video2(), ff_read_packet(), and write_packet().
int av_packet_split_side_data | ( | AVPacket * | pkt | ) |
Definition at line 356 of file avpacket.c.
Referenced by avcodec_decode_audio4(), avcodec_decode_subtitle2(), avcodec_decode_video2(), and write_packet().