Breath Config
data class BreathConfig(val featureRate: Float = 30.0f, val tauRise: Float = 8.0f, val tauFall: Float = 0.4f, val sigmoidK: Float = 0.3f, val sigmoidM: Float = 10.0f, val minUnvoicedDuration: Float = 0.1f, val controlThreshold: Float = 0.55f, val lofNeighbors: Int = 25, val minAlignmentDuration: Float = 6.0f, val peakTimeTolerance: Float = 0.5f, val peakAmplitudeTolerance: Float = 0.3f, val alignmentSnippets: Int = 6, val alignmentSnippetDuration: Int = 5)
Configuration for breath analysis.
Follows ADR-001 3-tier pattern: companion presets + Builder + .copy().
Constructors
Link copied to clipboard
constructor(featureRate: Float = 30.0f, tauRise: Float = 8.0f, tauFall: Float = 0.4f, sigmoidK: Float = 0.3f, sigmoidM: Float = 10.0f, minUnvoicedDuration: Float = 0.1f, controlThreshold: Float = 0.55f, lofNeighbors: Int = 25, minAlignmentDuration: Float = 6.0f, peakTimeTolerance: Float = 0.5f, peakAmplitudeTolerance: Float = 0.3f, alignmentSnippets: Int = 6, alignmentSnippetDuration: Int = 5)
Types
Properties
Link copied to clipboard
Duration of each snippet (seconds) for cross-correlation
Link copied to clipboard
Number of random snippets for cross-correlation estimation
Link copied to clipboard
Amplitude threshold for peak detection in breath comparison
Link copied to clipboard
Resampling rate in Hz for breath analysis (Python SSOT: 30 Hz)
Link copied to clipboard
Number of neighbors for LOF phrase outlier detection
Link copied to clipboard
Minimum breath function length (seconds) for cross-correlation comparison
Link copied to clipboard
Minimum gap duration (seconds) to treat as a real pause
Link copied to clipboard
Maximum amplitude ratio difference for matching peaks (0.3 = 30%)
Link copied to clipboard
Maximum time offset (seconds) for matching ref/student peaks