Loading...
Searching...
No Matches
packet.h File Reference
`#include <stddef.h>`
`#include <stdint.h>`
`#include "libavutil/attributes.h"`
`#include "libavutil/buffer.h"`
`#include "libavutil/dict.h"`
`#include "libavutil/rational.h"`
`#include "libavutil/version.h"`
`#include "libavcodec/version_major.h"`

Go to the source code of this file.

## Data Structures

struct | AVPacketSideData
| This structure stores auxiliary information for decoding, presenting, or otherwise processing the coded stream. More...
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.
#define | AV_PKT_FLAG_DISCARD 0x0004
| Flag is used to discard packets which are required to maintain valid decoder state but are not required for output and should be dropped after decoding.
#define | AV_PKT_FLAG_TRUSTED 0x0008
| The packet comes from a trusted source.
#define | AV_PKT_FLAG_DISPOSABLE 0x0010
| Flag is used to indicate packets that contain frames that can be discarded by the decoder.

## Enumerations

enum

AVPacketSideDataType {
AV_PKT_DATA_PALETTE , AV_PKT_DATA_NEW_EXTRADATA , AV_PKT_DATA_PARAM_CHANGE , AV_PKT_DATA_H263_MB_INFO ,
AV_PKT_DATA_REPLAYGAIN , AV_PKT_DATA_DISPLAYMATRIX , AV_PKT_DATA_STEREO3D , AV_PKT_DATA_AUDIO_SERVICE_TYPE ,
AV_PKT_DATA_QUALITY_STATS , AV_PKT_DATA_FALLBACK_TRACK , AV_PKT_DATA_CPB_PROPERTIES , AV_PKT_DATA_SKIP_SAMPLES ,
AV_PKT_DATA_JP_DUALMONO , AV_PKT_DATA_STRINGS_METADATA , AV_PKT_DATA_SUBTITLE_POSITION , AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL ,
AV_PKT_DATA_WEBVTT_IDENTIFIER , AV_PKT_DATA_WEBVTT_SETTINGS , AV_PKT_DATA_METADATA_UPDATE , AV_PKT_DATA_MPEGTS_STREAM_ID ,
AV_PKT_DATA_MASTERING_DISPLAY_METADATA , AV_PKT_DATA_SPHERICAL , AV_PKT_DATA_CONTENT_LIGHT_LEVEL , AV_PKT_DATA_A53_CC ,
AV_PKT_DATA_ENCRYPTION_INIT_INFO , AV_PKT_DATA_ENCRYPTION_INFO , AV_PKT_DATA_AFD , AV_PKT_DATA_PRFT ,
AV_PKT_DATA_ICC_PROFILE , AV_PKT_DATA_DOVI_CONF , AV_PKT_DATA_S12M_TIMECODE , AV_PKT_DATA_DYNAMIC_HDR10_PLUS ,
AV_PKT_DATA_IAMF_MIX_GAIN_PARAM , AV_PKT_DATA_IAMF_DEMIXING_INFO_PARAM , AV_PKT_DATA_IAMF_RECON_GAIN_INFO_PARAM , AV_PKT_DATA_AMBIENT_VIEWING_ENVIRONMENT ,
AV_PKT_DATA_FRAME_CROPPING , AV_PKT_DATA_LCEVC , AV_PKT_DATA_3D_REFERENCE_DISPLAYS , AV_PKT_DATA_RTCP_SR ,
AV_PKT_DATA_NB
}

enum | AVSideDataParamChangeFlags { AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE = 0x0004 , AV_SIDE_DATA_PARAM_CHANGE_DIMENSIONS = 0x0008 }

## Functions

AVPacketSideData * | av_packet_side_data_new (AVPacketSideData **psd, int *pnb_sd, enum AVPacketSideDataType type, size_t size, int flags)
| Allocate a new packet side data.
AVPacketSideData * | av_packet_side_data_add (AVPacketSideData **sd, int *nb_sd, enum AVPacketSideDataType type, void *data, size_t size, int flags)
| Wrap existing data as packet side data.
const AVPacketSideData * | av_packet_side_data_get (const AVPacketSideData *sd, int nb_sd, enum AVPacketSideDataType type)
| Get side information from a side data array.
void | av_packet_side_data_remove (AVPacketSideData *sd, int *nb_sd, enum AVPacketSideDataType type)
| Remove side data of the given type from a side data array.
void | av_packet_side_data_free (AVPacketSideData **sd, int *nb_sd)
| Convenience function to free all the side data stored in an array, and the array itself.
const char * | av_packet_side_data_name (enum AVPacketSideDataType type)
AVPacket * | av_packet_alloc (void)
| Allocate an AVPacket and set its fields to default values.
AVPacket * | av_packet_clone (const AVPacket *src)
| Create a new packet that references the same data as src.
void | av_packet_free (AVPacket **pkt)
| Free the packet, if the packet is reference counted, it will be unreferenced first.
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.
uint8_t * | av_packet_new_side_data (AVPacket *pkt, enum AVPacketSideDataType type, size_t size)
| Allocate new information of a packet.
int | av_packet_add_side_data (AVPacket *pkt, enum AVPacketSideDataType type, uint8_t *data, size_t size)
| Wrap an existing array as a packet side data.
int | av_packet_shrink_side_data (AVPacket *pkt, enum AVPacketSideDataType type, size_t size)
| Shrink the already allocated side data buffer.
uint8_t * | av_packet_get_side_data (const AVPacket *pkt, enum AVPacketSideDataType type, size_t *size)
| Get side information from packet.
uint8_t * | av_packet_pack_dictionary (AVDictionary *dict, size_t *size)
| Pack a dictionary for use in side_data.
int | av_packet_unpack_dictionary (const uint8_t *data, size_t size, AVDictionary **dict)
| Unpack a dictionary from side_data.
void | av_packet_free_side_data (AVPacket *pkt)
| Convenience function to free all the side data stored.
int | av_packet_ref (AVPacket *dst, const AVPacket *src)
| Setup a new reference to the data described by a given packet.
void | av_packet_unref (AVPacket *pkt)
| Wipe the packet.
void | av_packet_move_ref (AVPacket *dst, AVPacket *src)
| Move every field in src to dst and reset src.
int | av_packet_copy_props (AVPacket *dst, const AVPacket *src)
| Copy only "properties" fields from src to dst.
int | av_packet_make_refcounted (AVPacket *pkt)
| Ensure the data described by a given packet is reference counted.
int | av_packet_make_writable (AVPacket *pkt)
| Create a writable reference for the data described by a given packet, avoiding data copy if possible.
void | av_packet_rescale_ts (AVPacket *pkt, AVRational tb_src, AVRational tb_dst)
| Convert valid timing fields (timestamps / durations) in a packet from one timebase to another.
struct AVContainerFifo * | av_container_fifo_alloc_avpacket (unsigned flags)
| Allocate an AVContainerFifo instance for AVPacket.