Struct AVFilmGrainH274Params
#[repr(C)]pub struct AVFilmGrainH274Params {Show 15 fields
pub model_id: i32,
pub bit_depth_luma: i32,
pub bit_depth_chroma: i32,
pub color_range: u32,
pub color_primaries: u32,
pub color_trc: u32,
pub color_space: u32,
pub blending_mode_id: i32,
pub log2_scale_factor: i32,
pub component_model_present: [i32; 3],
pub num_intensity_intervals: [u16; 3],
pub num_model_values: [u8; 3],
pub intensity_interval_lower_bound: [[u8; 256]; 3],
pub intensity_interval_upper_bound: [[u8; 256]; 3],
pub comp_model_value: [[[i16; 6]; 256]; 3],
}
Expand description
This structure describes how to handle film grain synthesis for codecs using the ITU-T H.274 Versatile suplemental enhancement information message.
@note The struct must be allocated as part of AVFilmGrainParams using av_film_grain_params_alloc(). Its size is not a part of the public ABI.
Fields§
§model_id: i32
Specifies the film grain simulation mode. 0 = Frequency filtering, 1 = Auto-regression
bit_depth_luma: i32
Specifies the bit depth used for the luma component.
@deprecated use AVFilmGrainParams.bit_depth_luma.
bit_depth_chroma: i32
Specifies the bit depth used for the chroma components.
@deprecated use AVFilmGrainParams.bit_depth_chroma.
color_range: u32
Specifies the video signal characteristics.
@deprecated use AVFilmGrainParams.color_{range,primaries,trc,space}.
color_primaries: u32
§color_trc: u32
§color_space: u32
§blending_mode_id: i32
Specifies the blending mode used to blend the simulated film grain with the decoded images.
0 = Additive, 1 = Multiplicative
log2_scale_factor: i32
Specifies a scale factor used in the film grain characterization equations.
component_model_present: [i32; 3]
Indicates if the modelling of film grain for a given component is present.
num_intensity_intervals: [u16; 3]
Specifies the number of intensity intervals for which a specific set of model values has been estimated, with a range of [1, 256].
num_model_values: [u8; 3]
Specifies the number of model values present for each intensity interval in which the film grain has been modelled, with a range of [1, 6].
intensity_interval_lower_bound: [[u8; 256]; 3]
Specifies the lower ounds of each intensity interval for whichthe set of model values applies for the component.
intensity_interval_upper_bound: [[u8; 256]; 3]
Specifies the upper bound of each intensity interval for which the set of model values applies for the component.
comp_model_value: [[[i16; 6]; 256]; 3]
Specifies the model values for the component for each intensity interval.
- When model_id == 0, the following applies: For comp_model_value[y], the range of values is [0, 2^bit_depth_luma - 1] For comp_model_value[cb..cr], the range of values is [0, 2^bit_depth_chroma - 1]
- Otherwise, the following applies: For comp_model_value[y], the range of values is [-2^(bit_depth_luma - 1), 2^(bit_depth_luma - 1) - 1] For comp_model_value[cb..cr], the range of values is [-2^(bit_depth_chroma - 1), 2^(bit_depth_chroma - 1) - 1]
Trait Implementations§
§impl Clone for AVFilmGrainH274Params
impl Clone for AVFilmGrainH274Params
§fn clone(&self) -> AVFilmGrainH274Params
fn clone(&self) -> AVFilmGrainH274Params
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more