Go to the documentation of this file.
38 memset(par, 0,
sizeof(*par));
82 int nb_dst = *pnb_dst;
91 for (
int i = 0;
i < nb_src;
i++) {
116 dst->extradata_size = 0;
118 dst->nb_coded_side_data = 0;
119 if (
src->extradata) {
123 memcpy(
dst->extradata,
src->extradata,
src->extradata_size);
124 dst->extradata_size =
src->extradata_size;
127 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.
enum AVAlphaMode alpha_mode
Indicates how the alpha channel of the video is represented.
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.
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
Number of audio samples to skip after a discontinuity.
AVRational framerate
Number of frames per second, for streams with constant frame durations.
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
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 frame size, if known.
int has_b_frames
Size of the frame reordering buffer in the decoder.
AVRational sample_aspect_ratio
The aspect ratio (width/height) which a single pixel should have when displayed.
int width
The width of the video frame in pixels.
@ 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.
int avcodec_parameters_to_context(AVCodecContext *codec, const struct AVCodecParameters *par)
Fill the codec context based on the values from the supplied codec parameters.
enum AVColorRange color_range
MPEG vs JPEG YUV range.
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
The channel layout and number of channels.
int level
Encoding level descriptor.
@ AVCOL_RANGE_UNSPECIFIED
int sample_rate
The number of audio samples per second.
int extradata_size
Size of the extradata content in bytes.
An AVChannelLayout holds information about the channel layout of audio data.
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t * dst
#define i(width, name, range_min, range_max)
enum AVSampleFormat sample_fmt
audio sample format
enum AVAlphaMode alpha_mode
Video with alpha channel only.
int profile
Codec-specific bitstream restrictions that the stream conforms to.
@ AVCHROMA_LOC_UNSPECIFIED
@ AVMEDIA_TYPE_UNKNOWN
Usually treated as AVMEDIA_TYPE_DATA.
AVCodecParameters * avcodec_parameters_alloc(void)
Allocate a new AVCodecParameters and set its fields to default values (unknown/invalid/0).
static void codec_parameters_reset(AVCodecParameters *par)
int bits_per_coded_sample
bits per sample/pixel from the demuxer (needed for huffyuv).
uint8_t * extradata
Out-of-band global headers that may be used by some codecs.
static int codec_parameters_copy_side_data(AVPacketSideData **pdst, int *pnb_dst, const AVPacketSideData *src, int nb_src)
int height
The height of the video frame in pixels.
int block_align
The number of bytes per coded audio frame, required by some formats.
enum AVChromaLocation chroma_sample_location
This defines the location of chroma samples.
enum AVColorRange color_range
Additional colorspace characteristics.
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
The order of the fields in interlaced video.
int avcodec_parameters_copy(AVCodecParameters *dst, const AVCodecParameters *src)
Copy the contents of src to dst.
int block_align
number of bytes per packet if constant and known or 0 Used by some WAV based audio codecs.
@ AVALPHA_MODE_UNSPECIFIED
Unknown alpha handling, or no alpha channel.
#define AV_INPUT_BUFFER_PADDING_SIZE
enum AVChromaLocation chroma_location
void avcodec_parameters_free(AVCodecParameters **par)
Free an AVCodecParameters instance and everything associated with it and write NULL to the supplied p...
int trailing_padding
Number of padding audio samples at the end.
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
Number of delayed frames.
int avcodec_parameters_from_context(struct 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).
enum AVPixelFormat sw_pix_fmt
Nominal unaccelerated pixel format, see AV_PIX_FMT_xxx.
int initial_padding
Number of padding audio samples at the start.
AVRational sample_aspect_ratio
sample aspect ratio (0 if unknown) That is the width of a pixel divided by the height of the pixel.