Go to the documentation of this file.
38 memset(par, 0,
sizeof(*par));
81 int nb_dst = *pnb_dst;
86 *pdst = dst =
av_calloc(nb_src,
sizeof(*dst));
90 for (
int i = 0;
i < nb_src;
i++) {
111 memcpy(dst,
src,
sizeof(*dst));
118 if (
src->extradata) {
126 src->coded_side_data,
src->nb_coded_side_data);
int frame_size
Number of samples per channel in an audio frame.
uint8_t * extradata
Extra binary data needed for initializing the decoder, codec-dependent.
Filter the word “frame” indicates either a video frame or a group of audio as stored in an AVFrame structure Format for each input and each output the list of supported formats For video that means pixel format For audio that means channel sample they are references to shared objects When the negotiation mechanism computes the intersection of the formats supported at each end of a all references to both lists are replaced with a reference to the intersection And when a single format is eventually chosen for a link amongst the remaining all references to the list are updated That means that if a filter requires that its input and output have the same format amongst a supported all it has to do is use a reference to the same list of formats query_formats can leave some formats unset and return AVERROR(EAGAIN) to cause the negotiation mechanism toagain later. That can be used by filters with complex requirements to use the format negotiated on one link to set the formats supported on another. Frame references ownership and permissions
enum AVMediaType codec_type
General type of the encoded data.
enum AVColorSpace colorspace
YUV colorspace type.
int sample_rate
samples per second
This struct describes the properties of an encoded stream.
enum AVColorSpace color_space
AVPacketSideData * coded_side_data
Additional data associated with the entire coded stream.
int avcodec_parameters_to_context(AVCodecContext *codec, const AVCodecParameters *par)
enum AVColorTransferCharacteristic color_trc
Color Transfer Characteristic.
This structure stores auxiliary information for decoding, presenting, or otherwise processing the cod...
enum AVFieldOrder field_order
Field order.
int seek_preroll
Audio only.
AVRational framerate
Video only.
uint32_t codec_tag
Additional information about the codec (corresponds to the AVI FOURCC).
enum AVChannelOrder order
Channel order used in this layout.
void * av_memdup(const void *p, size_t size)
Duplicate a buffer with av_malloc().
enum AVColorPrimaries color_primaries
AVChannelLayout ch_layout
Audio channel layout.
int bits_per_raw_sample
This is the number of valid bits in each output sample.
int initial_padding
Audio only.
enum AVColorTransferCharacteristic color_trc
enum AVColorPrimaries color_primaries
Chromaticity coordinates of the source primaries.
#define AV_PROFILE_UNKNOWN
int frame_size
Audio only.
int has_b_frames
Size of the frame reordering buffer in the decoder.
AVRational sample_aspect_ratio
Video only.
@ AV_CHANNEL_ORDER_UNSPEC
Only the channel count is specified, without any further information about the channel order.
int bits_per_raw_sample
Bits per sample/pixel of internal libavcodec pixel/sample format.
int nb_coded_side_data
Amount of entries in coded_side_data.
void av_packet_side_data_free(AVPacketSideData **psd, int *pnb_sd)
Convenience function to free all the side data stored in an array, and the array itself.
enum AVColorRange color_range
MPEG vs JPEG YUV range.
void avcodec_parameters_free(AVCodecParameters **ppar)
Free an AVCodecParameters instance and everything associated with it and write NULL to the supplied p...
Rational number (pair of numerator and denominator).
int64_t bit_rate
the average bitrate
enum AVPacketSideDataType type
int trailing_padding
Audio only.
AVChannelLayout ch_layout
Audio only.
int level
Encoding level descriptor.
@ AVCOL_RANGE_UNSPECIFIED
int sample_rate
Audio only.
int extradata_size
Size of the extradata content in bytes.
An AVChannelLayout holds information about the channel layout of audio data.
enum AVSampleFormat sample_fmt
audio sample format
int profile
Codec-specific bitstream restrictions that the stream conforms to.
@ AVCHROMA_LOC_UNSPECIFIED
@ AVMEDIA_TYPE_UNKNOWN
Usually treated as AVMEDIA_TYPE_DATA.
static void codec_parameters_reset(AVCodecParameters *par)
AVCodecParameters * avcodec_parameters_alloc(void)
Allocate a new AVCodecParameters and set its fields to default values (unknown/invalid/0).
int bits_per_coded_sample
bits per sample/pixel from the demuxer (needed for huffyuv).
#define i(width, name, range_min, range_max)
uint8_t * extradata
some codecs need / can use extradata like Huffman tables.
static int codec_parameters_copy_side_data(AVPacketSideData **pdst, int *pnb_dst, const AVPacketSideData *src, int nb_src)
int block_align
Audio only.
void * av_mallocz(size_t size)
Allocate a memory block with alignment suitable for all memory accesses (including vectors if availab...
enum AVChromaLocation chroma_sample_location
This defines the location of chroma samples.
enum AVColorRange color_range
Video only.
AVPacketSideData * coded_side_data
Additional data associated with the entire stream.
enum AVPixelFormat pix_fmt
Pixel format, see AV_PIX_FMT_xxx.
void * av_calloc(size_t nmemb, size_t size)
enum AVFieldOrder field_order
Video only.
int block_align
number of bytes per packet if constant and known or 0 Used by some WAV based audio codecs.
#define AV_INPUT_BUFFER_PADDING_SIZE
enum AVChromaLocation chroma_location
int trailing_padding
Audio only.
main external API structure.
void av_channel_layout_uninit(AVChannelLayout *channel_layout)
Free any allocated data in the channel layout and reset the channel count to 0.
int av_channel_layout_copy(AVChannelLayout *dst, const AVChannelLayout *src)
Make a copy of a channel layout.
enum AVMediaType codec_type
int seek_preroll
Number of samples to skip after a discontinuity.
int bits_per_coded_sample
The number of bits per sample in the codedwords.
int video_delay
Video only.
int avcodec_parameters_from_context(AVCodecParameters *par, const AVCodecContext *codec)
Fill the parameters struct based on the values from the supplied codec context.
unsigned int codec_tag
fourcc (LSB first, so "ABCD" -> ('D'<<24) + ('C'<<16) + ('B'<<8) + 'A').
enum AVCodecID codec_id
Specific type of the encoded data (the codec used).
int width
picture width / height.
int64_t bit_rate
The average bitrate of the encoded data (in bits per second).
int initial_padding
Audio only.
AVRational sample_aspect_ratio
sample aspect ratio (0 if unknown) That is the width of a pixel divided by the height of the pixel.
int avcodec_parameters_copy(AVCodecParameters *dst, const AVCodecParameters *src)
Copy the contents of src to dst.