[−][src]Struct ffmpeg_sys_next::AVCodecParameters
This struct describes the properties of an encoded stream.
sizeof(AVCodecParameters) is not a part of the public ABI, this struct must be allocated with avcodec_parameters_alloc() and freed with avcodec_parameters_free().
Fields
codec_type: AVMediaTypeGeneral type of the encoded data.
codec_id: AVCodecIDSpecific type of the encoded data (the codec used).
codec_tag: u32Additional information about the codec (corresponds to the AVI FOURCC).
extradata: *mut u8Extra binary data needed for initializing the decoder, codec-dependent.
Must be allocated with av_malloc() and will be freed by avcodec_parameters_free(). The allocated size of extradata must be at least extradata_size + AV_INPUT_BUFFER_PADDING_SIZE, with the padding bytes zeroed.
extradata_size: c_intSize of the extradata content in bytes.
format: c_int- video: the pixel format, the value corresponds to enum AVPixelFormat.
- audio: the sample format, the value corresponds to enum AVSampleFormat.
bit_rate: i64The average bitrate of the encoded data (in bits per second).
bits_per_coded_sample: c_intThe number of bits per sample in the codedwords.
This is basically the bitrate per sample. It is mandatory for a bunch of formats to actually decode them. It's the number of bits for one sample in the actual coded bitstream.
This could be for example 4 for ADPCM For PCM formats this matches bits_per_raw_sample Can be 0
bits_per_raw_sample: c_intThis is the number of valid bits in each output sample. If the sample format has more bits, the least significant bits are additional padding bits, which are always 0. Use right shifts to reduce the sample to its actual size. For example, audio formats with 24 bit samples will have bits_per_raw_sample set to 24, and format set to AV_SAMPLE_FMT_S32. To get the original sample use "(int32_t)sample >> 8"."
For ADPCM this might be 12 or 16 or similar Can be 0
profile: c_intCodec-specific bitstream restrictions that the stream conforms to.
level: c_intwidth: c_intVideo only. The dimensions of the video frame in pixels.
height: c_intsample_aspect_ratio: AVRationalVideo only. The aspect ratio (width / height) which a single pixel should have when displayed.
When the aspect ratio is unknown / undefined, the numerator should be set to 0 (the denominator may have any value).
field_order: AVFieldOrderVideo only. The order of the fields in interlaced video.
color_range: AVColorRangeVideo only. Additional colorspace characteristics.
color_primaries: AVColorPrimariescolor_trc: AVColorTransferCharacteristiccolor_space: AVColorSpacechroma_location: AVChromaLocationvideo_delay: c_intVideo only. Number of delayed frames.
channel_layout: u64Audio only. The channel layout bitmask. May be 0 if the channel layout is unknown or unspecified, otherwise the number of bits set must be equal to the channels field.
channels: c_intAudio only. The number of audio channels.
sample_rate: c_intAudio only. The number of audio samples per second.
block_align: c_intAudio only. The number of bytes per coded audio frame, required by some formats.
Corresponds to nBlockAlign in WAVEFORMATEX.
frame_size: c_intAudio only. Audio frame size, if known. Required by some formats to be static.
initial_padding: c_intAudio only. The amount of padding (in samples) inserted by the encoder at the beginning of the audio. I.e. this number of leading decoded samples must be discarded by the caller to get the original audio without leading padding.
trailing_padding: c_intAudio only. The amount of padding (in samples) appended by the encoder to the end of the audio. I.e. this number of decoded samples must be discarded by the caller from the end of the stream to get the original audio without any trailing padding.
seek_preroll: c_intAudio only. Number of samples to skip after a discontinuity.
Trait Implementations
impl Clone for AVCodecParameters[src]
fn clone(&self) -> AVCodecParameters[src]
fn clone_from(&mut self, source: &Self)1.0.0[src]
impl Copy for AVCodecParameters[src]
impl Debug for AVCodecParameters[src]
impl Eq for AVCodecParameters[src]
impl PartialEq<AVCodecParameters> for AVCodecParameters[src]
fn eq(&self, other: &AVCodecParameters) -> bool[src]
fn ne(&self, other: &AVCodecParameters) -> bool[src]
impl StructuralEq for AVCodecParameters[src]
impl StructuralPartialEq for AVCodecParameters[src]
Auto Trait Implementations
impl RefUnwindSafe for AVCodecParameters
impl !Send for AVCodecParameters
impl !Sync for AVCodecParameters
impl Unpin for AVCodecParameters
impl UnwindSafe for AVCodecParameters
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T[src]
fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,