Expand description
The export graph: one validated signal chain with its MIMO paths and the topology every export writer shares (docs/ARCHITECTURE.md §4).
Building an ExportGraph is the only validation of a SignalChain
and its MimoPaths. The CamillaDSP writer (secs-camilla), the
filter-text and Equalizer APO writers and the FIR support renderer
(secs-filters) read the graph and serialise it. A check that belongs to
one writer only (CamillaDSP options, a filter run’s label and stamp, the
renderer’s block geometry) stays with that writer.
Upstream sources: export_filters.make_plan for the FilterPlan, and
the input rules both export_camilladsp.py and export_filters.py
assumed without checking.
Modules§
- design
- Stable identity for one exported correction design.
- files
- File helpers every export writer shares: the FIR WAV bytes, the upstream filename sanitiser and the staged bundle install (#92 TD-22, TD-45).
Structs§
- Export
Graph - A validated signal chain with its MIMO paths and the topology every export writer shares: inputs, outputs, per-role operations, sub feeds, MIMO feeds and support groups. Building it is the only validation.
- Filter
Plan - The complete export plan, with every map represented as an ordered vector.
- Mimo
Feed - One MIMO support feed.
- SubFeed
- One subwoofer bus output, preserving upstream insertion order.
- Support
Group - MIMO support paths that feed one output through the same protective high-pass and filter family, so a writer may apply that high-pass (and an IIR family’s Fsiso low-pass) once, after their sum (F13).
Enums§
- FirView
- One FIR of a plan, borrowed: collecting export files never clones stored FIR arrays.
- Graph
Error - Why a chain and its MIMO paths cannot be exported. Each message names
the offending field the way the writers’ messages did, for example
main.L.delay_msormimo.paths[2].taps_low. - LfeChoice
- The LFE input the export includes, as upstream’s
make_plantakes it. - Op
- One filter-plan operation.
fixedmarks a fixed subwoofer filter.
Constants§
- LFE_
GAIN_ DB - Upstream Dolby LFE playback gain.
- LFE_
LP_ HZ - Upstream Dolby LFE content low-pass frequency.
- SAMPLE_
RATE - Sample rate of every exported FIR and delay.
Functions§
- headroom_
db - Largest non-LFE output boost from 20 Hz through 20 kHz.
- is_
negative_ delay - Whether a delay is negative at the writers’ resolution: below zero after the half-to-even rounding to whole 48 kHz samples. A smaller negative value is float noise that every writer emits as no delay (#92 TD-94).
- plan_
responses - Compute electrical responses from one input to every reachable output.
- round_
ties_ even_ i64 - Python/NumPy half-even rounding to an integer.