pub struct LoudnessMeter { /* private fields */ }Expand description
Measures EBU R128 integrated loudness, loudness range, and true peak.
Uses FFmpeg’s ebur128=metadata=1:peak=true filter graph internally.
The analysis is self-contained — no external decoder is required.
§Examples
ⓘ
use ff_filter::LoudnessMeter;
let result = LoudnessMeter::new("audio.mp3").measure()?;
println!("Integrated: {:.1} LUFS", result.integrated_lufs);
println!("LRA: {:.1} LU", result.lra);
println!("True peak: {:.1} dBTP", result.true_peak_dbtp);Implementations§
Source§impl LoudnessMeter
impl LoudnessMeter
Sourcepub fn new(input: impl AsRef<Path>) -> Self
pub fn new(input: impl AsRef<Path>) -> Self
Creates a new meter for the given audio or video file.
Sourcepub fn measure(self) -> Result<LoudnessResult, FilterError>
pub fn measure(self) -> Result<LoudnessResult, FilterError>
Runs EBU R128 loudness analysis and returns the result.
§Errors
FilterError::AnalysisFailed— input file not found, unsupported format, or the filter graph could not be constructed.
Auto Trait Implementations§
impl Freeze for LoudnessMeter
impl RefUnwindSafe for LoudnessMeter
impl Send for LoudnessMeter
impl Sync for LoudnessMeter
impl Unpin for LoudnessMeter
impl UnsafeUnpin for LoudnessMeter
impl UnwindSafe for LoudnessMeter
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more