pub struct AnalysisConfidence {
pub bpm_confidence: f32,
pub key_confidence: f32,
pub grid_stability: f32,
pub overall_confidence: f32,
pub flags: Vec<AnalysisFlag>,
}Expand description
Analysis confidence scores
Fields§
§bpm_confidence: f32BPM confidence (0.0-1.0)
Based on:
- Method agreement (autocorrelation + comb filterbank)
- Peak prominence in period estimation
- Octave error handling
key_confidence: f32Key confidence (0.0-1.0)
Based on:
- Template matching score difference
- Key clarity (tonal strength)
- Chroma vector quality
grid_stability: f32Grid stability (0.0-1.0)
Based on:
- Beat grid consistency (coefficient of variation)
- Tempo variation detection
- Downbeat alignment
overall_confidence: f32Overall confidence (weighted average)
Weighted combination of BPM, key, and grid stability:
- BPM: 40% weight
- Key: 30% weight
- Grid: 30% weight
flags: Vec<AnalysisFlag>Confidence flags indicating specific issues
Implementations§
Source§impl AnalysisConfidence
impl AnalysisConfidence
Sourcepub fn is_high_confidence(&self) -> bool
pub fn is_high_confidence(&self) -> bool
Check if overall confidence is high (>= 0.7)
§Returns
true if overall confidence is high, false otherwise
Sourcepub fn is_low_confidence(&self) -> bool
pub fn is_low_confidence(&self) -> bool
Check if overall confidence is low (< 0.5)
§Returns
true if overall confidence is low, false otherwise
Sourcepub fn is_medium_confidence(&self) -> bool
pub fn is_medium_confidence(&self) -> bool
Check if overall confidence is medium (0.5-0.7)
§Returns
true if overall confidence is medium, false otherwise
Sourcepub fn confidence_level(&self) -> &'static str
pub fn confidence_level(&self) -> &'static str
Get a human-readable confidence level description
§Returns
String describing the confidence level: “High”, “Medium”, or “Low”
Trait Implementations§
Source§impl Clone for AnalysisConfidence
impl Clone for AnalysisConfidence
Source§fn clone(&self) -> AnalysisConfidence
fn clone(&self) -> AnalysisConfidence
Returns a duplicate of the value. Read more
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AnalysisConfidence
impl Debug for AnalysisConfidence
Source§impl<'de> Deserialize<'de> for AnalysisConfidence
impl<'de> Deserialize<'de> for AnalysisConfidence
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for AnalysisConfidence
impl RefUnwindSafe for AnalysisConfidence
impl Send for AnalysisConfidence
impl Sync for AnalysisConfidence
impl Unpin for AnalysisConfidence
impl UnwindSafe for AnalysisConfidence
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)