Changelog
Unreleased
- 2026-10-07 — cli: Pinned with tests that
sd docs bundlewrites the archive of the checkout and reads the XML folder of the Doxyfile (cli/tests/test_cli_surface.py). - 2026-10-07 — docs: Excluded the Doxygen main page from the published pages and passed secrets to the called CI (
docs/publish.toml,.github/workflows/release.yml). - 2026-10-07 — ci: Added the release job that builds the documentation bundle after CI and attaches it to the tag’s release (
.github/workflows/release.yml,ci.yml). - 2026-10-07 — cli: Added
sd docs bundle, madedocsa command group registered from SushiCore, and added the publish list (cli/sushidsp/cli.py,docs/publish.toml,Doxyfile). - 2026-10-07 — docs: Added the frequently asked questions page (
docs/guides/FAQ.md). - 2026-10-07 — log: Added the logger and logged the handled failures that were dropped (
include/SushiDSP/log/,TrackRecorder.cpp,RoomNode.cpp,SlotGraph.cpp,DirectoryListing.cpp). - 2026-10-07 — licence: Named Mustafa Garip and Sushi Systems as the copyright holders in the licence and notice files (
LICENSE,NOTICE.md). - 2026-10-06 — licence: Restored the three-section license box and named both holders in the copyright line of every source file (
tools/licensing/write_license_block.py,tools/documentation/check_source_comments.py). - 2026-10-05 — build: Skipped the GUI when the SDL2 backend is off and linked OpenGL through
OpenGL::GL, so a configure withSUSHIDSP_BUILD_SDL2=OFFno longer fails (CMakeLists.txt,apps/host_gui/CMakeLists.txt). - 2026-10-05 — docs: Moved design reasoning out of source comments into module and folder READMEs and gave every source file its file block (
modules/,apps/,include/,src/,tests/). - 2026-10-05 — docs: Indexed every manual page, repointed the module READMEs’ links, archived the standards phase 1 work folder and copied the SushiSkills tools (
docs/README.md,modules/,docs/archive/agent/,tools/). - 2026-10-05 — cli: Moved the host GUI launch to
sd host, a baresd runstaying its hidden alias until 2027-03-25 (cli/sushidsp/cli.py,services/project.py). - 2026-10-05 — cli: Made
sd run TARGETrun any built executable (cli/sushidsp/cli.py,services/project.py). - 2026-10-05 — cli: Renamed
sd doxygentosd docs, the old word staying as a hidden alias until 2027-03-25 (cli/sushidsp/cli.py,cli/sushidsp/aliases.py). - 2026-10-05 — cli: Added –version, –describe, sd clean and sd test –filter, and took config, env and the entry point from sushicore (
cli/sushidsp/cli.py,services/diag.py,services/project.py). - 2026-10-05 — cli: Fixed
sd build -D, which a configured tree ignored, and madesd hostbuild the requested type before launching the host GUI (cli/sushidsp/services/project.py). - 2026-10-05 — cli: Reported a locked build tree and a missing host GUI as one error line, and ran
sd check,sd hostandsd runthrough the shared runner (cli/sushidsp/services/project.py). - 2026-10-05 — docs: Added the CLI’s own README and corrected the sushicore floor and the API reference path (
cli/README.md,README.md,COMMAND_LINE_INTERFACE.md,INTRODUCTION.md). - 2026-10-05 — licence: Replaced Apache-2.0 with PolyForm Noncommercial 1.0.0 and renamed NOTICE (
LICENSE,COMMERCIAL.md,NOTICE.md,README.md,docs/CONTRIBUTING.md). - 2026-10-04 — cli: Took the help panel of the provision commands from sushicore and required sushicore 0.7.0 (
cli/sushidsp/cli.py,cli/pyproject.toml).
v0.1.0 — 2026-10-03
-
2026-10-03 — docs: Folded the untagged v0.1.0, v0.2.0 and v0.3.0 headings into Unreleased (
CHANGELOG.md,docs/archive/changelog/). -
2026-10-03 — ci: Removed the Python CLI job (
.github/workflows/ci.yml,README.md). -
2026-10-03 — docs: Repointed the cited paths that no longer resolve to the archive or the renamed spec (
CONTRIBUTING.md,OVERVIEW.md,KNOWN_ISSUES.md). -
2026-09-25 — cli: Grouped sd’s help under Build, Application and Environment panels with per-command examples (
cli/sushidsp/cli.py,test_help_screen.py). -
2026-09-24 — cli: Replaced sd’s own setup with sushicore’s shared setup, doctor, link and unlink (
cli/sushidsp/cli.py,cli/sushidsp/config.py). -
2026-09-23 — room: Refused an HRTF grid with directions under 1 degree apart or a degenerating hull (
HrtfSet.cpp). -
2026-09-23 — room: Shipped the SADIE II KU100 HRTF set, thinned to 1531 directions, and bounded its two tests by measurement (
sadie2_ku100_48k.hrtf,convert_hrtf.py,test_room_node.cpp). -
2026-09-23 — host_gui: Started amplifier slots without a cabinet silently when no bundled IR is present (
main.cpp,apply_default_cabinet). -
2026-09-23 — room: Added the built room’s per-band surface loss, on in the starter scene, saved and toggled in the panel (
BuiltRoomLoss.hpp,RoomScene,RigPersistence.cpp,RoomPanel.cpp). -
2026-09-23 — tools: Added the BRAS CR2 reference tool, its figures and the test comparing them against the module (
tools/dsp/bras_reference.py,tests/fixtures/bras_cr2_reference.csv,test_room_bras.cpp). -
2026-09-23 — room: Delayed the dry side of
mixto the ears’ alignment frame (RoomNode.cpp,write_outputs). -
2026-09-22 — tools: Added the Motus reference tool, its figures and the test comparing them against the module (
tools/dsp/motus_reference.py,tests/fixtures/motus_reference.csv,tests/functional/unit/test_room_motus.cpp). -
2026-09-22 — host: Gave the room panel a furnishing list and a patch editor under Shell, Finishes and Furnishings (
apps/host_gui/ui/RoomPanel.cpp,ui/FurnishingList.cpp,ui/PatchList.cpp). -
2026-09-22 — room: Loaded
starter_scene()into a fresh room slot in place of the bare reference room (StarterScene.cpp,RoomNode.cpp,apps/host_gui/SlotGraph.cpp). -
2026-09-22 — room: Added nine material rows: painted plaster, tile, parquet, a wood panel, two windows, a wooden door, thin carpet and two curtains (
Materials.cpp). -
2026-09-22 — room: Bounded a scene’s furnishings and its patches in the validator, furniture counting against the 12 s decay gate (
RoomScene.cpp). -
2026-09-22 — room: Fed the air’s coefficient and the furnishings’ through one seam into the decay, the reflected taps and the modes (
MediumAbsorption.cpp,EyringDecay.cpp,ImageSourceSolver.cpp,ModalSolver.cpp). -
2026-09-22 — room: Made a curtain and a rug material rows a scene carries as patches instead of furniture rows (
Materials.cpp,Furniture.cpp). -
2026-09-22 — room: Added the furniture table, an equivalent absorption area per item and octave band with a citation per row (
Furniture.hpp,Furniture.cpp,RoomScene.cpp). -
2026-09-22 — host: Kept the main path and copied it into every path a chain change opens (
apps/host_gui/RigTopology.cpp,TopologyApplier.cpp). -
2026-09-22 — host: Gave the timeline tracks that can be added, removed and coloured (
apps/host_gui/SessionTimeline.cpp,ui/ArrangementView.cpp). -
2026-09-22 — host: Sized the gear browser’s view toggle to its captions and centred every tab’s label (
apps/host_gui/ui/GearBrowser.cpp). -
2026-09-22 — host: Fixed the gear and transport panes, leaving the rig’s own boundary draggable (
apps/host_gui/ui/Divider.cpp,main.cpp). -
2026-09-22 — tests: Timed the three amplifier nodes the benchmark had never covered (
tests/benchmark/main.cpp). -
2026-09-22 — docs: Wrote the standalone host’s README (
apps/host_gui/README.md). -
2026-09-22 — cli: Added
sd setup, which provisions this checkout throughhub installin a workspace and from its own fragment outside one (cli/sushidsp/services/setup.py). -
2026-09-22 — build: Declared the module to
hubin a manifest that needs no catalog entry (sushi-module.toml). -
2026-09-22 — build: Wrote the dependency fragment as one table per dependency (
cli/sushistack.deps.toml). -
2026-09-22 — cli: Took
sushicorefrom PyPI instead of a sibling checkout (cli/pyproject.toml). -
2026-09-21 — docs: Repointed thirty-eight cited paths that the archive move and the rig controller’s split had left dangling (
docs/,modules/). -
2026-09-21 — circuits: Moved each amplifier’s power-tube preset into the module that uses it (
include/SushiDSP/circuits/stages/PowerTubePresets.hpp). -
2026-09-21 — tests: Made the panel and pentode tests read the registry instead of naming products (
tests/functional/unit/test_panel_library.cpp). -
2026-09-21 — room: Split the room node along the signal path into a modal, a geometric and a binaural brick (
modules/nodes/room/). -
2026-09-21 — circuits: Extracted the Miller grid capacitance, the inverter preset, the audio taper and the output clamp the amplifier modules duplicated (
include/SushiDSP/circuits/). -
2026-09-21 — core: Gave every node one parameter table feeding its descriptor and both dispatches (
include/SushiDSP/core/ParameterTable.hpp). -
2026-09-21 — host_gui: Split the rig controller into a slot graph, a session timeline and a preset codec it forwards to (
apps/host_gui/SlotGraph.cpp,apps/host_gui/SessionTimeline.cpp,apps/host_gui/RigPersistence.cpp). -
2026-09-21 — core: Renamed both
set_parameteroverloads to name the thread they belong to (include/SushiDSP/core/IAudioNode.hpp). -
2026-09-21 — math: Moved the generated resampler kernel table out of the public headers (
include/SushiDSP/math/ResamplerDesign.hpp,src/math/ResamplerKernel.hpp). -
2026-09-21 — modules: Grouped the twelve modules into the nodes, catalog and session tiers (
modules/,tools/layering/check_layering.py). -
2026-09-21 — docs: Rewrote the front door around what the models rest on (
README.md). -
2026-09-21 — docs: Moved the code of conduct and the security policy where GitHub reads them (
.github/). -
2026-09-21 — docs: Added issue templates for a defect and for a model disagreeing with its circuit (
.github/ISSUE_TEMPLATE/). -
2026-09-21 — docs: Added a pull request template carrying the repository’s verification rules (
.github/PULL_REQUEST_TEMPLATE.md). -
2026-09-21 — build: Declared the project version 0.1.0 (
CMakeLists.txt). -
2026-09-21 — ci: Installed the CLI from its own metadata instead of checking out SushiStack (
.github/workflows/ci.yml). -
2026-09-21 — docs: Repointed seven module READMEs at the archived specs and dossiers (
modules/). -
2026-09-21 — docs: Added NOTICE with the attribution, trademark and third-party terms (
NOTICE,README.md). -
2026-09-21 — tools: Added the Apache header to the nineteen Python files that lacked one (
tools/,cli/). -
2026-09-21 — mesa_mark2c: Added PULL BRIGHT, PULL DEEP and the equaliser’s three-position switch (
modules/nodes/mesa_mark2c/src/MesaMark2c.cpp). -
2026-09-21 — mesa_mark2c: Derived the descriptor’s parameter count from its own table (
modules/nodes/mesa_mark2c/src/MesaMark2c.cpp). -
2026-09-21 — host_gui: Placed the Mark IIC+’s three panel switches (
apps/host_gui/ui/PanelLibrary.cpp). -
2026-09-21 — mesa_mark2c: Rebuilt coefficients once per 32-frame control period instead of once per block (
modules/nodes/mesa_mark2c/src/MesaMark2c.cpp). -
2026-09-21 — mesa_mark2c: Corrected the power tubes’ source resistance to the real inverter’s plate impedance (
include/SushiDSP/circuits/stages/PowerTubePresets.hpp). -
2026-09-21 — mesa_mark2c: Retired every JCM800 citation from the Mark IIC+’s constants (
modules/nodes/mesa_mark2c/src/MesaMark2c.cpp). -
2026-09-21 — tests: Added a guard that the Mark IIC+ falls silent at every presence position (
tests/functional/unit/test_mesa_mark2c.cpp). -
2026-09-21 — mesa_mark2c: Set the feedback loop’s depth to the deepest that does not ring, 14.0 (
modules/nodes/mesa_mark2c/src/MesaMark2c.cpp). -
2026-09-21 — tests: Regenerated the Mark IIC+ golden files after the feedback loop closed (
tests/golden/mesa_mark2c_48k.f32,tests/golden/mesa_mark2c_96k.f32). -
2026-09-21 — docs: Recorded the measured forward gain and the oscillation that blocks the loop’s calibration (
docs/design/REMAINING_WORK.md). -
2026-09-20 — circuits: Rebuilt the FMV tone stack on a DK netlist, retiring its hand-derived closed form (
src/circuits/FmvToneStack.cpp,include/SushiDSP/circuits/FmvToneStack.hpp). -
2026-09-20 — circuits: Added source and load termination to the FMV tone stack (
include/SushiDSP/circuits/FmvToneStack.hpp). -
2026-09-20 — math: Added the shared empty nonlinear port for linear DK blocks (
include/SushiDSP/math/dk/LinearPort.hpp). -
2026-09-20 — mesa_mark2c: Terminated the tone stack with V1A’s plate impedance and Volume 1 (
modules/nodes/mesa_mark2c/src/MesaMark2cToneStack.cpp). -
2026-09-20 — tests: Regenerated the Mark IIC+ golden files after the tone stack was terminated (
tests/golden/mesa_mark2c_48k.f32,tests/golden/README.md). -
2026-09-20 — tools: Fixed module discovery to read modules as the folders carrying a build (
tools/documentation/check_docs_layout.py,tools/layering/check_layering.py). -
2026-09-20 — docs: Listed every Mark IIC+ constant that is not read off the schematic (
modules/nodes/mesa_mark2c/README.md,docs/design/REMAINING_WORK.md). -
2026-09-20 — mesa_mark2c: Corrected two graphic-equaliser band centres against the traced schematic (
modules/nodes/mesa_mark2c/src/MesaMark2c.cpp). -
2026-09-20 — docs: Recorded what jrb32’s traced schematic settles about the Mark IIC+ (
docs/agent/2026_09_20_V0_1_0_RELEASE/REPORT.md). -
2026-09-20 — circuits: Added the long-tailed pair phase inverter, two grids in and two plates out (
include/SushiDSP/circuits/stages/LongTailedPair.hpp). -
2026-09-20 — circuits: Added the power amplifier’s feedback leg as a DK netlist (
include/SushiDSP/circuits/PowerAmpFeedback.hpp). -
2026-09-20 — mesa_mark2c: Replaced the presence shelf with the traced feedback loop into the inverter’s second grid (
modules/nodes/mesa_mark2c/src/MesaMark2c.cpp). -
2026-09-20 — mesa_mark2c: Corrected the inverter’s plate loads and tail against the traced schematic (
modules/nodes/mesa_mark2c/src/MesaMark2c.cpp). -
2026-09-16 — cli: Added the sd run command to launch the standalone host GUI directly (
cli.py,project.py). -
2026-09-16 — tools: Added canonical checkers and the sd check command (
check_docs_layout.py,check_changelog.py,check_layering.py). -
2026-09-14 — host_gui: Added chain-type model and compiler into rig edges (
apps/host_gui/RigTopology.cpp,apps/host_gui/TopologyApplier.cpp). -
2026-09-14 — host_gui: Added slot snapshots and edge access to the rig controller (
apps/host_gui/RigController.cpp). -
2026-09-14 — host_gui: Replaced chain strip and splitter picker with chain rail and routed chain view (
apps/host_gui/ui/RigChainView.cpp,apps/host_gui/ui/SplitLayout.cpp). -
2026-09-14 — host_gui: Rebuilt host window as one resizable workspace with bottom transport bar (
apps/host_gui/main.cpp,apps/host_gui/ui/Divider.cpp,apps/host_gui/ui/TransportBar.cpp). -
2026-09-14 — host_gui: Added tabs and grid view to the gear browser (
apps/host_gui/ui/GearBrowser.cpp,apps/host_gui/ui/GearFilter.cpp). -
2026-09-10 — cabinet: Added sushidsp.cabinet and retired the amp-embedded cabinet path (
modules/cabinet,modules/jcm800,modules/peavey5150,modules/diezel_vh4,modules/mesa_mark2c). -
2026-09-10 — docs: Added remaining work backlog tracking open items (
docs/design/REMAINING_WORK.md,docs/README.md). -
2026-09-10 — docs: Added documentation skeleton for style guide and manual (
docs/DOCUMENTATION_STYLE_GUIDE.md,docs/getting_started/,docs/architecture/,docs/guides/,docs/archive/). -
2026-09-10 — build: Added compiler warnings, opt-in sanitizers and build presets (
cmake/CompilerWarnings.cmake,cmake/Sanitizers.cmake,CMakePresets.json). -
2026-09-10 — room: Fixed tail handover to use crossover time on shortest delay line (
LateReverbDesign.cpp,FdnDesign.hpp). -
2026-09-10 — tests: Added absolute-level test reading reciprocal distance on cabinet axis (
tests/functional/unit/test_room_node.cpp). -
2026-09-10 — docs: Documented room path in design, module and reference documentation (
modules/nodes/room/README.md,docs/reference/KNOWN_ISSUES.md). -
2026-09-10 — room: Added decay gate refusing scenes whose mean absorption misses 12 s floor (
RoomScene.hpp,RoomScene.cpp). -
2026-09-10 — room: Furnished default scene with gypsum board and carpeted floor (
RoomScene.hpp). -
2026-09-10 — host_gui: Rebuilt host window into AmpliTube-5 layout and centered device panel (
apps/host_gui/main.cpp,apps/host_gui/ui/SplitLayout.cpp). -
2026-09-10 — host_gui: Added fourteen UI units separating layout math from ImGui rendering (
apps/host_gui/ui/). -
2026-09-10 — host_gui: Added per-slot bypass collapsing bypassed slots without exceeding fan-in limits (
RigController.cpp). -
2026-09-10 — core: Added empty-graph check to allow host passthrough during full bypass (
RigGraph.hpp,RigGraph.cpp). -
2026-09-10 — host_gui: Added parallel path routing and automatic mixer creation for split branches (
RigController.cpp). -
2026-09-10 — host_gui: Added file browser for selecting cabinet impulse responses at runtime (
DirectoryListing.cpp,FileBrowser.cpp). -
2026-09-10 — host_gui: Moved audio device selection into a runtime dialog (
apps/host_gui/ui/DeviceSettings.cpp). -
2026-09-10 — build: Enabled compile commands export for single translation unit checking (
CMakeLists.txt). -
2026-09-09 — room: Added
RoomSceneshoebox model with per-face absorption (RoomScene.hpp,RoomScene.cpp). -
2026-09-09 — room: Added
EarlyReflectionRendererfor 128 fractional taps into 16 Ambisonic channels (EarlyReflectionRenderer.hpp,EarlyReflectionRenderer.cpp). -
2026-09-09 — room: Added
LateReverb16-line Hadamard feedback delay network (LateReverb.hpp,LateReverb.cpp). -
2026-09-09 — room: Added
ModalBankwith up to 512 second-order resonators (ModalBank.hpp,ModalBank.cpp). -
2026-09-09 — room: Added
SphericalHeadHrtfrigid-sphere model for fallback binaural rendering (SphericalHeadHrtf.hpp,SphericalHeadHrtf.cpp). -
2026-09-09 — room: Added
HrtfSetLoaderstandard-library binary asset loader (HrtfSetLoader.hpp,HrtfSetLoader.cpp). -
2026-09-09 — room: Added
BinauralDecodermapping 16 Ambisonic channels to binaural outputs (BinauralDecoder.hpp,BinauralDecoder.cpp). -
2026-09-09 — room: Added
EyringDecaydecay time and Schroeder frequency calculations (EyringDecay.hpp,EyringDecay.cpp). -
2026-09-09 — room: Added
ImageSourceSolverconverting shoebox scenes into early reflection taps (ImageSourceSolver.hpp,ImageSourceSolver.cpp). -
2026-09-09 — room: Added
LateReverbDesignfeedback delay network parameter synthesis (LateReverbDesign.hpp,LateReverbDesign.cpp). -
2026-09-09 — room: Added
ModalSolvereigenmode resonance calculation below Schroeder frequency (ModalSolver.hpp,ModalSolver.cpp). -
2026-09-09 — docs: Corrected drafted absorption areas, arrival roundings, modal coefficients, tail lengths and sphere shadow against code (
docs/archive/superpowers/plans/2026-09-08-room-acoustics.md). -
2026-09-09 — room: Made tail coherence pair complementary rather than fitted (
FdnDesign.hpp,LateReverbDesign.hpp). -
2026-09-09 — room: Added render set synthesis and host interface for audio thread (
RoomRenderSet.hpp,RoomRenderSet.cpp,IRoomHost.hpp). -
2026-09-09 — room: Made
SphericalHeadHrtfpopulate diffuse-field pairs (SphericalHeadHrtf.cpp). -
2026-09-09 — docs: Recorded unweighted diffuse-field averaging in known issues (
docs/reference/KNOWN_ISSUES.md,tools/dsp/convert_hrtf.py). -
2026-09-09 — room: Added
RoomNoderendering early reflections and reverb tail with raised-cosine crossfade (RoomNode.hpp,RoomNode.cpp,NodeRegistry.cpp). -
2026-09-09 — room: Carried tap filter states across crossfades to prevent filter transients (
EarlyReflectionRenderer.hpp,RoomNode.cpp). -
2026-09-09 — room: Added peaking section seeding to band response fit for dip support (
BandResponseFit.hpp,modules/nodes/room/README.md). -
2026-09-09 — room: Averaged cabinet closed form over octave bands and cached index grid (
CabinetDirectivity.hpp,modules/nodes/room/README.md). -
2026-09-09 — docs: Corrected room wall-clock figures measured on debug binaries (
2026-09-08-room-acoustics.md,2026-09-08-room-acoustics-design.md). -
2026-09-09 — room: Ran modal layer below Schroeder frequency under crossover across quality modes (
RoomNode.cpp,ModalBank.hpp,CrossoverPair.hpp). -
2026-09-09 — room: Rendered listener parameter updates and read standing waves at receiver (
RoomNode.cpp,ModalSolver.hpp). -
2026-09-09 — room: Rendered binaural ears through HRIR pair, decoder and diffuse filter (
RoomNode.cpp,SphericalHeadHrtf.hpp). -
2026-09-09 — docs: Corrected seam handover and tone-correction documentation (
docs/reference/KNOWN_ISSUES.md). -
2026-09-09 — room: Moved modal receiver position into solver listener arguments (
ModalSolver.cpp,RoomNode.cpp). -
2026-09-09 — room: Scaled modal layer and tail to single diffuse-field reference (
DiffuseField.hpp,ModalSolver.cpp,LateReverbDesign.cpp). -
2026-09-09 — room: Made seam split a power-complementary fourth-order Butterworth pair (
CrossoverPair.hpp,docs/reference/KNOWN_ISSUES.md). -
2026-09-09 — host_gui: Added room acoustics front panel and 30 Hz control pacing (
apps/host_gui/ui/RoomPanel.cpp,apps/host_gui/RigController.cpp,apps/host_gui/main.cpp). -
2026-09-09 — bench: Benchmarked room steady state, swap blocks and constituent kernels (
tests/benchmark/main.cpp). -
2026-09-09 — docs: Documented arrangement view in capture module readme and glossary (
modules/nodes/capture/README.md,docs/reference/GLOSSARY.md). -
2026-09-08 — room: Added
BandResponseoctave-band gains and arithmetic (modules/nodes/room/include/SushiDSP/room/BandResponse.hpp). -
2026-09-08 — room: Added SADIE II conversion script and HRTF set loader layout (
tools/dsp/convert_hrtf.py,assets/hrtf/README.md). -
2026-09-08 — room: Added
Materialsabsorption tables and reflection factors (Materials.hpp,Materials.cpp). -
2026-09-08 — room: Added
AirAbsorptionatmospheric absorption calculations (AirAbsorption.hpp,AirAbsorption.cpp). -
2026-09-08 — room: Added
BandResponseFitbiquad fitting for octave bands (BandResponseFit.hpp,BandResponseFit.cpp). -
2026-09-08 — room: Added
CabinetDirectivityfour-piston baffle model (CabinetDirectivity.hpp,CabinetDirectivity.cpp). -
2026-09-08 — room: Added
MicrophoneModelfirst-order polar patterns and proximity effect (MicrophoneModel.hpp,MicrophoneModel.cpp). -
2026-09-08 — room: Added early-tap, FDN and modal design records published by control thread (
EarlyTapSet.hpp,FdnDesign.hpp,ModalDesign.hpp). -
2026-09-08 — room: Added
CrossoverPairSchroeder frequency phase-aligned crossover (CrossoverPair.hpp,CrossoverPair.cpp). -
2026-09-08 — room: Added
HrtfSetminimum-phase HRIR dataset and interpolation (HrtfSet.hpp,HrtfSet.cpp). -
2026-09-08 — room: Added
AmbisonicEncoderthird-order spherical harmonics encoder (AmbisonicEncoder.hpp,AmbisonicEncoder.cpp). -
2026-09-08 — docs: Corrected self-test asset size to 37 968 bytes and band-fit budget to 4.33 ms (
docs/archive/superpowers/plans/2026-09-08-room-acoustics.md). -
2026-09-08 — capture: Added
MusicalClockframe to bar-and-beat fixed-point map (modules/nodes/capture/include/SushiDSP/capture/MusicalClock.hpp,MusicalClock.cpp). -
2026-09-08 — capture: Added
TakeLibrarycontrol-thread audio take container (TakeLibrary.hpp,TakeLibrary.cpp). -
2026-09-08 — capture: Added
VariRateReaderresampling take playback between 0.5x and 2.0x (VariRateReader.hpp,VariRateReader.cpp). -
2026-09-08 — capture: Added playback speed support to
Transport(Transport.hpp,Transport.cpp). -
2026-09-08 — host_gui: Added
FileDropQueuefor GUI thread drag-and-drop handoff (apps/host_gui/FileDropQueue.hpp,FileDropQueue.cpp). -
2026-09-08 — capture: Added
Metronomebeat generation on monitor audio path (Metronome.hpp,Metronome.cpp). -
2026-09-08 — capture: Added
TrackTimelinesorted clip playback with de-click ramps (TrackTimeline.hpp,TrackTimeline.cpp). -
2026-09-08 — host_gui: Added
ui::TimelineScaleframe-to-pixel coordinate mapper (apps/host_gui/ui/TimelineScale.hpp,TimelineScale.cpp). -
2026-09-08 — capture: Made
TrackPlayermix clip timelines at transport playback speed (TrackPlayer.hpp,TrackPlayer.cpp). -
2026-09-08 — host_gui: Added clip placement and tempo tracking to rig controller (
RigController.hpp,RigController.cpp). -
2026-09-08 — capture: Aligned take recording and re-amping frame timing (
RigController.cpp,tests/functional/unit/test_rig_controller.cpp). -
2026-09-08 — host_gui: Saved transport playback speed in session preset JSON (
RigController.cpp). -
2026-09-08 — host_gui: Added arrangement timeline view, takes browser and directory listing (
apps/host_gui/ui/ArrangementView.cpp,FileBrowser.cpp). -
2026-09-08 — host_gui: Split transport bar into two rows with tempo tapping and speed slider (
apps/host_gui/ui/TransportBar.cpp,TapTempo.cpp). -
2026-09-08 — host_gui: Integrated arrangement rendering and file drop handling in host window (
apps/host_gui/main.cpp). -
2026-09-08 — capture: Vendored dr_mp3 0.7.3 single-header audio decoder (
third_party/dr_libs/). -
2026-09-08 — capture: Added worker-thread MP3 import and float32 WAV caching (
Mp3Decoder.cpp,ChannelResampler.cpp,AudioImportCache.cpp). -
2026-09-08 — circuits: Added
AntiderivativeAntialiaserfirst-order ADAA stage transfer (AntiderivativeAntialiaser.hpp). -
2026-09-08 — circuits: Added double-precision bounding function to
PlateSwing(PlateSwing.hpp). -
2026-09-08 — circuits: Connected antialiasing filter outputs in triode and pentode stages (
TriodeStage.hpp,PentodeStage.hpp). -
2026-09-08 — math: Converted
Biquadcoefficients and state to double precision (Biquad.hpp,Biquad.cpp). -
2026-09-08 — tests: Added divided-difference and EL34 antialiasing unit tests (
test_triode_stage.cpp,test_pentode_stage.cpp). -
2026-09-08 — tests: Added alias floor unit test for Peavey 5150 default preset (
test_measure.cpp). -
2026-09-08 — docs: Recorded ADAA mathematical derivations and CPU cost measurements (
docs/reference/KNOWN_ISSUES.md,modules/nodes/jcm800/README.md). -
2026-09-07 — docs: Renamed stack hub command from ss to hub in manual (
docs/). -
2026-09-07 — core: Routed variable channel counts per edge in rig graph (
RigGraph.hpp,RigGraph.cpp). -
2026-09-07 — core: Added channel adaptation helpers and sized buffer pool at compile (
RigGraph.hpp,RigGraph.cpp). -
2026-09-07 — routing: Added constant-power stereo
PanNode(modules/nodes/routing/). -
2026-09-07 — routing: Registered
PanNodein registry and assigned front panel (NodeRegistry.cpp,PanelLibrary.cpp). -
2026-09-07 — capture: Added
WavWriterfor streaming 16-bit PCM and 32-bit float audio (WavWriter.hpp,WavWriter.cpp). -
2026-09-07 — capture: Added capture module with wait-free recording bus and track recorder (
modules/nodes/capture/). -
2026-09-07 — capture: Added multi-track
TransportandTrackPlayerwith mute and solo controls (Transport.hpp,TrackPlayer.hpp). -
2026-09-07 — capture: Packed transport loop range into 64-bit atomic integer (
Transport.hpp,Transport.cpp). -
2026-09-07 — host_gui: Added transport controls and re-amp routing to rig controller (
RigController.hpp,RigController.cpp). -
2026-09-07 — host_gui: Added host transport bar and multi-track audio panel (
apps/host_gui/ui/TransportBar.cpp,apps/host_gui/ui/TrackPanel.cpp). -
2026-09-07 — host_gui: Serialized track list and loop bounds into preset documents (
RigController.cpp). -
2026-09-07 — capture: Enforced atomic multi-file block writes in
RecordingBus(RecordingBus.cpp,TrackRecorder.hpp). -
2026-09-07 — capture: Preserved channel separation when loading takes from WAV files (
WavFile.hpp,Take.cpp). -
2026-09-07 — core: Added clear method to
SpscRingto avoid freeing active rings (SpscRing.hpp). -
2026-09-07 — tests: Made allocation trap tracking flags thread-local (
tests/functional/unit/test_rt_safety.cpp). -
2026-09-07 — device: Routed arbitrary output channel widths through scratch buffer in SDL2 (
Sdl2AudioDevice.hpp,Sdl2AudioDevice.cpp). -
2026-09-07 — audio_format: Added rig-to-device channel adaptation functions (
ChannelSelection.hpp,ChannelSelection.cpp). -
2026-09-07 — host_gui: Initialized SDL2 audio device for stereo playback (
apps/host_gui/main.cpp). -
2026-09-07 — capture: Folded mono track playback to unity gain across all pan settings (
TrackPlayer.cpp). -
2026-09-07 — capture: Added writer thread handshake to
TrackRecorder(TrackRecorder.hpp,TrackRecorder.cpp). -
2026-09-07 — capture: Disarmed recording legs atomically before closing file streams (
RecordingBus.cpp). -
2026-09-07 — host_gui: Handled disk write errors gracefully in transport bar (
RecordingBus.hpp,RigController.cpp,TransportBar.cpp). -
2026-09-07 — capture: Added
Transport::loop_snapshotto avoid re-reading packed word (Transport.hpp,Transport.cpp). -
2026-09-07 — audio_format: Clamped supported adaptation channel count to device output limits (
ChannelSelection.cpp). -
2026-09-07 — core: Allowed
RtSwapSlot::reclaimto free unused objects before audio init (RtSwapSlot.hpp). -
2026-09-07 — host_gui: Reset track mixer parameters when clearing rig state (
RigController.cpp). -
2026-09-07 — core: Clamped rig graph gather buffer clearing bound to maximum channels (
RigGraph.cpp). -
2026-09-07 — capture: Removed unused
RecordingBus::armed_block_indexhelper (RecordingBus.hpp,RecordingBus.cpp). -
2026-09-07 — core: Added block-level push and pop methods to
SpscRing(SpscRing.hpp,TrackRecorder.cpp). -
2026-09-07 — tests: Wrapped allocation trap in RAII management helper (
tests/functional/unit/test_rt_safety.cpp). -
2026-09-07 — bench: Benchmarked eight stereo tracks at 48 kHz against 5.33 ms deadline (
tests/benchmark/main.cpp). -
2026-09-07 — circuits: Removed DC offset from saturated transformer output (
OutputTransformerStage.hpp,OutputTransformerStage.cpp). -
2026-09-07 — tests: Added square-wave DC stability test for output transformer (
test_output_transformer_stage.cpp). -
2026-09-07 — tests: Tightened DC stability tolerance for Mesa Mark IIC+ lead mode (
test_mesa_mark2c.cpp). -
2026-09-07 — tests: Adjusted Diezel VH4 deep measurement input drive level (
test_diezel_vh4.cpp). -
2026-09-07 — circuits: Repinned amplifier unity gain calibration constants at 82 Hz (
Jcm800.hpp,Peavey5150.hpp,MesaMark2c.hpp,DiezelVh4.hpp). -
2026-09-07 — docs: Documented amplifier calibration points and DC measurements (
modules/nodes/diezel_vh4/README.md,modules/nodes/jcm800/README.md). -
2026-09-07 — docs: Recorded 16x oversampling CPU benchmark measurements in known issues (
docs/reference/KNOWN_ISSUES.md). -
2026-09-07 — circuits: Extracted
PlateSwingandGridConductionLawinto separate headers (PlateSwing.hpp,GridConductionLaw.hpp). -
2026-09-07 — circuits: Rebuilt
PentodeStageon Norman grid conduction equation (PentodeStage.hpp,PentodeStage.cpp). -
2026-09-07 — circuits: Defined power tube operating points from manufacturer datasheets (
PowerTubePresets.hpp). -
2026-09-07 — circuits: Derived output transformer scaling directly from tube plate swing (
Jcm800.cpp,Peavey5150.cpp,MesaMark2c.cpp,DiezelVh4.cpp). -
2026-09-07 — jcm800: Calculated individual stage gains from Koren triode model Jacobian (
Jcm800.cpp). -
2026-09-07 — jcm800: Resolved long-tailed pair phase inverter operating point (
Jcm800.cpp,DiezelVh4.cpp). -
2026-09-07 — circuits: Converted power-tube bias mismatch offsets to absolute voltage units (
Jcm800.cpp,Peavey5150.cpp). -
2026-09-07 — tests: Rewrote pentode stage unit tests for volt-true circuit models (
test_pentode_stage.cpp,test_measure.cpp). -
2026-09-07 — tests: Reanchored Peavey 5150 harmonic rise tests to normalized drive levels (
test_peavey5150.cpp). -
2026-09-07 — tests: Adjusted cascade gain verification bounds for Diezel VH4 and JCM800 (
test_diezel_vh4.cpp,test_jcm800.cpp). -
2026-09-07 — circuits: Replaced triode Shockley grid diode with Norman conduction model (
TriodeStage.hpp,TriodeStage.cpp). -
2026-09-07 — circuits: Migrated all amplifier models to shared Norman grid conduction parameters (
Jcm800.cpp,Peavey5150.cpp,DiezelVh4.cpp). -
2026-09-07 — peavey5150: Solved Peavey 5150 phase inverter operating point and tail voltage (
Peavey5150.cpp). -
2026-09-07 — peavey5150: Replaced pre-gain potentiometer curve with exponential audio taper (
Peavey5150.cpp). -
2026-09-07 — circuits: Pinned amplifier reference gains at 82 Hz fundamental frequency (
Jcm800.hpp,Peavey5150.hpp,MesaMark2c.hpp,DiezelVh4.hpp). -
2026-09-07 — tests: Added triode stage alias floor sweeps and updated unit tests (
test_measure.cpp,test_triode_stage.cpp). -
2026-09-07 — docs: Identified amplifier alias floor causes and drafted antialiasing design (
docs/reference/KNOWN_ISSUES.md). -
2026-09-07 — circuits: Added plate voltage ceiling and excursion calculations to
TriodeStage(TriodeStage.hpp,TriodeStage.cpp). -
2026-09-07 — circuits: Referenced triode grid conduction diode to cathode potential (
TriodeStage.cpp). -
2026-09-07 — math: Added first-order high-pass filter configuration helper to
Biquad(Biquad.hpp). -
2026-09-07 — jcm800: Updated JCM800 preamp stages to plate-swing triode model (
modules/nodes/jcm800/). -
2026-09-07 — peavey5150: Updated Peavey 5150 lead channel to plate-swing triode model (
modules/nodes/peavey5150/). -
2026-09-07 — mesa_mark2c: Updated Mesa Mark IIC+ lead mode to plate-swing triode model (
modules/nodes/mesa_mark2c/). -
2026-09-07 — diezel_vh4: Updated Diezel VH4 channel 3 to plate-swing triode model (
modules/nodes/diezel_vh4/). -
2026-09-07 — tests: Repinned amplifier golden test vectors for plate-swing topology (
tests/golden/). -
2026-09-07 — docs: Created known issues register for alias floors and loop networks (
docs/reference/KNOWN_ISSUES.md). -
2026-09-07 — tests: Skipped incomplete Mark IIC+ loop return test cases with logged values (
test_mesa_mark2c.cpp). -
2026-09-07 — tests: Skipped JCM800 alias floor assertion at measured value (
test_measure.cpp). -
2026-09-07 — docs: Documented open questions regarding Mark IIC+ loop circuit design (
docs/archive/research/). -
2026-09-07 — tests: Set Peavey 5150 clean input test level to nominal rating (
test_peavey5150.cpp). -
2026-09-07 — docs: Documented malformed commit message hashes across DA4 development.
-
2026-09-07 — core: Unified cabinet IR management under
ICabinetHostinterface (include/SushiDSP/core/ICabinetHost.hpp,apps/host_gui/RigController.cpp). -
2026-09-07 — tests: Measured Tube Screamer alias floor at 8x oversampling (
tests/functional/unit/test_measure.cpp). -
2026-09-07 — tests: Replaced
DiodeClipperCircuitcomparison with analytic root solver (test_dk_circuit.cpp). -
2026-09-07 — tests: Nulled clipping block ports against decimated LTspice reference (
tests/functional/unit/test_ts_clip_stage.cpp). -
2026-09-07 — docs: Evaluated antialiasing trade-offs for diode clipping circuits.
-
2026-09-07 — circuits: Corrected
SiliconDiodereverse extrapolation tangent (include/SushiDSP/circuits/models/SiliconDiode.hpp). -
2026-09-07 — circuits: Added
AdaaDiodePairPortfirst-order antialiasing model (modules/nodes/tubescreamer/include/SushiDSP/tubescreamer/TubeScreamerCircuits.hpp). -
2026-09-07 — circuits: Added current and antiderivative calculation to
SiliconDiode(include/SushiDSP/circuits/models/SiliconDiode.hpp). -
2026-09-07 — math: Added post-solve current updating hook to
DkCircuit(include/SushiDSP/math/dk/DkCircuit.hpp). -
2026-09-07 — docs: Recorded antialiasing alias floor improvements and solver costs.
-
2026-09-07 — tubescreamer: Recalibrated unity output gain for DK circuit topology (
modules/nodes/tubescreamer/include/SushiDSP/tubescreamer/TubeScreamer.hpp,tests/golden/). -
2026-09-07 — tubescreamer: Documented latency reporting and added knob sweep test cases (
tests/functional/unit/test_tube_screamer.cpp). -
2026-09-07 — tests: Repinned Tube Screamer alias floor measurement at 4x oversampling (
tests/functional/unit/test_measure.cpp). -
2026-09-07 — tests: Added real-time allocation trap covering parameter changes (
tests/functional/unit/test_rt_safety.cpp). -
2026-09-07 — tests: Added reset test case for 4x oversampler (
tests/functional/unit/test_oversampler.cpp,tests/functional/unit/test_tube_screamer.cpp). -
2026-09-06 — circuits: Moved analog circuit stages to dedicated include path (
include/SushiDSP/circuits/stages/,PowerTubePresets.hpp). -
2026-09-06 — circuits: Added
ResonanceControlresonant shelving filter (include/SushiDSP/circuits/stages/ResonanceControl.hpp). -
2026-09-06 — circuits: Added
GraphicEqualizerpeaking biquad filter cascade (GraphicEqualizer.hpp,GraphicEqualizer.cpp). -
2026-09-06 — circuits: Added
FmvToneStackFender-Marshall-Vox stack model (FmvToneStack.hpp,FmvToneStack.cpp). -
2026-09-06 — spice: Corrected FMV tone stack schematic return node in SPICE (
docs/reference/spice/jcm_fmv/). -
2026-09-06 — spice: Verified eight circuit blocks against LTspice simulation benchmarks (
docs/reference/spice/). -
2026-09-06 — docs: Created amplifier design dossiers for 5150, Mark IIC+ and VH4 (
docs/archive/research/). -
2026-09-06 — circuits: Wired tone stack middle potentiometer as variable resistance rheostat (
FmvToneStack.hpp,FmvToneStack.cpp). -
2026-09-06 — circuits: Added power-tube preset constructors to
PentodeStage(PentodeStage.hpp,PowerTubePresets.hpp). -
2026-09-06 — circuits: Added per-band quality factor override to
GraphicEqualizer(GraphicEqualizer.hpp,GraphicEqualizer.cpp). -
2026-09-06 — peavey5150: Added Peavey 5150 high-gain lead channel node (
modules/nodes/peavey5150/). -
2026-09-06 — mesa_mark2c: Added Mesa/Boogie Mark IIC+ lead channel node (
modules/nodes/mesa_mark2c/). -
2026-09-06 — diezel_vh4: Added Diezel VH4 channel 3 amplifier node (
modules/nodes/diezel_vh4/). -
2026-09-06 — diezel_vh4: Removed input low-pass filter to match guitar source impedance (
DiezelVh4.cpp,DiezelVh4.hpp,modules/nodes/diezel_vh4/README.md). -
2026-09-06 — circuits: Registered amplifiers in node registry and built GUI panels (
NodeRegistry.cpp,PanelLibrary.cpp). -
2026-09-06 — tests: Added amplitude argument to alias floor measurement utility (
tests/measure/AliasFloor.hpp). -
2026-09-06 — tests: Measured Boss DD-3 alias floor across input amplitudes (
test_dd3_acceptance.cpp). -
2026-09-06 — docs: Documented compander harmonic folding behaviour in delay model (
docs/reference/KNOWN_ISSUES.md). -
2026-09-06 — dd3: Ran compander rectifier simulation at 8x sub-samples per frame (
Ne570Compander.hpp,Ne570Compander.cpp). -
2026-09-06 — tests: Verified compander time constants and harmonic distortion (
test_ne570_compander.cpp). -
2026-09-06 — spice: Corrected TS808 tone network schematic to match hardware (
docs/reference/spice/ts_tone/ts_tone.asc). -
2026-09-06 — circuits: Rebuilt tone circuit equations from revised netlist (
modules/nodes/tubescreamer/include/SushiDSP/tubescreamer/TubeScreamerCircuits.hpp). -
2026-09-06 — tests: Added tone circuit frequency and range validation tests (
tests/functional/unit/test_ts_tone_stage.cpp). -
2026-09-06 — tubescreamer: Rebuilt Tube Screamer onto DK clipping and tone stages (
modules/nodes/tubescreamer/src/TubeScreamer.cpp). -
2026-09-05 — dd3: Added Boss DD-3 digital delay pedal module (
modules/nodes/dd3/,modules/nodes/dd3/README.md). -
2026-09-05 — dd3: Registered delay pedal in registry under Delay category (
modules/catalog/node_registry/src/NodeRegistry.cpp). -
2026-09-05 — dd3: Implemented anti-alias and reconstruction filter cascades (
modules/nodes/dd3/include/SushiDSP/dd3/Dd3AnalogFilters.hpp). -
2026-09-05 — dd3: Damped Sallen-Key sections to match published response curves (
Dd3AnalogFilters.hpp). -
2026-09-05 — dd3: Anchored bilinear transform prewarping at 7 kHz band edge (
Dd3AnalogFilters.hpp). -
2026-09-05 — dd3: Added NE570 compander model with rectifier ripple dynamics (
Ne570Compander.hpp). -
2026-09-05 — dd3: Added 12-bit saturating converter model and variable buffer ring (
Dd3Converter.hpp). -
2026-09-05 — dd3: Added voltage-controlled clock oscillator simulation (
Dd3Clock.hpp). -
2026-09-05 — dd3: Implemented variable-rate feedback delay loop using resamplers (
Dd3Delay.hpp). -
2026-09-05 — dd3: Calibrated loop forward gain to normalize feedback response (
Dd3Delay.hpp). -
2026-09-05 — dd3: Moved input buffer gain outside feedback path (
modules/nodes/dd3/src/Dd3Delay.cpp). -
2026-09-05 — dd3: Extracted wet FIFO queue to prime initial delay samples (
WetFifo.hpp). -
2026-09-05 — dd3: Deferred delay mode switching to block boundaries (
modules/nodes/dd3/src/Dd3Delay.cpp). -
2026-09-05 — dd3: Calculated initial wet delay offset including filter latency (
Dd3Delay.hpp). -
2026-09-05 — dd3: Calibrated wet path unity output level against service manual (
Dd3Delay.hpp). -
2026-09-05 — tests: Added acceptance test cases for clock sweep, pitch slur and latency (
tests/functional/unit/test_dd3_acceptance.cpp). -
2026-09-05 — tests: Added golden regression audio files at 48 kHz and 96 kHz (
tests/functional/regression/test_dd3_regression.cpp). -
2026-09-05 — tests: Corrected resampler latency calculation in delay acceptance test (
tests/functional/unit/test_dd3_acceptance.cpp). -
2026-09-05 — tests: Added real-time safety memory allocation traps for delay node (
tests/functional/unit/test_rt_safety.cpp). -
2026-09-05 — bench: Added benchmark cases for DD-3 delay processing (
tests/benchmark/main.cpp). -
2026-09-05 — docs: Documented discrepancies between schematic analysis and measured hardware.
-
2026-09-05 — docs: Documented delay time discrepancies between clock rates and specifications.
-
2026-09-05 — docs: Documented gain multiplier required to match test point voltages (
Dd3Delay.hpp). -
2026-09-05 — math: Added arbitrary-ratio polyphase resampler (
include/SushiDSP/math/Resampler.hpp,src/math/Resampler.cpp). -
2026-09-05 — math: Generated windowed-sinc filter prototype coefficients (
include/SushiDSP/math/ResamplerCoefficients.hpp). -
2026-09-05 — math: Added script to generate Kaiser-windowed resampler filters (
tools/dsp/design_resampler.py). -
2026-09-05 — math: Verified resampler filter stopband rejection exceeds 100 dB (
tools/dsp/design_resampler.py). -
2026-09-05 — math: Clarified latency reporting and lookahead in
Resampler(Resampler.hpp). -
2026-09-05 — math: Maintained phase accumulator continuity across dynamic rate changes (
src/math/Resampler.cpp). -
2026-08-27 — math: Added
DenseLu,DampedNewtonSolver,DkNetlistandDkCircuit(include/SushiDSP/math/dk/). -
2026-08-27 — circuits: Added diode and tube device models with double-precision Jacobians (
SiliconDiode.hpp,Triode12AX7.hpp,PentodeEL34.hpp). -
2026-08-27 — tests: Validated RC, RLC, diode clipper and JCM800 V1a netlists against analytic poles (
test_dk_circuit.cpp). -
2026-08-27 — circuits: Carried 12AX7 interelectrode capacitances in the
jcm_v1anetlist (12ax7_koren.sub). -
2026-08-27 — tests: Verified Newton convergence on continuous and looped-block stimuli with zero non-finite samples (
test_dk_triode_stage.cpp). -
2026-08-27 — spice: Verified transient nulls under -88 dB and AC sweeps within 0.5 dB against LTspice CSVs (
docs/reference/spice/). -
2026-08-27 — tests: Verified DK diode clipper against analytic root within 1e-11 V (
test_dk_circuit.cpp). -
2026-08-27 — tests: Added single-definition V1a netlist fixture for stage tests, safety traps and benchmarks (
tests/circuits/JcmV1aNetlist.hpp). -
2026-08-27 — core: Added real-time safety traps for sample processing, pot updates and solver execution (
test_rt_safety.cpp). -
2026-08-27 — bench: Benchmarked 7-state DK circuit at 8x oversampling and potentiometer re-derivation timing (
tests/benchmark/main.cpp). -
2026-08-26 — tests: Added test measurement library for rendering, THD, alias floors and frequency responses (
tests/measure/). -
2026-08-26 — math: Redesigned polyphase halfband cascades to achieve 90 dB stopband rejection (
HalfbandCoefficients.hpp). -
2026-08-26 — jcm800: Consolidated amplifier processing into a single 8x oversampled region with Miller poles (
modules/nodes/jcm800/). -
2026-08-26 — tubescreamer: Measured 8x oversampling alias floor at -9.6 dB (
tests/functional/unit/test_measure.cpp). -
2026-08-26 — bench: Benchmarked JCM800 and Tube Screamer execution times against block budgets (
tests/benchmark/main.cpp). -
2026-08-26 — tests: Switched regression tests to 1-second golden audio comparisons at 48 kHz and 96 kHz (
tests/golden/). -
2026-08-26 — spice: Staged SPICE reference corpus, netlists and export automation (
docs/reference/spice/,tools/spice/export.py). -
2026-08-26 — core: Added latency reporting contract to
IAudioNode,RigGraphandOversampler8x(IAudioNode.hpp,RigGraph.hpp). -
2026-08-26 — core: Added
RtSwapSlotfor lock-free object reclamation between audio and control threads (RtSwapSlot.hpp). -
2026-08-26 — core: Added
SmoothedParameterwith millisecond time constants for smoothing (SmoothedParameter.hpp). -
2026-08-26 — io: Added
IrLoaderfor resampling, trimming, fading and loudness normalisation of cabinet impulses (IrLoader.hpp,IrLoader.cpp). -
2026-08-26 — core: Added lock-free parameter ring buffer drained at block boundaries (
RigGraph.cpp,SpscRing.hpp). -
2026-08-26 — jcm800: Moved cabinet simulation to
StreamingConvolutionbehindRtSwapSlot(modules/jcm800/). -
2026-08-26 — core: Calibrated full-scale input voltage to 2 V peak and repinned node defaults (
Calibration.hpp). -
2026-08-26 — host_gui: Routed parameter changes through lock-free ring and added runtime cabinet loading (
apps/host_gui/). -
2026-08-25 — cli: Added compiler auto-detection and pinned FMA contraction off in
sd(cli/sushidsp/). -
2026-08-25 — bench: Added
sushidsp_benchtiming harness and reporting viasd test -s benchmark(tests/benchmark/). -
2026-08-25 — build: Added AVX2, FMA and link-time optimisation build configurations (
cmake/SushiDSPCompilerFlags.cmake). -
2026-08-25 — core: Added
DenormalGuardRAII helper to enforce flush-to-zero in audio callbacks (DenormalGuard.hpp). -
2026-08-25 — math: Added joint residual and derivative solver in
NewtonRaphsonSolver(NewtonRaphsonSolver.hpp). -
2026-08-25 — math: Converted
HalfbandUpsampler2xandHalfbandDownsampler2xto polyphase forms (HalfbandCoefficients.hpp). -
2026-08-25 — math: Added
PartitionedConvolutionfor uniform-partitioned overlap-add FFT convolution (PartitionedConvolution.hpp). -
2026-08-25 — math: Added
HalfbandUpsampler2x,HalfbandDownsampler2xandOversampler8x(Oversampler.hpp). -
2026-08-25 — math: Added
WdfResistorandWdfCapacitorlinear Wave Digital Filter one-ports (Wdf.hpp). -
2026-08-25 — math: Added
NewtonRaphsonSolverand single-stage diode clipper proof circuit (DiodeClipperCircuit.hpp). -
2026-08-25 — device: Added
IAudioDeviceseam and SDL2 audio device backend (IAudioDevice.hpp,Sdl2AudioDevice.hpp). -
2026-08-25 — core: Added lock-free
SpscRingfor control to real-time communication (SpscRing.hpp). -
2026-08-25 — host: Added
sushidsp_hoststandalone rig playback proof application (apps/host/). -
2026-08-25 — build: Added repository CMake skeleton and
sddeveloper CLI (CMakeLists.txt,cli/). -
2026-08-25 — core: Added
IAudioNode,RigGraphandNodeDescriptorcore graph contracts (IAudioNode.hpp,RigGraph.hpp). -
2026-08-25 — core: Added allocation-free transient
BufferPool(BufferPool.hpp,BufferPool.cpp). -
2026-08-25 — math: Added real
Fftand RBJ biquad filter implementations (Fft.hpp,Biquad.hpp). -
2026-08-25 — tests: Added real-time safety operator new trap harness for regression suites (
tests/functional/unit/test_rt_safety.cpp). -
2026-07-24 — docs: Pivoted design scope from game audio to standalone amp and pedal DSP framework (
docs/design/SUSHIDSP.md). -
2026-07-24 — cli: Registered
sushidspas a SushiStack module withsdalias (sushicore).

