CamillaFIR 3.4.2 – Automatic Mode Refinement Update
This update focuses entirely on improving the behavior and stability of Automatic Mode.
No UI changes, no cosmetic additions — just search logic and decision model refinements.
The goal was simple: reduce “lucky” outliers and make the optimization more robust and repeatable.
---
### 1. Two-Phase Optimization with Plateau Detection
Automatic Mode now runs in two stages:
• Phase 1: broad parameter exploration
• Phase 2: refinement around the best-performing presets
If no improvement is detected for a defined number of rounds, the search automatically advances (or stops), instead of blindly consuming trials.
This reduces unnecessary runs and improves convergence consistency.
---
### 2. Target Curve Selection is Now Trial-Based
Built-in house curves (Harman variants, BK series, Studio, Cinema, Flat, etc.) are no longer selected purely by static curve matching.
Process now:
1. Pre-rank curves against the measured response
2. Select Top-N candidates
3. Run actual optimization trials for each
4. Choose winner based on full DSP scoring
Additionally, if a “milder” adjacent curve performs nearly the same (within defined rank and RMS tolerance), the algorithm prefers the milder option to avoid unnecessary LF emphasis.
This significantly reduces over-aggressive curve selection.
---
### 3. Measurement-Based Target Caching
If the same measurement is used again:
• Previously selected best target curve is reused
• Best preset is injected as search seed
• Optimization begins near known optimum
This improves repeatability and reduces warm-up variance between runs.
---
### 4. Improved LF (-6 dB) Estimation
The low-frequency extension estimate now:
• Uses smoothing
• Applies envelope tracking (monotonic LF envelope)
• Requires stable consecutive bins before accepting crossing
• Compares L/R and resolves disagreement conservatively
This avoids false early -6 dB detection caused by SBIR dips or sparse LF bins.
Effect: more realistic mag_c_min determination.
---
### 5. Revised Ranking Model
The scoring function was rebalanced to prevent single-metric domination.
Rank now considers:
• Acoustic score (with fallback path if AI score unavailable)
• Soft-knee net boost penalty (no hard 5 dB cliff anymore)
• DSP quality penalties (GD gradient, ripple, boundary artifacts)
• Pre-ringing / pre-energy metrics
• Reflection severity weighting
• L/R symmetry
• Excursion protection behavior
Each penalty has capped contribution to avoid collapse-to-zero behavior.
The net boost penalty now uses a smooth hinge instead of a hard threshold.
---
### 6. Excursion Protection Awareness
Automatic Mode now:
• Prefers presets where excursion protection remains active
• Penalizes LF boost inside excursion-guard region
• Reduces (but does not eliminate) excursion penalty when auto frequency detection is valid
This prevents selection of technically “good looking” filters that are mechanically risky.
---
### 7. Filter-Type Aware Search
Search space adapts depending on filter type:
Mixed phase:
• Optimizes mixed crossover frequency
Linear phase:
• Optimizes phase limit region
All modes respect bass-first logic and smoothing constraints.
---
If anyone wants to test edge cases:
• Strong SBIR null systems
• Large LF drivers with excursion limits
Feedback is welcome.
Disclaimer : AI was used to translate this text Finnish --> English