pub mod types;
pub use types::*;
pub use types::RecordingConfiguration;
mod config_loader;
pub use config_loader::{SHALLOW_MERGE_KEYS, load_config, merge_json_objects};
mod config;
pub use config::{ValidationResult, validate_room_config};
mod optimize;
pub use optimize::{
CallbackAction, ChannelOptimizationResult, RoomOptimizationCallback, RoomOptimizationProgress,
RoomOptimizationResult, SpeakerOptimizationCallback, SpeakerOptimizationResult, optimize_room,
optimize_speaker,
};
mod crossover_utils;
mod group_processing; mod speaker_eq;
mod crossover;
mod dba;
mod eq;
mod fir;
mod group_delay;
pub mod multisub;
pub mod workflows;
mod export;
pub use export::{ExportFormat, export_dsp_chain};
mod output;
pub use output::{
add_delay_plugin, build_channel_dsp_chain, build_channel_dsp_chain_with_curves,
build_dba_dsp_chain, build_dba_dsp_chain_with_curves, build_multidriver_dsp_chain,
build_multidriver_dsp_chain_with_curves, build_multisub_dsp_chain,
build_multisub_dsp_chain_with_allpass, build_multisub_dsp_chain_with_curves,
create_convolution_plugin, create_crossover_plugin, create_delay_plugin,
create_dsp_chain_output, create_eq_plugin, create_gain_plugin, create_gain_plugin_with_invert,
create_labeled_eq_plugin, save_dsp_chain,
};
mod progress;
pub use progress::{MultiStageProgress, ProgressReporter};
mod spectral_align;
pub use spectral_align::{
SpectralAlignmentResult, compute_inter_channel_deviation, compute_spectral_alignment,
create_alignment_plugins, log_spectral_alignment,
};
mod voice_of_god;
pub use voice_of_god::{VoGResult, compute_voice_of_god, create_vog_plugins};
pub mod spatial_robustness;
pub use spatial_robustness::{SpatialRobustnessResult, analyze_spatial_robustness};
pub mod mixed_phase;
pub use mixed_phase::{MixedPhaseConfig, MixedPhaseResult, decompose_phase};
pub mod impulse_analysis;
pub use impulse_analysis::{
DecomposedCorrectionConfig, DecomposedCorrectionResult, analyze_decomposed_correction,
};
pub mod cea2034_correction;
pub mod reflection_cancel;
pub use reflection_cancel::{
ReflectionCancellationConfig, ReflectionCancellationResult, compute_reflection_cancellation,
};
mod ir_waveform;
mod phase_utils;
pub mod synthetic;
mod time_align;
mod weighted_loss;
pub use time_align::{
ArrivalTimeResult, ProbeDelayResult, calculate_alignment_delays, detect_delay_with_probe,
detect_delays_multi_channel, find_arrival_time,
};
pub mod temporal_targets;
pub mod excursion;
pub mod multiseat;
pub mod phase_alignment;
pub mod target_tilt;
pub use excursion::{
ExcursionProtectionResult, F3DetectionResult, detect_f3, generate_excursion_protection,
};
pub use multiseat::{MultiSeatMeasurements, MultiSeatOptimizationResult, optimize_multiseat};
pub use phase_alignment::{
PhaseAlignmentResult, optimize_phase_alignment, optimize_phase_alignment_batch,
};
pub use target_tilt::{
build_harman_target_curve, build_harman_target_curve_with_bass_boost,
build_target_curve_with_tilt,
};