Python File Documentation and Help
May 25, 2026 ยท View on GitHub

Python File Documentation and Help
Comprehensive reference for every Python file in this repository.
Total Python files documented: 268
Contents
benchmarks/__init__.pybenchmarks/metrics.pybenchmarks/run_augment_bench.pybenchmarks/run_augment_profile_suite.pybenchmarks/run_augment_wer_bench.pybenchmarks/run_bench.pybenchmarks/run_pvc_parity.pyexamples/asr_augmentation.pyexamples/huggingface_pipeline.pyexamples/pytorch_dataset.pyexamples/speech_enhancement_pairs.pyscripts/scripts_ab_compare.pyscripts/scripts_alpha_check.pyscripts/scripts_apply_attribution.pyscripts/scripts_benchmark_matrix.pyscripts/scripts_check_dependency_sync.pyscripts/scripts_generate_docs_extras.pyscripts/scripts_generate_docs_pdf.pyscripts/scripts_generate_html_docs.pyscripts/scripts_generate_python_docs.pyscripts/scripts_generate_theory_docs.pyscripts/scripts_install_man_pages.pyscripts/scripts_quality_regression.pysrc/pvx/__init__.pysrc/pvx/algorithms/__init__.pysrc/pvx/algorithms/analysis_qa_and_automation/__init__.pysrc/pvx/algorithms/analysis_qa_and_automation/auto_parameter_tuning_bayesian_optimization.pysrc/pvx/algorithms/analysis_qa_and_automation/batch_preset_recommendation_based_on_source_features.pysrc/pvx/algorithms/analysis_qa_and_automation/clip_hum_buzz_artifact_detection.pysrc/pvx/algorithms/analysis_qa_and_automation/key_chord_detection.pysrc/pvx/algorithms/analysis_qa_and_automation/onset_beat_downbeat_tracking.pysrc/pvx/algorithms/analysis_qa_and_automation/pesq_stoi_visqol_quality_metrics.pysrc/pvx/algorithms/analysis_qa_and_automation/silence_speech_music_classifiers.pysrc/pvx/algorithms/analysis_qa_and_automation/structure_segmentation_verse_chorus_sections.pysrc/pvx/algorithms/audio_dispatch.pysrc/pvx/algorithms/base.pysrc/pvx/algorithms/creative_spectral_effects/__init__.pysrc/pvx/algorithms/creative_spectral_effects/cross_synthesis_vocoder.pysrc/pvx/algorithms/creative_spectral_effects/formant_painting_warping.pysrc/pvx/algorithms/creative_spectral_effects/phase_randomization_textures.pysrc/pvx/algorithms/creative_spectral_effects/resonator_filterbank_morphing.pysrc/pvx/algorithms/creative_spectral_effects/spectral_blur_smear.pysrc/pvx/algorithms/creative_spectral_effects/spectral_contrast_exaggeration.pysrc/pvx/algorithms/creative_spectral_effects/spectral_convolution_effects.pysrc/pvx/algorithms/creative_spectral_effects/spectral_freeze_banks.pysrc/pvx/algorithms/denoise_and_restoration/__init__.pysrc/pvx/algorithms/denoise_and_restoration/declick_decrackle_median_wavelet_interpolation.pysrc/pvx/algorithms/denoise_and_restoration/declip_via_sparse_reconstruction.pysrc/pvx/algorithms/denoise_and_restoration/diffusion_based_speech_audio_denoise.pysrc/pvx/algorithms/denoise_and_restoration/log_mmse.pysrc/pvx/algorithms/denoise_and_restoration/minimum_statistics_noise_tracking.pysrc/pvx/algorithms/denoise_and_restoration/mmse_stsa.pysrc/pvx/algorithms/denoise_and_restoration/rnnoise_style_denoiser.pysrc/pvx/algorithms/denoise_and_restoration/wiener_denoising.pysrc/pvx/algorithms/dereverb_and_room_correction/__init__.pysrc/pvx/algorithms/dereverb_and_room_correction/blind_deconvolution_dereverb.pysrc/pvx/algorithms/dereverb_and_room_correction/drr_guided_dereverb.pysrc/pvx/algorithms/dereverb_and_room_correction/late_reverb_suppression_via_coherence.pysrc/pvx/algorithms/dereverb_and_room_correction/multi_band_adaptive_deverb.pysrc/pvx/algorithms/dereverb_and_room_correction/neural_dereverb_module.pysrc/pvx/algorithms/dereverb_and_room_correction/room_impulse_inverse_filtering.pysrc/pvx/algorithms/dereverb_and_room_correction/spectral_decay_subtraction.pysrc/pvx/algorithms/dereverb_and_room_correction/wpe_dereverberation.pysrc/pvx/algorithms/dynamics_and_loudness/__init__.pysrc/pvx/algorithms/dynamics_and_loudness/ebu_r128_normalization.pysrc/pvx/algorithms/dynamics_and_loudness/itu_bs_1770_loudness_measurement_gating.pysrc/pvx/algorithms/dynamics_and_loudness/lufs_target_mastering_chain.pysrc/pvx/algorithms/dynamics_and_loudness/multi_band_compression.pysrc/pvx/algorithms/dynamics_and_loudness/spectral_dynamics_bin_wise_compressor_expander.pysrc/pvx/algorithms/dynamics_and_loudness/transient_shaping.pysrc/pvx/algorithms/dynamics_and_loudness/true_peak_limiting.pysrc/pvx/algorithms/dynamics_and_loudness/upward_compression.pysrc/pvx/algorithms/effects_dispatch.pysrc/pvx/algorithms/granular_and_modulation/__init__.pysrc/pvx/algorithms/granular_and_modulation/am_fm_ring_modulation_blocks.pysrc/pvx/algorithms/granular_and_modulation/envelope_followed_modulation_routing.pysrc/pvx/algorithms/granular_and_modulation/formant_lfo_modulation.pysrc/pvx/algorithms/granular_and_modulation/freeze_grain_morphing.pysrc/pvx/algorithms/granular_and_modulation/grain_cloud_pitch_textures.pysrc/pvx/algorithms/granular_and_modulation/granular_time_stretch_engine.pysrc/pvx/algorithms/granular_and_modulation/rhythmic_gate_stutter_quantizer.pysrc/pvx/algorithms/granular_and_modulation/spectral_tremolo.pysrc/pvx/algorithms/pitch_detection_and_tracking/__init__.pysrc/pvx/algorithms/pitch_detection_and_tracking/crepe_style_neural_f0.pysrc/pvx/algorithms/pitch_detection_and_tracking/harmonic_product_spectrum_hps.pysrc/pvx/algorithms/pitch_detection_and_tracking/pyin.pysrc/pvx/algorithms/pitch_detection_and_tracking/rapt.pysrc/pvx/algorithms/pitch_detection_and_tracking/subharmonic_summation.pysrc/pvx/algorithms/pitch_detection_and_tracking/swipe.pysrc/pvx/algorithms/pitch_detection_and_tracking/viterbi_smoothed_pitch_contour_tracking.pysrc/pvx/algorithms/pitch_detection_and_tracking/yin.pysrc/pvx/algorithms/pitch_dispatch.pysrc/pvx/algorithms/registry.pysrc/pvx/algorithms/retune_and_intonation/__init__.pysrc/pvx/algorithms/retune_and_intonation/adaptive_intonation_context_sensitive_intervals.pysrc/pvx/algorithms/retune_and_intonation/chord_aware_retuning.pysrc/pvx/algorithms/retune_and_intonation/just_intonation_mapping_per_key_center.pysrc/pvx/algorithms/retune_and_intonation/key_aware_retuning_with_confidence_weighting.pysrc/pvx/algorithms/retune_and_intonation/portamento_aware_retune_curves.pysrc/pvx/algorithms/retune_and_intonation/scala_mts_scale_import_and_quantization.pysrc/pvx/algorithms/retune_and_intonation/time_varying_cents_maps.pysrc/pvx/algorithms/retune_and_intonation/vibrato_preserving_correction.pysrc/pvx/algorithms/separation_and_decomposition/__init__.pysrc/pvx/algorithms/separation_and_decomposition/demucs_style_stem_separation_backend.pysrc/pvx/algorithms/separation_and_decomposition/ica_bss_for_multichannel_stems.pysrc/pvx/algorithms/separation_and_decomposition/nmf_decomposition.pysrc/pvx/algorithms/separation_and_decomposition/probabilistic_latent_component_separation.pysrc/pvx/algorithms/separation_and_decomposition/rpca_hpss.pysrc/pvx/algorithms/separation_and_decomposition/sinusoidal_residual_transient_decomposition.pysrc/pvx/algorithms/separation_and_decomposition/tensor_decomposition_cp_tucker.pysrc/pvx/algorithms/separation_and_decomposition/u_net_vocal_accompaniment_split.pysrc/pvx/algorithms/spatial_and_multichannel/__init__.pysrc/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/__init__.pysrc/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/binaural_motion_trajectory_designer.pysrc/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/decorrelated_reverb_upmix.pysrc/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/rotating_speaker_doppler_field.pysrc/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/spatial_freeze_resynthesis.pysrc/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/spectral_spatial_granulator.pysrc/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/stochastic_spatial_diffusion_cloud.pysrc/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/__init__.pysrc/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/binaural_itd_ild_synthesis.pysrc/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/dbap_distance_based_amplitude_panning.pysrc/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/phase_aligned_mid_side_field_rotation.pysrc/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/stereo_width_frequency_dependent_control.pysrc/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/transaural_crosstalk_cancellation.pysrc/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/vbap_adaptive_panning.pysrc/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/__init__.pysrc/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/coherence_based_dereverb_multichannel.pysrc/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/cross_channel_click_pop_repair.pysrc/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/microphone_array_calibration_tones.pysrc/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/multichannel_noise_psd_tracking.pysrc/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/multichannel_wiener_postfilter.pysrc/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/phase_consistent_multichannel_denoise.pysrc/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/__init__.pysrc/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_directional_spectral_warp.pysrc/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_interaural_coherence_shaping.pysrc/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_interchannel_phase_locking.pysrc/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_multichannel_time_alignment.pysrc/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_spatial_freeze_and_trajectory.pysrc/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_spatial_transient_preservation.pysrc/pvx/algorithms/spatial_dispatch.pysrc/pvx/algorithms/spectral_time_frequency_transforms/__init__.pysrc/pvx/algorithms/spectral_time_frequency_transforms/chirplet_transform_analysis.pysrc/pvx/algorithms/spectral_time_frequency_transforms/constant_q_transform_cqt_processing.pysrc/pvx/algorithms/spectral_time_frequency_transforms/multi_window_stft_fusion.pysrc/pvx/algorithms/spectral_time_frequency_transforms/nsgt_based_processing.pysrc/pvx/algorithms/spectral_time_frequency_transforms/reassigned_spectrogram_methods.pysrc/pvx/algorithms/spectral_time_frequency_transforms/synchrosqueezed_stft.pysrc/pvx/algorithms/spectral_time_frequency_transforms/variable_q_transform_vqt.pysrc/pvx/algorithms/spectral_time_frequency_transforms/wavelet_packet_processing.pysrc/pvx/algorithms/time_scale_and_pitch_core/__init__.pysrc/pvx/algorithms/time_scale_and_pitch_core/beat_synchronous_time_warping.pysrc/pvx/algorithms/time_scale_and_pitch_core/harmonic_percussive_split_tsm.pysrc/pvx/algorithms/time_scale_and_pitch_core/lp_psola.pysrc/pvx/algorithms/time_scale_and_pitch_core/multi_resolution_phase_vocoder.pysrc/pvx/algorithms/time_scale_and_pitch_core/nonlinear_time_maps.pysrc/pvx/algorithms/time_scale_and_pitch_core/td_psola.pysrc/pvx/algorithms/time_scale_and_pitch_core/wsola_waveform_similarity_overlap_add.pysrc/pvx/augment/__init__.pysrc/pvx/augment/codec.pysrc/pvx/augment/config.pysrc/pvx/augment/core.pysrc/pvx/augment/gpu.pysrc/pvx/augment/ir_database.pysrc/pvx/augment/noise.pysrc/pvx/augment/room.pysrc/pvx/augment/spectral.pysrc/pvx/augment/streaming.pysrc/pvx/augment/time_domain.pysrc/pvx/cli/__init__.pysrc/pvx/cli/catalog.pysrc/pvx/cli/hps_pitch_track.pysrc/pvx/cli/main.pysrc/pvx/cli/pvx.pysrc/pvx/cli/pvx_augment.pysrc/pvx/cli/pvx_helpers.pysrc/pvx/cli/pvx_pipeline.pysrc/pvx/cli/pvxanalysis.pysrc/pvx/cli/pvxbandamp.pysrc/pvx/cli/pvxchordmapper.pysrc/pvx/cli/pvxcodec.pysrc/pvx/cli/pvxconform.pysrc/pvx/cli/pvxdenoise.pysrc/pvx/cli/pvxdeverb.pysrc/pvx/cli/pvxenvelope.pysrc/pvx/cli/pvxfilter.pysrc/pvx/cli/pvxformant.pysrc/pvx/cli/pvxfreeze.pysrc/pvx/cli/pvxgain.pysrc/pvx/cli/pvxharmmap.pysrc/pvx/cli/pvxharmonize.pysrc/pvx/cli/pvxinharmonator.pysrc/pvx/cli/pvxlayer.pysrc/pvx/cli/pvxmorph.pysrc/pvx/cli/pvxnoise.pysrc/pvx/cli/pvxnoisefilter.pysrc/pvx/cli/pvxreshape.pysrc/pvx/cli/pvxresponse.pysrc/pvx/cli/pvxretune.pysrc/pvx/cli/pvxring.pysrc/pvx/cli/pvxringfilter.pysrc/pvx/cli/pvxringtvfilter.pysrc/pvx/cli/pvxrir.pysrc/pvx/cli/pvxspecaugment.pysrc/pvx/cli/pvxspeccompander.pysrc/pvx/cli/pvxtrajectoryreverb.pysrc/pvx/cli/pvxtransient.pysrc/pvx/cli/pvxtvfilter.pysrc/pvx/cli/pvxunison.pysrc/pvx/cli/pvxvoc.pysrc/pvx/cli/pvxwarp.pysrc/pvx/core/__init__.pysrc/pvx/core/analysis_store.pysrc/pvx/core/attribution.pysrc/pvx/core/audio_metrics.pysrc/pvx/core/common.pysrc/pvx/core/control_bus.pysrc/pvx/core/feature_tracking.pysrc/pvx/core/output_policy.pysrc/pvx/core/presets.pysrc/pvx/core/pvc_functions.pysrc/pvx/core/pvc_harmony.pysrc/pvx/core/pvc_ops.pysrc/pvx/core/pvc_resonators.pysrc/pvx/core/response_store.pysrc/pvx/core/spatial_reverb.pysrc/pvx/core/stereo.pysrc/pvx/core/streaming.pysrc/pvx/core/transients.pysrc/pvx/core/voc.pysrc/pvx/core/voc_console.pysrc/pvx/core/voc_jobs.pysrc/pvx/core/wsola.pysrc/pvx/integrations/__init__.pysrc/pvx/integrations/huggingface.pysrc/pvx/integrations/pytorch.pysrc/pvx/integrations/tensorflow.pysrc/pvx/metrics/__init__.pysrc/pvx/metrics/coherence.pysrc/pvx/voc_cli.pysrc/pvxalgorithms/__init__.pysrc/pvxalgorithms/base.pysrc/pvxalgorithms/registry.pytests/test_algorithms_generated.pytests/test_alpha_release_ready.pytests/test_analysis_response_store.pytests/test_audio_metrics.pytests/test_augment_bench_gate.pytests/test_augment_mode.pytests/test_augment_transforms.pytests/test_benchmark_metrics.pytests/test_benchmark_runner.pytests/test_cli_regression.pytests/test_control_bus.pytests/test_docs_coverage.pytests/test_docs_pdf.pytests/test_dsp.pytests/test_gpu_transforms.pytests/test_integrations.pytests/test_microtonal.pytests/test_output_policy.pytests/test_pvc_parity_benchmark.pytests/test_pvc_phase3_5.pytests/test_pvc_phase6.pytests/test_pvxvoc_cli.pytests/test_transient_and_stereo.pytests/test_voc_console.pytests/test_voc_jobs.py
benchmarks/__init__.py
Purpose: Benchmark utilities for pvx quality regression.
Classes: None Functions: None
Module Docstring
Benchmark utilities for pvx quality regression.
benchmarks/metrics.py
Purpose: Objective metrics for pvx benchmark comparisons.
Classes: OptionalMetricValue
Functions: _match_length, _principal_angle, _to_mono, _stft_complex, _stft_mag_db, _resample_signal, _onset_envelope, _detect_onsets, _match_events, _attack_time_ms, _f0_track_and_voicing, _hnr_track, _cross_correlation_lag_samples, _run_external_quality_tool, _proxy_quality_scalar, log_spectral_distance, modulation_spectrum_distance, transient_smear_score, signal_to_noise_ratio_db, si_sdr_db, spectral_convergence, envelope_correlation, rms_level_delta_db, crest_factor_delta_db, bandwidth_95_delta_hz, zero_crossing_rate_delta, dc_offset_delta, clipping_ratio_delta, integrated_lufs_delta_lu, short_term_lufs_delta_lu, loudness_range_delta_lu, true_peak_delta_dbtp, pesq_mos_lqo, stoi_score, visqol_mos_lqo, polqa_mos_lqo, peaq_odg, f0_rmse_cents, voicing_f1_score, harmonic_to_noise_ratio_drift_db, onset_precision_recall_f1, attack_time_error_ms, ild_drift_db, itd_drift_ms, interchannel_phase_deviation_by_band, phasiness_index, musical_noise_index, pre_echo_score, stereo_coherence_drift
Module Docstring
Objective metrics for pvx benchmark comparisons.
benchmarks/run_augment_bench.py
Purpose: Benchmark runner for pvx augmentation workflows.
Classes: None
Functions: _load_manifest_jsonl, _required_error_count, _safe_float, _split_balance_l1, _summarize, _relative_metric_gate, _absolute_metric_gate, _json_safe, _flag_present, _load_profiles, _profile_names, _resolve_profile_path, _apply_profile_overrides, main
Help commands: python3 benchmarks/run_augment_bench.py, python3 benchmarks/run_augment_bench.py --help
Module Docstring
Benchmark runner for pvx augmentation workflows.
Supports profile-driven benchmark presets (speech/music/noisy/stereo) with
both relative (baseline drift) and absolute metric gates.
benchmarks/run_augment_profile_suite.py
Purpose: Run all augmentation benchmark profiles and summarize regression status.
Classes: None
Functions: _load_profiles, _load_json, main
Help commands: python3 benchmarks/run_augment_profile_suite.py, python3 benchmarks/run_augment_profile_suite.py --help
Module Docstring
Run all augmentation benchmark profiles and summarize regression status.
benchmarks/run_augment_wer_bench.py
Purpose: Benchmark: WER impact of pvx augmentation on a speech recognition task.
Classes: None
Functions: parse_args, get_device, build_pipelines, prepare_dataset, train_and_evaluate, main
Help commands: python3 benchmarks/run_augment_wer_bench.py, python3 benchmarks/run_augment_wer_bench.py --help
Module Docstring
Benchmark: WER impact of pvx augmentation on a speech recognition task.
This script measures the effect of ``pvx.augment`` pipelines on ASR accuracy
by fine-tuning a small Wav2Vec2 model on LibriSpeech-clean-100 with and
without augmentation, then evaluating WER on the ``test-clean`` split.
Requirements
------------
pip install "pvx[torch]" datasets transformers evaluate jiwer torchaudio
Usage
-----
# Quick benchmark (~20 min on a single GPU)
python benchmarks/run_augment_wer_bench.py --epochs 3 --max-train-samples 2000
# Full benchmark (~2-4 hours on a single GPU)
python benchmarks/run_augment_wer_bench.py --epochs 10
# CPU-only (slow, for verification only)
python benchmarks/run_augment_wer_bench.py --epochs 2 --max-train-samples 500 --device cpu
Results are saved as JSON to ``benchmarks/out_augment/wer_results.json``.
benchmarks/run_bench.py
Purpose: Reproducible quality benchmark: pvx vs Rubber Band vs librosa baseline.
Classes: TaskSpec
Functions: _sha256_bytes, _sha256_file, _parse_version, _collect_environment_metadata, _corpus_manifest_entries, _load_manifest, _write_manifest, _manifest_index, _validate_corpus_against_manifest, _prepare_dataset, _case_key, _row_case_key, _diagnose_metrics, _method_diagnostics, _pvx_bench_args, _read_audio, _write_audio, _match_channels, _to_mono, _align_pair, _generate_tiny_dataset, _run_pvx_cycle, _find_rubberband, _run_rubberband_cycle, _run_librosa_cycle, _compute_metrics, _aggregate, _render_markdown, _check_gate, main
Help commands: python3 benchmarks/run_bench.py, python3 benchmarks/run_bench.py --help
Module Docstring
Reproducible quality benchmark: pvx vs Rubber Band vs librosa baseline.
benchmarks/run_pvc_parity.py
Purpose: PVC-style parity benchmark suite for phase 3-7 operators.
Classes: CaseSpec
Functions: _to_mono, _match_length, _flat_response, _tilted_response, _generate_input, _case_specs, _run_tvfilter_envelope, _run_ringtv_controlled, _run_analysis_response_function_chain, _compute_case_metrics, _aggregate, _render_markdown, _gate_failures, main
Help commands: python3 benchmarks/run_pvc_parity.py, python3 benchmarks/run_pvc_parity.py --help
Module Docstring
PVC-style parity benchmark suite for phase 3-7 operators.
examples/asr_augmentation.py
Purpose: ASR data augmentation example using pvx.augment.
Classes: None
Functions: build_asr_pipeline, augment_directory, main
Help commands: python3 examples/asr_augmentation.py, python3 examples/asr_augmentation.py --help
Module Docstring
ASR data augmentation example using pvx.augment.
Demonstrates how to build a reproducible augmentation pipeline for
automatic speech recognition training, apply it to a directory of WAV
files, and write a JSONL manifest for downstream training scripts.
Usage
-----
python examples/asr_augmentation.py --input-dir data/train_clean --output-dir data/train_aug --variants 3 --workers 8 --seed 1337
examples/huggingface_pipeline.py
Purpose: HuggingFace datasets augmentation example using pvx.
Classes: None
Functions: build_augment_pipeline, main
Help commands: python3 examples/huggingface_pipeline.py, python3 examples/huggingface_pipeline.py --help
Module Docstring
HuggingFace datasets augmentation example using pvx.
Demonstrates how to load a speech dataset from the HuggingFace Hub,
apply pvx augmentation, and save the result for training.
Requirements: pip install datasets transformers pvx
Usage
-----
# Augment CommonVoice English (replace with any HF audio dataset)
python examples/huggingface_pipeline.py --dataset mozilla-foundation/common_voice_13_0 --subset en --split train --output-dir data/cv_aug --variants 3 --workers 8
# Augment a local audio folder
python examples/huggingface_pipeline.py --local-dir data/my_audio --output-dir data/my_audio_aug
examples/pytorch_dataset.py
Purpose: PyTorch DataLoader example with pvx augmentation.
Classes: None
Functions: build_train_pipeline, build_val_pipeline, main
Help commands: python3 examples/pytorch_dataset.py, python3 examples/pytorch_dataset.py --help
Module Docstring
PyTorch DataLoader example with pvx augmentation.
Shows how to use PvxAugmentDataset in a complete PyTorch training loop
with multi-worker data loading, variable-length collation, and
deterministic validation.
Requirements: pip install torch torchaudio
Usage
-----
python examples/pytorch_dataset.py --train-dir data/train --val-dir data/val --epochs 5
examples/speech_enhancement_pairs.py
Purpose: Speech enhancement training data generation using pvx.
Classes: None
Functions: build_degradation_pipeline, main
Help commands: python3 examples/speech_enhancement_pairs.py, python3 examples/speech_enhancement_pairs.py --help
Module Docstring
Speech enhancement training data generation using pvx.
Generates paired (clean, noisy) audio for training speech enhancement,
dereverberation, and noise suppression models.
For each clean utterance the script produces N degraded versions with
different noise/reverb conditions. The output JSONL manifest contains
the clean path, noisy path, and all augmentation parameters โ enabling
fully reproducible dataset generation and ablation studies.
Usage
-----
python examples/speech_enhancement_pairs.py --clean-dir data/clean_speech --output-dir data/enhancement_pairs --pairs 5 --workers 8 --seed 1337
scripts/scripts_ab_compare.py
Purpose: Run an A/B pvx render comparison and emit metrics reports.
Classes: None
Functions: _metrics, _render, main
Help commands: python3 scripts/scripts_ab_compare.py, python3 scripts/scripts_ab_compare.py --help
Module Docstring
Run an A/B pvx render comparison and emit metrics reports.
scripts/scripts_alpha_check.py
Purpose: Run alpha-release validation checks without relying on make.
Classes: None
Functions: main
Help commands: python3 scripts/scripts_alpha_check.py
Module Docstring
Run alpha-release validation checks without relying on `make`.
scripts/scripts_apply_attribution.py
Purpose: Apply centralized attribution references to Python and Markdown files.
Classes: None
Functions: _is_excluded, _relative_attribution_path, _insert_python_header, _insert_markdown_notice, apply_python_headers, apply_markdown_notices, main
Help commands: python3 scripts/scripts_apply_attribution.py, python3 scripts/scripts_apply_attribution.py --help
Module Docstring
Apply centralized attribution references to Python and Markdown files.
scripts/scripts_benchmark_matrix.py
Purpose: Benchmark matrix runner for pvxvoc transform/window/device combinations.
Classes: None
Functions: _parse_csv_tokens, _run_case, main
Help commands: python3 scripts/scripts_benchmark_matrix.py, python3 scripts/scripts_benchmark_matrix.py --help
Module Docstring
Benchmark matrix runner for pvxvoc transform/window/device combinations.
scripts/scripts_check_dependency_sync.py
Purpose: Validate that runtime requirements.txt matches project runtime dependencies.
Classes: None
Functions: normalize_name, read_requirements, read_pyproject_runtime_dependencies, main
Help commands: python3 scripts/scripts_check_dependency_sync.py
Module Docstring
Validate that runtime requirements.txt matches project runtime dependencies.
scripts/scripts_generate_docs_extras.py
Purpose: Generate advanced docs artifacts (coverage, limitations, benchmarks, citations, cookbook, architecture).
Classes: None
Functions: git_commit_meta, generated_stamp_lines, logo_lines, attribution_section_lines, write_json, _string_literal, _simple_literal, _tool_name_for_path, _iter_cli_sources, collect_cli_flags, generate_cli_flags_reference, _unique_join, generate_algorithm_limitations, generate_cookbook, generate_architecture_doc, _ensure_2d, _align_audio_pair, _finite_mean, _finite_max, _make_benchmark_cases, _quality_score_0_100, _compute_roundtrip_metrics, _roundtrip_stft_istft, _benchmark_backend_case, _summarize_backend_rows, generate_benchmarks, _classify_reference_url, _extract_doi, _bib_escape, _bib_key, generate_citation_docs, generate_docs_contract, main
Help commands: python3 scripts/scripts_generate_docs_extras.py, python3 scripts/scripts_generate_docs_extras.py --help
Module Docstring
Generate advanced docs artifacts (coverage, limitations, benchmarks, citations, cookbook, architecture).
scripts/scripts_generate_docs_pdf.py
Purpose: Generate one combined PDF from all HTML documentation pages.
Classes: SourcePage, ProgressBar
Functions: add_console_args, console_level, is_quiet, is_silent, log, html_sort_key, collect_html_pages, extract_title, extract_main_html, parse_source_page, _rewrite_internal_links, _extract_reference_count, _annotate_display_equations, build_combined_html, discover_chromium_executable, run_cmd, render_pdf_with_chromium, render_pdf_with_wkhtmltopdf, render_pdf_with_weasyprint, render_pdf_with_playwright, build_engine_registry, auto_engine_order, render_pdf, parse_args, main
Help commands: python3 scripts/scripts_generate_docs_pdf.py, python3 scripts/scripts_generate_docs_pdf.py --help
Module Docstring
Generate one combined PDF from all HTML documentation pages.
scripts/scripts_generate_html_docs.py
Purpose: Generate grouped HTML documentation for pvx algorithms and research references.
Classes: None
Functions: git_commit_meta, scholar, _contains_out_of_scope_text, _is_out_of_scope_paper, _is_out_of_scope_glossary, slugify, dedupe_papers, _upgrade_paper_url, upgrade_paper_urls, load_extra_papers, load_glossary, infer_glossary_terms, glossary_links_html, load_json, classify_reference_url, window_entries, window_tradeoffs, _split_top_level_once, _extract_params_get_calls, extract_algorithm_param_specs, extract_algorithm_params, extract_module_cli_flags, collect_algorithm_module_flags, sample_value_from_default, format_sample_params, compute_unique_cli_flags, grouped_algorithms, html_logo_src, html_attribution_href, html_page, write_style_css, render_index, module_path_from_meta, render_group_pages, render_papers_page, render_glossary_page, render_math_page, render_windows_page, render_architecture_page, render_cli_flags_page, render_limitations_page, render_benchmarks_page, render_cookbook_page, render_citations_page, write_docs_root_index, main
Help commands: python3 scripts/scripts_generate_html_docs.py
Module Docstring
Generate grouped HTML documentation for pvx algorithms and research references.
scripts/scripts_generate_python_docs.py
Purpose: Generate comprehensive documentation for every Python file in the repository.
Classes: None
Functions: logo_lines, attribution_section_lines, rel, safe_read, module_name_for_path, parse_module, cli_help, extract_algorithm_params, generate_algorithm_param_doc, generate_python_help_doc, main
Help commands: python3 scripts/scripts_generate_python_docs.py, python3 scripts/scripts_generate_python_docs.py --help
Module Docstring
Generate comprehensive documentation for every Python file in the repository.
scripts/scripts_generate_theory_docs.py
Purpose: Generate GitHub-renderable theory docs (math foundations + window reference).
Classes: None
Functions: git_commit_meta, generated_stamp_lines, logo_lines, attribution_section_lines, window_entries, window_tradeoffs, window_samples, _first_local_minimum, compute_window_metrics, _polyline_points, _downsample_series, write_line_svg, _svg_plot_points, write_multiline_svg, _compressor_curve_db, _expander_curve_db, _limiter_curve_db, _softclip_cubic, generate_function_assets, _natural_cubic_spline_eval, _sample_interpolation_curve, _render_interpolation_svg, generate_interpolation_assets, generate_window_assets_and_metrics, write_math_foundations, write_window_reference, main
Help commands: python3 scripts/scripts_generate_theory_docs.py
Module Docstring
Generate GitHub-renderable theory docs (math foundations + window reference).
scripts/scripts_install_man_pages.py
Purpose: Generate and optionally install pvx man pages.
Classes: None
Functions: _run_help, _roff_escape, _build_man_page, _write_pages, _install_pages, main
Help commands: python3 scripts/scripts_install_man_pages.py, python3 scripts/scripts_install_man_pages.py --help
Module Docstring
Generate and optionally install pvx man pages.
scripts/scripts_quality_regression.py
Purpose: Render a pvx case and compare objective metrics against a baseline.
Classes: None
Functions: _metrics, _compare, main
Help commands: python3 scripts/scripts_quality_regression.py, python3 scripts/scripts_quality_regression.py --help
Module Docstring
Render a pvx case and compare objective metrics against a baseline.
src/pvx/__init__.py
Purpose: pvx package root.
Classes: None Functions: None
Module Docstring
pvx package root.
Contains stable CLI entrypoints (`pvx.cli`), reusable DSP/runtime core (`pvx.core`),
and the large algorithm library (`pvx.algorithms`).
src/pvx/algorithms/__init__.py
Purpose: Generated algorithm wrappers over shared pvx dispatch implementations.
Classes: None Functions: None
Module Docstring
Generated algorithm wrappers over shared pvx dispatch implementations.
src/pvx/algorithms/analysis_qa_and_automation/__init__.py
Purpose: Analysis, QA, and Automation algorithm scaffolds.
Classes: None Functions: None
Module Docstring
Analysis, QA, and Automation algorithm scaffolds.
src/pvx/algorithms/analysis_qa_and_automation/auto_parameter_tuning_bayesian_optimization.py
Purpose: Auto-parameter tuning (Bayesian optimization).
Algorithm ID: analysis_qa_and_automation.auto_parameter_tuning_bayesian_optimization
Theme: Analysis, QA, and Automation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/analysis_qa_and_automation/auto_parameter_tuning_bayesian_optimization.py, python3 src/pvx/algorithms/analysis_qa_and_automation/auto_parameter_tuning_bayesian_optimization.py --help
Module Docstring
Auto-parameter tuning (Bayesian optimization).
Comprehensive module help:
- Theme: Analysis, QA, and Automation
- Algorithm ID: analysis_qa_and_automation.auto_parameter_tuning_bayesian_optimization
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/analysis_qa_and_automation/batch_preset_recommendation_based_on_source_features.py
Purpose: Batch preset recommendation based on source features.
Algorithm ID: analysis_qa_and_automation.batch_preset_recommendation_based_on_source_features
Theme: Analysis, QA, and Automation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/analysis_qa_and_automation/batch_preset_recommendation_based_on_source_features.py, python3 src/pvx/algorithms/analysis_qa_and_automation/batch_preset_recommendation_based_on_source_features.py --help
Module Docstring
Batch preset recommendation based on source features.
Comprehensive module help:
- Theme: Analysis, QA, and Automation
- Algorithm ID: analysis_qa_and_automation.batch_preset_recommendation_based_on_source_features
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/analysis_qa_and_automation/clip_hum_buzz_artifact_detection.py
Purpose: Clip/hum/buzz artifact detection.
Algorithm ID: analysis_qa_and_automation.clip_hum_buzz_artifact_detection
Theme: Analysis, QA, and Automation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/analysis_qa_and_automation/clip_hum_buzz_artifact_detection.py, python3 src/pvx/algorithms/analysis_qa_and_automation/clip_hum_buzz_artifact_detection.py --help
Module Docstring
Clip/hum/buzz artifact detection.
Comprehensive module help:
- Theme: Analysis, QA, and Automation
- Algorithm ID: analysis_qa_and_automation.clip_hum_buzz_artifact_detection
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/analysis_qa_and_automation/key_chord_detection.py
Purpose: Key/chord detection.
Algorithm ID: analysis_qa_and_automation.key_chord_detection
Theme: Analysis, QA, and Automation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/analysis_qa_and_automation/key_chord_detection.py, python3 src/pvx/algorithms/analysis_qa_and_automation/key_chord_detection.py --help
Module Docstring
Key/chord detection.
Comprehensive module help:
- Theme: Analysis, QA, and Automation
- Algorithm ID: analysis_qa_and_automation.key_chord_detection
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/analysis_qa_and_automation/onset_beat_downbeat_tracking.py
Purpose: Onset/beat/downbeat tracking.
Algorithm ID: analysis_qa_and_automation.onset_beat_downbeat_tracking
Theme: Analysis, QA, and Automation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/analysis_qa_and_automation/onset_beat_downbeat_tracking.py, python3 src/pvx/algorithms/analysis_qa_and_automation/onset_beat_downbeat_tracking.py --help
Module Docstring
Onset/beat/downbeat tracking.
Comprehensive module help:
- Theme: Analysis, QA, and Automation
- Algorithm ID: analysis_qa_and_automation.onset_beat_downbeat_tracking
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/analysis_qa_and_automation/pesq_stoi_visqol_quality_metrics.py
Purpose: PESQ/STOI/VISQOL quality metrics.
Algorithm ID: analysis_qa_and_automation.pesq_stoi_visqol_quality_metrics
Theme: Analysis, QA, and Automation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/analysis_qa_and_automation/pesq_stoi_visqol_quality_metrics.py, python3 src/pvx/algorithms/analysis_qa_and_automation/pesq_stoi_visqol_quality_metrics.py --help
Module Docstring
PESQ/STOI/VISQOL quality metrics.
Comprehensive module help:
- Theme: Analysis, QA, and Automation
- Algorithm ID: analysis_qa_and_automation.pesq_stoi_visqol_quality_metrics
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/analysis_qa_and_automation/silence_speech_music_classifiers.py
Purpose: Silence/speech/music classifiers.
Algorithm ID: analysis_qa_and_automation.silence_speech_music_classifiers
Theme: Analysis, QA, and Automation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/analysis_qa_and_automation/silence_speech_music_classifiers.py, python3 src/pvx/algorithms/analysis_qa_and_automation/silence_speech_music_classifiers.py --help
Module Docstring
Silence/speech/music classifiers.
Comprehensive module help:
- Theme: Analysis, QA, and Automation
- Algorithm ID: analysis_qa_and_automation.silence_speech_music_classifiers
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/analysis_qa_and_automation/structure_segmentation_verse_chorus_sections.py
Purpose: Structure segmentation (verse/chorus/sections).
Algorithm ID: analysis_qa_and_automation.structure_segmentation_verse_chorus_sections
Theme: Analysis, QA, and Automation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/analysis_qa_and_automation/structure_segmentation_verse_chorus_sections.py, python3 src/pvx/algorithms/analysis_qa_and_automation/structure_segmentation_verse_chorus_sections.py --help
Module Docstring
Structure segmentation (verse/chorus/sections).
Comprehensive module help:
- Theme: Analysis, QA, and Automation
- Algorithm ID: analysis_qa_and_automation.structure_segmentation_verse_chorus_sections
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/audio_dispatch.py
Purpose: Restoration, separation, and loudness dispatch helpers for pvx wrappers.
Classes: None
Functions: dispatch_separation, dispatch_denoise, dispatch_dereverb, _lufs_estimate, dispatch_dynamics
Module Docstring
Restoration, separation, and loudness dispatch helpers for pvx wrappers.
src/pvx/algorithms/base.py
Purpose: Shared DSP utilities and implementations for pvx algorithm modules.
Classes: AlgorithmResult
Functions: coerce_audio, maybe_librosa, maybe_loudnorm, build_metadata, _resolve_metadata_status, _annotate_dispatch_metadata, normalize_peak, ensure_length, resample_length, envelope_follower, soft_clip, _resolve_transform_name, _stft_config, stft_multi, istft_multi, spectral_sharpen, spectral_blur, hpss_split, time_stretch, pitch_shift, overlap_add_frames, granular_time_stretch, spectral_gate, spectral_subtract_denoise, mmse_like_denoise, minimum_statistics_denoise, simple_declick, simple_declip, dereverb_decay_subtract, dereverb_wpe_style, compressor, upward_compressor, true_peak_limit, transient_shaper, spectral_dynamics, split_bands, multiband_compression, cross_synthesis, spectral_convolution, spectral_freeze, phase_randomize, formant_warp, resonator_bank, spectral_contrast_exaggerate, rhythmic_gate, ring_mod, spectral_tremolo, envelope_modulation, estimate_f0_track, nearest_scale_freq, variable_pitch_shift, detect_key_from_chroma, cqt_or_stft, icqt_or_istft, run_algorithm
Module Docstring
Shared DSP utilities and implementations for pvx algorithm modules.
src/pvx/algorithms/creative_spectral_effects/__init__.py
Purpose: Creative Spectral Effects algorithm scaffolds.
Classes: None Functions: None
Module Docstring
Creative Spectral Effects algorithm scaffolds.
src/pvx/algorithms/creative_spectral_effects/cross_synthesis_vocoder.py
Purpose: Cross-synthesis vocoder.
Algorithm ID: creative_spectral_effects.cross_synthesis_vocoder
Theme: Creative Spectral Effects
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/creative_spectral_effects/cross_synthesis_vocoder.py, python3 src/pvx/algorithms/creative_spectral_effects/cross_synthesis_vocoder.py --help
Module Docstring
Cross-synthesis vocoder.
Comprehensive module help:
- Theme: Creative Spectral Effects
- Algorithm ID: creative_spectral_effects.cross_synthesis_vocoder
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/creative_spectral_effects/formant_painting_warping.py
Purpose: Formant painting/warping.
Algorithm ID: creative_spectral_effects.formant_painting_warping
Theme: Creative Spectral Effects
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/creative_spectral_effects/formant_painting_warping.py, python3 src/pvx/algorithms/creative_spectral_effects/formant_painting_warping.py --help
Module Docstring
Formant painting/warping.
Comprehensive module help:
- Theme: Creative Spectral Effects
- Algorithm ID: creative_spectral_effects.formant_painting_warping
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/creative_spectral_effects/phase_randomization_textures.py
Purpose: Phase randomization textures.
Algorithm ID: creative_spectral_effects.phase_randomization_textures
Theme: Creative Spectral Effects
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/creative_spectral_effects/phase_randomization_textures.py, python3 src/pvx/algorithms/creative_spectral_effects/phase_randomization_textures.py --help
Module Docstring
Phase randomization textures.
Comprehensive module help:
- Theme: Creative Spectral Effects
- Algorithm ID: creative_spectral_effects.phase_randomization_textures
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/creative_spectral_effects/resonator_filterbank_morphing.py
Purpose: Resonator/filterbank morphing.
Algorithm ID: creative_spectral_effects.resonator_filterbank_morphing
Theme: Creative Spectral Effects
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/creative_spectral_effects/resonator_filterbank_morphing.py, python3 src/pvx/algorithms/creative_spectral_effects/resonator_filterbank_morphing.py --help
Module Docstring
Resonator/filterbank morphing.
Comprehensive module help:
- Theme: Creative Spectral Effects
- Algorithm ID: creative_spectral_effects.resonator_filterbank_morphing
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/creative_spectral_effects/spectral_blur_smear.py
Purpose: Spectral blur/smear.
Algorithm ID: creative_spectral_effects.spectral_blur_smear
Theme: Creative Spectral Effects
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/creative_spectral_effects/spectral_blur_smear.py, python3 src/pvx/algorithms/creative_spectral_effects/spectral_blur_smear.py --help
Module Docstring
Spectral blur/smear.
Comprehensive module help:
- Theme: Creative Spectral Effects
- Algorithm ID: creative_spectral_effects.spectral_blur_smear
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/creative_spectral_effects/spectral_contrast_exaggeration.py
Purpose: Spectral contrast exaggeration.
Algorithm ID: creative_spectral_effects.spectral_contrast_exaggeration
Theme: Creative Spectral Effects
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/creative_spectral_effects/spectral_contrast_exaggeration.py, python3 src/pvx/algorithms/creative_spectral_effects/spectral_contrast_exaggeration.py --help
Module Docstring
Spectral contrast exaggeration.
Comprehensive module help:
- Theme: Creative Spectral Effects
- Algorithm ID: creative_spectral_effects.spectral_contrast_exaggeration
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/creative_spectral_effects/spectral_convolution_effects.py
Purpose: Spectral convolution effects.
Algorithm ID: creative_spectral_effects.spectral_convolution_effects
Theme: Creative Spectral Effects
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/creative_spectral_effects/spectral_convolution_effects.py, python3 src/pvx/algorithms/creative_spectral_effects/spectral_convolution_effects.py --help
Module Docstring
Spectral convolution effects.
Comprehensive module help:
- Theme: Creative Spectral Effects
- Algorithm ID: creative_spectral_effects.spectral_convolution_effects
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/creative_spectral_effects/spectral_freeze_banks.py
Purpose: Spectral freeze banks.
Algorithm ID: creative_spectral_effects.spectral_freeze_banks
Theme: Creative Spectral Effects
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/creative_spectral_effects/spectral_freeze_banks.py, python3 src/pvx/algorithms/creative_spectral_effects/spectral_freeze_banks.py --help
Module Docstring
Spectral freeze banks.
Comprehensive module help:
- Theme: Creative Spectral Effects
- Algorithm ID: creative_spectral_effects.spectral_freeze_banks
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/denoise_and_restoration/__init__.py
Purpose: Denoise and Restoration algorithm scaffolds.
Classes: None Functions: None
Module Docstring
Denoise and Restoration algorithm scaffolds.
src/pvx/algorithms/denoise_and_restoration/declick_decrackle_median_wavelet_interpolation.py
Purpose: Declick/decrackle (median/wavelet + interpolation).
Algorithm ID: denoise_and_restoration.declick_decrackle_median_wavelet_interpolation
Theme: Denoise and Restoration
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/denoise_and_restoration/declick_decrackle_median_wavelet_interpolation.py, python3 src/pvx/algorithms/denoise_and_restoration/declick_decrackle_median_wavelet_interpolation.py --help
Module Docstring
Declick/decrackle (median/wavelet + interpolation).
Comprehensive module help:
- Theme: Denoise and Restoration
- Algorithm ID: denoise_and_restoration.declick_decrackle_median_wavelet_interpolation
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/denoise_and_restoration/declip_via_sparse_reconstruction.py
Purpose: Declip via sparse reconstruction.
Algorithm ID: denoise_and_restoration.declip_via_sparse_reconstruction
Theme: Denoise and Restoration
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/denoise_and_restoration/declip_via_sparse_reconstruction.py, python3 src/pvx/algorithms/denoise_and_restoration/declip_via_sparse_reconstruction.py --help
Module Docstring
Declip via sparse reconstruction.
Comprehensive module help:
- Theme: Denoise and Restoration
- Algorithm ID: denoise_and_restoration.declip_via_sparse_reconstruction
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/denoise_and_restoration/diffusion_based_speech_audio_denoise.py
Purpose: Diffusion-based speech/audio denoise.
Algorithm ID: denoise_and_restoration.diffusion_based_speech_audio_denoise
Theme: Denoise and Restoration
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/denoise_and_restoration/diffusion_based_speech_audio_denoise.py, python3 src/pvx/algorithms/denoise_and_restoration/diffusion_based_speech_audio_denoise.py --help
Module Docstring
Diffusion-based speech/audio denoise.
Comprehensive module help:
- Theme: Denoise and Restoration
- Algorithm ID: denoise_and_restoration.diffusion_based_speech_audio_denoise
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/denoise_and_restoration/log_mmse.py
Purpose: Log-MMSE.
Algorithm ID: denoise_and_restoration.log_mmse
Theme: Denoise and Restoration
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/denoise_and_restoration/log_mmse.py, python3 src/pvx/algorithms/denoise_and_restoration/log_mmse.py --help
Module Docstring
Log-MMSE.
Comprehensive module help:
- Theme: Denoise and Restoration
- Algorithm ID: denoise_and_restoration.log_mmse
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/denoise_and_restoration/minimum_statistics_noise_tracking.py
Purpose: Minimum-statistics noise tracking.
Algorithm ID: denoise_and_restoration.minimum_statistics_noise_tracking
Theme: Denoise and Restoration
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/denoise_and_restoration/minimum_statistics_noise_tracking.py, python3 src/pvx/algorithms/denoise_and_restoration/minimum_statistics_noise_tracking.py --help
Module Docstring
Minimum-statistics noise tracking.
Comprehensive module help:
- Theme: Denoise and Restoration
- Algorithm ID: denoise_and_restoration.minimum_statistics_noise_tracking
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/denoise_and_restoration/mmse_stsa.py
Purpose: MMSE-STSA.
Algorithm ID: denoise_and_restoration.mmse_stsa
Theme: Denoise and Restoration
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/denoise_and_restoration/mmse_stsa.py, python3 src/pvx/algorithms/denoise_and_restoration/mmse_stsa.py --help
Module Docstring
MMSE-STSA.
Comprehensive module help:
- Theme: Denoise and Restoration
- Algorithm ID: denoise_and_restoration.mmse_stsa
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/denoise_and_restoration/rnnoise_style_denoiser.py
Purpose: RNNoise-style denoiser.
Algorithm ID: denoise_and_restoration.rnnoise_style_denoiser
Theme: Denoise and Restoration
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/denoise_and_restoration/rnnoise_style_denoiser.py, python3 src/pvx/algorithms/denoise_and_restoration/rnnoise_style_denoiser.py --help
Module Docstring
RNNoise-style denoiser.
Comprehensive module help:
- Theme: Denoise and Restoration
- Algorithm ID: denoise_and_restoration.rnnoise_style_denoiser
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/denoise_and_restoration/wiener_denoising.py
Purpose: Wiener denoising.
Algorithm ID: denoise_and_restoration.wiener_denoising
Theme: Denoise and Restoration
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/denoise_and_restoration/wiener_denoising.py, python3 src/pvx/algorithms/denoise_and_restoration/wiener_denoising.py --help
Module Docstring
Wiener denoising.
Comprehensive module help:
- Theme: Denoise and Restoration
- Algorithm ID: denoise_and_restoration.wiener_denoising
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/dereverb_and_room_correction/__init__.py
Purpose: Dereverb and Room Correction algorithm scaffolds.
Classes: None Functions: None
Module Docstring
Dereverb and Room Correction algorithm scaffolds.
src/pvx/algorithms/dereverb_and_room_correction/blind_deconvolution_dereverb.py
Purpose: Blind deconvolution dereverb.
Algorithm ID: dereverb_and_room_correction.blind_deconvolution_dereverb
Theme: Dereverb and Room Correction
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/dereverb_and_room_correction/blind_deconvolution_dereverb.py, python3 src/pvx/algorithms/dereverb_and_room_correction/blind_deconvolution_dereverb.py --help
Module Docstring
Blind deconvolution dereverb.
Comprehensive module help:
- Theme: Dereverb and Room Correction
- Algorithm ID: dereverb_and_room_correction.blind_deconvolution_dereverb
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/dereverb_and_room_correction/drr_guided_dereverb.py
Purpose: DRR-guided dereverb.
Algorithm ID: dereverb_and_room_correction.drr_guided_dereverb
Theme: Dereverb and Room Correction
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/dereverb_and_room_correction/drr_guided_dereverb.py, python3 src/pvx/algorithms/dereverb_and_room_correction/drr_guided_dereverb.py --help
Module Docstring
DRR-guided dereverb.
Comprehensive module help:
- Theme: Dereverb and Room Correction
- Algorithm ID: dereverb_and_room_correction.drr_guided_dereverb
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/dereverb_and_room_correction/late_reverb_suppression_via_coherence.py
Purpose: Late reverb suppression via coherence.
Algorithm ID: dereverb_and_room_correction.late_reverb_suppression_via_coherence
Theme: Dereverb and Room Correction
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/dereverb_and_room_correction/late_reverb_suppression_via_coherence.py, python3 src/pvx/algorithms/dereverb_and_room_correction/late_reverb_suppression_via_coherence.py --help
Module Docstring
Late reverb suppression via coherence.
Comprehensive module help:
- Theme: Dereverb and Room Correction
- Algorithm ID: dereverb_and_room_correction.late_reverb_suppression_via_coherence
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/dereverb_and_room_correction/multi_band_adaptive_deverb.py
Purpose: Multi-band adaptive deverb.
Algorithm ID: dereverb_and_room_correction.multi_band_adaptive_deverb
Theme: Dereverb and Room Correction
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/dereverb_and_room_correction/multi_band_adaptive_deverb.py, python3 src/pvx/algorithms/dereverb_and_room_correction/multi_band_adaptive_deverb.py --help
Module Docstring
Multi-band adaptive deverb.
Comprehensive module help:
- Theme: Dereverb and Room Correction
- Algorithm ID: dereverb_and_room_correction.multi_band_adaptive_deverb
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/dereverb_and_room_correction/neural_dereverb_module.py
Purpose: Neural dereverb module.
Algorithm ID: dereverb_and_room_correction.neural_dereverb_module
Theme: Dereverb and Room Correction
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/dereverb_and_room_correction/neural_dereverb_module.py, python3 src/pvx/algorithms/dereverb_and_room_correction/neural_dereverb_module.py --help
Module Docstring
Neural dereverb module.
Comprehensive module help:
- Theme: Dereverb and Room Correction
- Algorithm ID: dereverb_and_room_correction.neural_dereverb_module
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/dereverb_and_room_correction/room_impulse_inverse_filtering.py
Purpose: Room impulse inverse filtering.
Algorithm ID: dereverb_and_room_correction.room_impulse_inverse_filtering
Theme: Dereverb and Room Correction
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/dereverb_and_room_correction/room_impulse_inverse_filtering.py, python3 src/pvx/algorithms/dereverb_and_room_correction/room_impulse_inverse_filtering.py --help
Module Docstring
Room impulse inverse filtering.
Comprehensive module help:
- Theme: Dereverb and Room Correction
- Algorithm ID: dereverb_and_room_correction.room_impulse_inverse_filtering
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/dereverb_and_room_correction/spectral_decay_subtraction.py
Purpose: Spectral decay subtraction.
Algorithm ID: dereverb_and_room_correction.spectral_decay_subtraction
Theme: Dereverb and Room Correction
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/dereverb_and_room_correction/spectral_decay_subtraction.py, python3 src/pvx/algorithms/dereverb_and_room_correction/spectral_decay_subtraction.py --help
Module Docstring
Spectral decay subtraction.
Comprehensive module help:
- Theme: Dereverb and Room Correction
- Algorithm ID: dereverb_and_room_correction.spectral_decay_subtraction
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/dereverb_and_room_correction/wpe_dereverberation.py
Purpose: WPE dereverberation.
Algorithm ID: dereverb_and_room_correction.wpe_dereverberation
Theme: Dereverb and Room Correction
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/dereverb_and_room_correction/wpe_dereverberation.py, python3 src/pvx/algorithms/dereverb_and_room_correction/wpe_dereverberation.py --help
Module Docstring
WPE dereverberation.
Comprehensive module help:
- Theme: Dereverb and Room Correction
- Algorithm ID: dereverb_and_room_correction.wpe_dereverberation
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/dynamics_and_loudness/__init__.py
Purpose: Dynamics and Loudness algorithm scaffolds.
Classes: None Functions: None
Module Docstring
Dynamics and Loudness algorithm scaffolds.
src/pvx/algorithms/dynamics_and_loudness/ebu_r128_normalization.py
Purpose: EBU R128 normalization.
Algorithm ID: dynamics_and_loudness.ebu_r128_normalization
Theme: Dynamics and Loudness
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/dynamics_and_loudness/ebu_r128_normalization.py, python3 src/pvx/algorithms/dynamics_and_loudness/ebu_r128_normalization.py --help
Module Docstring
EBU R128 normalization.
Comprehensive module help:
- Theme: Dynamics and Loudness
- Algorithm ID: dynamics_and_loudness.ebu_r128_normalization
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/dynamics_and_loudness/itu_bs_1770_loudness_measurement_gating.py
Purpose: ITU BS.1770 loudness measurement/gating.
Algorithm ID: dynamics_and_loudness.itu_bs_1770_loudness_measurement_gating
Theme: Dynamics and Loudness
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/dynamics_and_loudness/itu_bs_1770_loudness_measurement_gating.py, python3 src/pvx/algorithms/dynamics_and_loudness/itu_bs_1770_loudness_measurement_gating.py --help
Module Docstring
ITU BS.1770 loudness measurement/gating.
Comprehensive module help:
- Theme: Dynamics and Loudness
- Algorithm ID: dynamics_and_loudness.itu_bs_1770_loudness_measurement_gating
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/dynamics_and_loudness/lufs_target_mastering_chain.py
Purpose: LUFS-target mastering chain.
Algorithm ID: dynamics_and_loudness.lufs_target_mastering_chain
Theme: Dynamics and Loudness
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/dynamics_and_loudness/lufs_target_mastering_chain.py, python3 src/pvx/algorithms/dynamics_and_loudness/lufs_target_mastering_chain.py --help
Module Docstring
LUFS-target mastering chain.
Comprehensive module help:
- Theme: Dynamics and Loudness
- Algorithm ID: dynamics_and_loudness.lufs_target_mastering_chain
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/dynamics_and_loudness/multi_band_compression.py
Purpose: Multi-band compression.
Algorithm ID: dynamics_and_loudness.multi_band_compression
Theme: Dynamics and Loudness
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/dynamics_and_loudness/multi_band_compression.py, python3 src/pvx/algorithms/dynamics_and_loudness/multi_band_compression.py --help
Module Docstring
Multi-band compression.
Comprehensive module help:
- Theme: Dynamics and Loudness
- Algorithm ID: dynamics_and_loudness.multi_band_compression
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/dynamics_and_loudness/spectral_dynamics_bin_wise_compressor_expander.py
Purpose: Spectral dynamics (bin-wise compressor/expander).
Algorithm ID: dynamics_and_loudness.spectral_dynamics_bin_wise_compressor_expander
Theme: Dynamics and Loudness
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/dynamics_and_loudness/spectral_dynamics_bin_wise_compressor_expander.py, python3 src/pvx/algorithms/dynamics_and_loudness/spectral_dynamics_bin_wise_compressor_expander.py --help
Module Docstring
Spectral dynamics (bin-wise compressor/expander).
Comprehensive module help:
- Theme: Dynamics and Loudness
- Algorithm ID: dynamics_and_loudness.spectral_dynamics_bin_wise_compressor_expander
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/dynamics_and_loudness/transient_shaping.py
Purpose: Transient shaping.
Algorithm ID: dynamics_and_loudness.transient_shaping
Theme: Dynamics and Loudness
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/dynamics_and_loudness/transient_shaping.py, python3 src/pvx/algorithms/dynamics_and_loudness/transient_shaping.py --help
Module Docstring
Transient shaping.
Comprehensive module help:
- Theme: Dynamics and Loudness
- Algorithm ID: dynamics_and_loudness.transient_shaping
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/dynamics_and_loudness/true_peak_limiting.py
Purpose: True-peak limiting.
Algorithm ID: dynamics_and_loudness.true_peak_limiting
Theme: Dynamics and Loudness
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/dynamics_and_loudness/true_peak_limiting.py, python3 src/pvx/algorithms/dynamics_and_loudness/true_peak_limiting.py --help
Module Docstring
True-peak limiting.
Comprehensive module help:
- Theme: Dynamics and Loudness
- Algorithm ID: dynamics_and_loudness.true_peak_limiting
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/dynamics_and_loudness/upward_compression.py
Purpose: Upward compression.
Algorithm ID: dynamics_and_loudness.upward_compression
Theme: Dynamics and Loudness
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/dynamics_and_loudness/upward_compression.py, python3 src/pvx/algorithms/dynamics_and_loudness/upward_compression.py --help
Module Docstring
Upward compression.
Comprehensive module help:
- Theme: Dynamics and Loudness
- Algorithm ID: dynamics_and_loudness.upward_compression
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/effects_dispatch.py
Purpose: Creative, granular, and analysis dispatch helpers for pvx wrappers.
Classes: None
Functions: dispatch_creative, dispatch_granular, dispatch_analysis
Module Docstring
Creative, granular, and analysis dispatch helpers for pvx wrappers.
src/pvx/algorithms/granular_and_modulation/__init__.py
Purpose: Granular and Modulation algorithm scaffolds.
Classes: None Functions: None
Module Docstring
Granular and Modulation algorithm scaffolds.
src/pvx/algorithms/granular_and_modulation/am_fm_ring_modulation_blocks.py
Purpose: AM/FM/ring modulation blocks.
Algorithm ID: granular_and_modulation.am_fm_ring_modulation_blocks
Theme: Granular and Modulation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/granular_and_modulation/am_fm_ring_modulation_blocks.py, python3 src/pvx/algorithms/granular_and_modulation/am_fm_ring_modulation_blocks.py --help
Module Docstring
AM/FM/ring modulation blocks.
Comprehensive module help:
- Theme: Granular and Modulation
- Algorithm ID: granular_and_modulation.am_fm_ring_modulation_blocks
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/granular_and_modulation/envelope_followed_modulation_routing.py
Purpose: Envelope-followed modulation routing.
Algorithm ID: granular_and_modulation.envelope_followed_modulation_routing
Theme: Granular and Modulation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/granular_and_modulation/envelope_followed_modulation_routing.py, python3 src/pvx/algorithms/granular_and_modulation/envelope_followed_modulation_routing.py --help
Module Docstring
Envelope-followed modulation routing.
Comprehensive module help:
- Theme: Granular and Modulation
- Algorithm ID: granular_and_modulation.envelope_followed_modulation_routing
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/granular_and_modulation/formant_lfo_modulation.py
Purpose: Formant LFO modulation.
Algorithm ID: granular_and_modulation.formant_lfo_modulation
Theme: Granular and Modulation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/granular_and_modulation/formant_lfo_modulation.py, python3 src/pvx/algorithms/granular_and_modulation/formant_lfo_modulation.py --help
Module Docstring
Formant LFO modulation.
Comprehensive module help:
- Theme: Granular and Modulation
- Algorithm ID: granular_and_modulation.formant_lfo_modulation
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/granular_and_modulation/freeze_grain_morphing.py
Purpose: Freeze-grain morphing.
Algorithm ID: granular_and_modulation.freeze_grain_morphing
Theme: Granular and Modulation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/granular_and_modulation/freeze_grain_morphing.py, python3 src/pvx/algorithms/granular_and_modulation/freeze_grain_morphing.py --help
Module Docstring
Freeze-grain morphing.
Comprehensive module help:
- Theme: Granular and Modulation
- Algorithm ID: granular_and_modulation.freeze_grain_morphing
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/granular_and_modulation/grain_cloud_pitch_textures.py
Purpose: Grain-cloud pitch textures.
Algorithm ID: granular_and_modulation.grain_cloud_pitch_textures
Theme: Granular and Modulation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/granular_and_modulation/grain_cloud_pitch_textures.py, python3 src/pvx/algorithms/granular_and_modulation/grain_cloud_pitch_textures.py --help
Module Docstring
Grain-cloud pitch textures.
Comprehensive module help:
- Theme: Granular and Modulation
- Algorithm ID: granular_and_modulation.grain_cloud_pitch_textures
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/granular_and_modulation/granular_time_stretch_engine.py
Purpose: Granular time-stretch engine.
Algorithm ID: granular_and_modulation.granular_time_stretch_engine
Theme: Granular and Modulation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/granular_and_modulation/granular_time_stretch_engine.py, python3 src/pvx/algorithms/granular_and_modulation/granular_time_stretch_engine.py --help
Module Docstring
Granular time-stretch engine.
Comprehensive module help:
- Theme: Granular and Modulation
- Algorithm ID: granular_and_modulation.granular_time_stretch_engine
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/granular_and_modulation/rhythmic_gate_stutter_quantizer.py
Purpose: Rhythmic gate/stutter quantizer.
Algorithm ID: granular_and_modulation.rhythmic_gate_stutter_quantizer
Theme: Granular and Modulation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/granular_and_modulation/rhythmic_gate_stutter_quantizer.py, python3 src/pvx/algorithms/granular_and_modulation/rhythmic_gate_stutter_quantizer.py --help
Module Docstring
Rhythmic gate/stutter quantizer.
Comprehensive module help:
- Theme: Granular and Modulation
- Algorithm ID: granular_and_modulation.rhythmic_gate_stutter_quantizer
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/granular_and_modulation/spectral_tremolo.py
Purpose: Spectral tremolo.
Algorithm ID: granular_and_modulation.spectral_tremolo
Theme: Granular and Modulation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/granular_and_modulation/spectral_tremolo.py, python3 src/pvx/algorithms/granular_and_modulation/spectral_tremolo.py --help
Module Docstring
Spectral tremolo.
Comprehensive module help:
- Theme: Granular and Modulation
- Algorithm ID: granular_and_modulation.spectral_tremolo
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/pitch_detection_and_tracking/__init__.py
Purpose: Pitch Detection and Tracking algorithm scaffolds.
Classes: None Functions: None
Module Docstring
Pitch Detection and Tracking algorithm scaffolds.
src/pvx/algorithms/pitch_detection_and_tracking/crepe_style_neural_f0.py
Purpose: CREPE-style neural F0.
Algorithm ID: pitch_detection_and_tracking.crepe_style_neural_f0
Theme: Pitch Detection and Tracking
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/pitch_detection_and_tracking/crepe_style_neural_f0.py, python3 src/pvx/algorithms/pitch_detection_and_tracking/crepe_style_neural_f0.py --help
Module Docstring
CREPE-style neural F0.
Comprehensive module help:
- Theme: Pitch Detection and Tracking
- Algorithm ID: pitch_detection_and_tracking.crepe_style_neural_f0
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/pitch_detection_and_tracking/harmonic_product_spectrum_hps.py
Purpose: Harmonic Product Spectrum (HPS).
Algorithm ID: pitch_detection_and_tracking.harmonic_product_spectrum_hps
Theme: Pitch Detection and Tracking
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/pitch_detection_and_tracking/harmonic_product_spectrum_hps.py, python3 src/pvx/algorithms/pitch_detection_and_tracking/harmonic_product_spectrum_hps.py --help
Module Docstring
Harmonic Product Spectrum (HPS).
Comprehensive module help:
- Theme: Pitch Detection and Tracking
- Algorithm ID: pitch_detection_and_tracking.harmonic_product_spectrum_hps
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/pitch_detection_and_tracking/pyin.py
Purpose: pYIN.
Algorithm ID: pitch_detection_and_tracking.pyin
Theme: Pitch Detection and Tracking
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/pitch_detection_and_tracking/pyin.py, python3 src/pvx/algorithms/pitch_detection_and_tracking/pyin.py --help
Module Docstring
pYIN.
Comprehensive module help:
- Theme: Pitch Detection and Tracking
- Algorithm ID: pitch_detection_and_tracking.pyin
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/pitch_detection_and_tracking/rapt.py
Purpose: RAPT.
Algorithm ID: pitch_detection_and_tracking.rapt
Theme: Pitch Detection and Tracking
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/pitch_detection_and_tracking/rapt.py, python3 src/pvx/algorithms/pitch_detection_and_tracking/rapt.py --help
Module Docstring
RAPT.
Comprehensive module help:
- Theme: Pitch Detection and Tracking
- Algorithm ID: pitch_detection_and_tracking.rapt
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/pitch_detection_and_tracking/subharmonic_summation.py
Purpose: Subharmonic summation.
Algorithm ID: pitch_detection_and_tracking.subharmonic_summation
Theme: Pitch Detection and Tracking
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/pitch_detection_and_tracking/subharmonic_summation.py, python3 src/pvx/algorithms/pitch_detection_and_tracking/subharmonic_summation.py --help
Module Docstring
Subharmonic summation.
Comprehensive module help:
- Theme: Pitch Detection and Tracking
- Algorithm ID: pitch_detection_and_tracking.subharmonic_summation
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/pitch_detection_and_tracking/swipe.py
Purpose: SWIPE.
Algorithm ID: pitch_detection_and_tracking.swipe
Theme: Pitch Detection and Tracking
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/pitch_detection_and_tracking/swipe.py, python3 src/pvx/algorithms/pitch_detection_and_tracking/swipe.py --help
Module Docstring
SWIPE.
Comprehensive module help:
- Theme: Pitch Detection and Tracking
- Algorithm ID: pitch_detection_and_tracking.swipe
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/pitch_detection_and_tracking/viterbi_smoothed_pitch_contour_tracking.py
Purpose: Viterbi-smoothed pitch contour tracking.
Algorithm ID: pitch_detection_and_tracking.viterbi_smoothed_pitch_contour_tracking
Theme: Pitch Detection and Tracking
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/pitch_detection_and_tracking/viterbi_smoothed_pitch_contour_tracking.py, python3 src/pvx/algorithms/pitch_detection_and_tracking/viterbi_smoothed_pitch_contour_tracking.py --help
Module Docstring
Viterbi-smoothed pitch contour tracking.
Comprehensive module help:
- Theme: Pitch Detection and Tracking
- Algorithm ID: pitch_detection_and_tracking.viterbi_smoothed_pitch_contour_tracking
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/pitch_detection_and_tracking/yin.py
Purpose: YIN.
Algorithm ID: pitch_detection_and_tracking.yin
Theme: Pitch Detection and Tracking
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/pitch_detection_and_tracking/yin.py, python3 src/pvx/algorithms/pitch_detection_and_tracking/yin.py --help
Module Docstring
YIN.
Comprehensive module help:
- Theme: Pitch Detection and Tracking
- Algorithm ID: pitch_detection_and_tracking.yin
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/pitch_dispatch.py
Purpose: Pitch, retune, and transform dispatch helpers for pvx algorithm wrappers.
Classes: None
Functions: dispatch_time_scale, dispatch_pitch_tracking, _scale_cents_from_name, dispatch_retune, dispatch_transforms
Module Docstring
Pitch, retune, and transform dispatch helpers for pvx algorithm wrappers.
src/pvx/algorithms/registry.py
Purpose: Registry for generated pvx algorithm wrappers backed by shared dispatch code.
Classes: None Functions: None
Module Docstring
Registry for generated pvx algorithm wrappers backed by shared dispatch code.
src/pvx/algorithms/retune_and_intonation/__init__.py
Purpose: Retune and Intonation algorithm scaffolds.
Classes: None Functions: None
Module Docstring
Retune and Intonation algorithm scaffolds.
src/pvx/algorithms/retune_and_intonation/adaptive_intonation_context_sensitive_intervals.py
Purpose: Adaptive intonation (context-sensitive intervals).
Algorithm ID: retune_and_intonation.adaptive_intonation_context_sensitive_intervals
Theme: Retune and Intonation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/retune_and_intonation/adaptive_intonation_context_sensitive_intervals.py, python3 src/pvx/algorithms/retune_and_intonation/adaptive_intonation_context_sensitive_intervals.py --help
Module Docstring
Adaptive intonation (context-sensitive intervals).
Comprehensive module help:
- Theme: Retune and Intonation
- Algorithm ID: retune_and_intonation.adaptive_intonation_context_sensitive_intervals
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/retune_and_intonation/chord_aware_retuning.py
Purpose: Chord-aware retuning.
Algorithm ID: retune_and_intonation.chord_aware_retuning
Theme: Retune and Intonation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/retune_and_intonation/chord_aware_retuning.py, python3 src/pvx/algorithms/retune_and_intonation/chord_aware_retuning.py --help
Module Docstring
Chord-aware retuning.
Comprehensive module help:
- Theme: Retune and Intonation
- Algorithm ID: retune_and_intonation.chord_aware_retuning
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/retune_and_intonation/just_intonation_mapping_per_key_center.py
Purpose: Just intonation mapping per key center.
Algorithm ID: retune_and_intonation.just_intonation_mapping_per_key_center
Theme: Retune and Intonation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/retune_and_intonation/just_intonation_mapping_per_key_center.py, python3 src/pvx/algorithms/retune_and_intonation/just_intonation_mapping_per_key_center.py --help
Module Docstring
Just intonation mapping per key center.
Comprehensive module help:
- Theme: Retune and Intonation
- Algorithm ID: retune_and_intonation.just_intonation_mapping_per_key_center
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/retune_and_intonation/key_aware_retuning_with_confidence_weighting.py
Purpose: Key-aware retuning with confidence weighting.
Algorithm ID: retune_and_intonation.key_aware_retuning_with_confidence_weighting
Theme: Retune and Intonation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/retune_and_intonation/key_aware_retuning_with_confidence_weighting.py, python3 src/pvx/algorithms/retune_and_intonation/key_aware_retuning_with_confidence_weighting.py --help
Module Docstring
Key-aware retuning with confidence weighting.
Comprehensive module help:
- Theme: Retune and Intonation
- Algorithm ID: retune_and_intonation.key_aware_retuning_with_confidence_weighting
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/retune_and_intonation/portamento_aware_retune_curves.py
Purpose: Portamento-aware retune curves.
Algorithm ID: retune_and_intonation.portamento_aware_retune_curves
Theme: Retune and Intonation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/retune_and_intonation/portamento_aware_retune_curves.py, python3 src/pvx/algorithms/retune_and_intonation/portamento_aware_retune_curves.py --help
Module Docstring
Portamento-aware retune curves.
Comprehensive module help:
- Theme: Retune and Intonation
- Algorithm ID: retune_and_intonation.portamento_aware_retune_curves
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/retune_and_intonation/scala_mts_scale_import_and_quantization.py
Purpose: Scala/MTS scale import and quantization.
Algorithm ID: retune_and_intonation.scala_mts_scale_import_and_quantization
Theme: Retune and Intonation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/retune_and_intonation/scala_mts_scale_import_and_quantization.py, python3 src/pvx/algorithms/retune_and_intonation/scala_mts_scale_import_and_quantization.py --help
Module Docstring
Scala/MTS scale import and quantization.
Comprehensive module help:
- Theme: Retune and Intonation
- Algorithm ID: retune_and_intonation.scala_mts_scale_import_and_quantization
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/retune_and_intonation/time_varying_cents_maps.py
Purpose: Time-varying cents maps.
Algorithm ID: retune_and_intonation.time_varying_cents_maps
Theme: Retune and Intonation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/retune_and_intonation/time_varying_cents_maps.py, python3 src/pvx/algorithms/retune_and_intonation/time_varying_cents_maps.py --help
Module Docstring
Time-varying cents maps.
Comprehensive module help:
- Theme: Retune and Intonation
- Algorithm ID: retune_and_intonation.time_varying_cents_maps
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/retune_and_intonation/vibrato_preserving_correction.py
Purpose: Vibrato-preserving correction.
Algorithm ID: retune_and_intonation.vibrato_preserving_correction
Theme: Retune and Intonation
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/retune_and_intonation/vibrato_preserving_correction.py, python3 src/pvx/algorithms/retune_and_intonation/vibrato_preserving_correction.py --help
Module Docstring
Vibrato-preserving correction.
Comprehensive module help:
- Theme: Retune and Intonation
- Algorithm ID: retune_and_intonation.vibrato_preserving_correction
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/separation_and_decomposition/__init__.py
Purpose: Separation and Decomposition algorithm scaffolds.
Classes: None Functions: None
Module Docstring
Separation and Decomposition algorithm scaffolds.
src/pvx/algorithms/separation_and_decomposition/demucs_style_stem_separation_backend.py
Purpose: Demucs-style stem separation backend.
Algorithm ID: separation_and_decomposition.demucs_style_stem_separation_backend
Theme: Separation and Decomposition
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/separation_and_decomposition/demucs_style_stem_separation_backend.py, python3 src/pvx/algorithms/separation_and_decomposition/demucs_style_stem_separation_backend.py --help
Module Docstring
Demucs-style stem separation backend.
Comprehensive module help:
- Theme: Separation and Decomposition
- Algorithm ID: separation_and_decomposition.demucs_style_stem_separation_backend
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/separation_and_decomposition/ica_bss_for_multichannel_stems.py
Purpose: ICA/BSS for multichannel stems.
Algorithm ID: separation_and_decomposition.ica_bss_for_multichannel_stems
Theme: Separation and Decomposition
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/separation_and_decomposition/ica_bss_for_multichannel_stems.py, python3 src/pvx/algorithms/separation_and_decomposition/ica_bss_for_multichannel_stems.py --help
Module Docstring
ICA/BSS for multichannel stems.
Comprehensive module help:
- Theme: Separation and Decomposition
- Algorithm ID: separation_and_decomposition.ica_bss_for_multichannel_stems
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/separation_and_decomposition/nmf_decomposition.py
Purpose: NMF decomposition.
Algorithm ID: separation_and_decomposition.nmf_decomposition
Theme: Separation and Decomposition
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/separation_and_decomposition/nmf_decomposition.py, python3 src/pvx/algorithms/separation_and_decomposition/nmf_decomposition.py --help
Module Docstring
NMF decomposition.
Comprehensive module help:
- Theme: Separation and Decomposition
- Algorithm ID: separation_and_decomposition.nmf_decomposition
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/separation_and_decomposition/probabilistic_latent_component_separation.py
Purpose: Probabilistic latent component separation.
Algorithm ID: separation_and_decomposition.probabilistic_latent_component_separation
Theme: Separation and Decomposition
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/separation_and_decomposition/probabilistic_latent_component_separation.py, python3 src/pvx/algorithms/separation_and_decomposition/probabilistic_latent_component_separation.py --help
Module Docstring
Probabilistic latent component separation.
Comprehensive module help:
- Theme: Separation and Decomposition
- Algorithm ID: separation_and_decomposition.probabilistic_latent_component_separation
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/separation_and_decomposition/rpca_hpss.py
Purpose: RPCA HPSS.
Algorithm ID: separation_and_decomposition.rpca_hpss
Theme: Separation and Decomposition
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/separation_and_decomposition/rpca_hpss.py, python3 src/pvx/algorithms/separation_and_decomposition/rpca_hpss.py --help
Module Docstring
RPCA HPSS.
Comprehensive module help:
- Theme: Separation and Decomposition
- Algorithm ID: separation_and_decomposition.rpca_hpss
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/separation_and_decomposition/sinusoidal_residual_transient_decomposition.py
Purpose: Sinusoidal+residual+transient decomposition.
Algorithm ID: separation_and_decomposition.sinusoidal_residual_transient_decomposition
Theme: Separation and Decomposition
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/separation_and_decomposition/sinusoidal_residual_transient_decomposition.py, python3 src/pvx/algorithms/separation_and_decomposition/sinusoidal_residual_transient_decomposition.py --help
Module Docstring
Sinusoidal+residual+transient decomposition.
Comprehensive module help:
- Theme: Separation and Decomposition
- Algorithm ID: separation_and_decomposition.sinusoidal_residual_transient_decomposition
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/separation_and_decomposition/tensor_decomposition_cp_tucker.py
Purpose: Tensor decomposition (CP/Tucker).
Algorithm ID: separation_and_decomposition.tensor_decomposition_cp_tucker
Theme: Separation and Decomposition
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/separation_and_decomposition/tensor_decomposition_cp_tucker.py, python3 src/pvx/algorithms/separation_and_decomposition/tensor_decomposition_cp_tucker.py --help
Module Docstring
Tensor decomposition (CP/Tucker).
Comprehensive module help:
- Theme: Separation and Decomposition
- Algorithm ID: separation_and_decomposition.tensor_decomposition_cp_tucker
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/separation_and_decomposition/u_net_vocal_accompaniment_split.py
Purpose: U-Net vocal/accompaniment split.
Algorithm ID: separation_and_decomposition.u_net_vocal_accompaniment_split
Theme: Separation and Decomposition
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/separation_and_decomposition/u_net_vocal_accompaniment_split.py, python3 src/pvx/algorithms/separation_and_decomposition/u_net_vocal_accompaniment_split.py --help
Module Docstring
U-Net vocal/accompaniment split.
Comprehensive module help:
- Theme: Separation and Decomposition
- Algorithm ID: separation_and_decomposition.u_net_vocal_accompaniment_split
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/__init__.py
Purpose: Spatial and multichannel algorithm scaffolds.
Classes: None Functions: None
Module Docstring
Spatial and multichannel algorithm scaffolds.
src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/__init__.py
Purpose: Spatial and multichannel: creative spatial fx.
Classes: None Functions: None
Module Docstring
Spatial and multichannel: creative spatial fx.
src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/binaural_motion_trajectory_designer.py
Purpose: Binaural motion trajectory designer.
Algorithm ID: spatial_and_multichannel.binaural_motion_trajectory_designer
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/binaural_motion_trajectory_designer.py, python3 src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/binaural_motion_trajectory_designer.py --help
Module Docstring
Binaural motion trajectory designer.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.binaural_motion_trajectory_designer
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/decorrelated_reverb_upmix.py
Purpose: Decorrelated reverb upmix.
Algorithm ID: spatial_and_multichannel.decorrelated_reverb_upmix
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/decorrelated_reverb_upmix.py, python3 src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/decorrelated_reverb_upmix.py --help
Module Docstring
Decorrelated reverb upmix.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.decorrelated_reverb_upmix
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/rotating_speaker_doppler_field.py
Purpose: Rotating-speaker Doppler field.
Algorithm ID: spatial_and_multichannel.rotating_speaker_doppler_field
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/rotating_speaker_doppler_field.py, python3 src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/rotating_speaker_doppler_field.py --help
Module Docstring
Rotating-speaker Doppler field.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.rotating_speaker_doppler_field
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/spatial_freeze_resynthesis.py
Purpose: Spatial freeze resynthesis.
Algorithm ID: spatial_and_multichannel.spatial_freeze_resynthesis
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/spatial_freeze_resynthesis.py, python3 src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/spatial_freeze_resynthesis.py --help
Module Docstring
Spatial freeze resynthesis.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.spatial_freeze_resynthesis
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/spectral_spatial_granulator.py
Purpose: Spectral spatial granulator.
Algorithm ID: spatial_and_multichannel.spectral_spatial_granulator
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/spectral_spatial_granulator.py, python3 src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/spectral_spatial_granulator.py --help
Module Docstring
Spectral spatial granulator.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.spectral_spatial_granulator
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/stochastic_spatial_diffusion_cloud.py
Purpose: Stochastic spatial diffusion cloud.
Algorithm ID: spatial_and_multichannel.stochastic_spatial_diffusion_cloud
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/stochastic_spatial_diffusion_cloud.py, python3 src/pvx/algorithms/spatial_and_multichannel/creative_spatial_fx/stochastic_spatial_diffusion_cloud.py --help
Module Docstring
Stochastic spatial diffusion cloud.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.stochastic_spatial_diffusion_cloud
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/__init__.py
Purpose: Spatial and multichannel: imaging and panning.
Classes: None Functions: None
Module Docstring
Spatial and multichannel: imaging and panning.
src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/binaural_itd_ild_synthesis.py
Purpose: Binaural ITD/ILD synthesis.
Algorithm ID: spatial_and_multichannel.binaural_itd_ild_synthesis
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/binaural_itd_ild_synthesis.py, python3 src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/binaural_itd_ild_synthesis.py --help
Module Docstring
Binaural ITD/ILD synthesis.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.binaural_itd_ild_synthesis
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/dbap_distance_based_amplitude_panning.py
Purpose: DBAP (distance-based amplitude panning).
Algorithm ID: spatial_and_multichannel.dbap_distance_based_amplitude_panning
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/dbap_distance_based_amplitude_panning.py, python3 src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/dbap_distance_based_amplitude_panning.py --help
Module Docstring
DBAP (distance-based amplitude panning).
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.dbap_distance_based_amplitude_panning
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/phase_aligned_mid_side_field_rotation.py
Purpose: Phase-aligned mid/side field rotation.
Algorithm ID: spatial_and_multichannel.phase_aligned_mid_side_field_rotation
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/phase_aligned_mid_side_field_rotation.py, python3 src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/phase_aligned_mid_side_field_rotation.py --help
Module Docstring
Phase-aligned mid/side field rotation.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.phase_aligned_mid_side_field_rotation
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/stereo_width_frequency_dependent_control.py
Purpose: Stereo width (frequency-dependent control).
Algorithm ID: spatial_and_multichannel.stereo_width_frequency_dependent_control
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/stereo_width_frequency_dependent_control.py, python3 src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/stereo_width_frequency_dependent_control.py --help
Module Docstring
Stereo width (frequency-dependent control).
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.stereo_width_frequency_dependent_control
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/transaural_crosstalk_cancellation.py
Purpose: Transaural crosstalk cancellation.
Algorithm ID: spatial_and_multichannel.transaural_crosstalk_cancellation
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/transaural_crosstalk_cancellation.py, python3 src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/transaural_crosstalk_cancellation.py --help
Module Docstring
Transaural crosstalk cancellation.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.transaural_crosstalk_cancellation
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/vbap_adaptive_panning.py
Purpose: VBAP adaptive panning.
Algorithm ID: spatial_and_multichannel.vbap_adaptive_panning
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/vbap_adaptive_panning.py, python3 src/pvx/algorithms/spatial_and_multichannel/imaging_and_panning/vbap_adaptive_panning.py --help
Module Docstring
VBAP adaptive panning.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.vbap_adaptive_panning
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/__init__.py
Purpose: Spatial and multichannel: multichannel restoration.
Classes: None Functions: None
Module Docstring
Spatial and multichannel: multichannel restoration.
src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/coherence_based_dereverb_multichannel.py
Purpose: Coherence-based dereverb (multichannel).
Algorithm ID: spatial_and_multichannel.coherence_based_dereverb_multichannel
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/coherence_based_dereverb_multichannel.py, python3 src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/coherence_based_dereverb_multichannel.py --help
Module Docstring
Coherence-based dereverb (multichannel).
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.coherence_based_dereverb_multichannel
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/cross_channel_click_pop_repair.py
Purpose: Cross-channel click/pop repair.
Algorithm ID: spatial_and_multichannel.cross_channel_click_pop_repair
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/cross_channel_click_pop_repair.py, python3 src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/cross_channel_click_pop_repair.py --help
Module Docstring
Cross-channel click/pop repair.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.cross_channel_click_pop_repair
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/microphone_array_calibration_tones.py
Purpose: Microphone-array calibration tones.
Algorithm ID: spatial_and_multichannel.microphone_array_calibration_tones
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/microphone_array_calibration_tones.py, python3 src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/microphone_array_calibration_tones.py --help
Module Docstring
Microphone-array calibration tones.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.microphone_array_calibration_tones
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/multichannel_noise_psd_tracking.py
Purpose: Multichannel noise PSD tracking.
Algorithm ID: spatial_and_multichannel.multichannel_noise_psd_tracking
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/multichannel_noise_psd_tracking.py, python3 src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/multichannel_noise_psd_tracking.py --help
Module Docstring
Multichannel noise PSD tracking.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.multichannel_noise_psd_tracking
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/multichannel_wiener_postfilter.py
Purpose: Multichannel Wiener postfilter.
Algorithm ID: spatial_and_multichannel.multichannel_wiener_postfilter
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/multichannel_wiener_postfilter.py, python3 src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/multichannel_wiener_postfilter.py --help
Module Docstring
Multichannel Wiener postfilter.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.multichannel_wiener_postfilter
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/phase_consistent_multichannel_denoise.py
Purpose: Phase-consistent multichannel denoise.
Algorithm ID: spatial_and_multichannel.phase_consistent_multichannel_denoise
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/phase_consistent_multichannel_denoise.py, python3 src/pvx/algorithms/spatial_and_multichannel/multichannel_restoration/phase_consistent_multichannel_denoise.py --help
Module Docstring
Phase-consistent multichannel denoise.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.phase_consistent_multichannel_denoise
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/__init__.py
Purpose: Spatial and multichannel: phase vocoder spatial.
Classes: None Functions: None
Module Docstring
Spatial and multichannel: phase vocoder spatial.
src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_directional_spectral_warp.py
Purpose: pvx directional spectral warp.
Algorithm ID: spatial_and_multichannel.pvx_directional_spectral_warp
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_directional_spectral_warp.py, python3 src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_directional_spectral_warp.py --help
Module Docstring
pvx directional spectral warp.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.pvx_directional_spectral_warp
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_interaural_coherence_shaping.py
Purpose: pvx interaural coherence shaping.
Algorithm ID: spatial_and_multichannel.pvx_interaural_coherence_shaping
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_interaural_coherence_shaping.py, python3 src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_interaural_coherence_shaping.py --help
Module Docstring
pvx interaural coherence shaping.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.pvx_interaural_coherence_shaping
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_interchannel_phase_locking.py
Purpose: pvx interchannel phase locking.
Algorithm ID: spatial_and_multichannel.pvx_interchannel_phase_locking
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_interchannel_phase_locking.py, python3 src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_interchannel_phase_locking.py --help
Module Docstring
pvx interchannel phase locking.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.pvx_interchannel_phase_locking
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_multichannel_time_alignment.py
Purpose: pvx multichannel time alignment.
Algorithm ID: spatial_and_multichannel.pvx_multichannel_time_alignment
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_multichannel_time_alignment.py, python3 src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_multichannel_time_alignment.py --help
Module Docstring
pvx multichannel time alignment.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.pvx_multichannel_time_alignment
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_spatial_freeze_and_trajectory.py
Purpose: pvx spatial freeze and trajectory.
Algorithm ID: spatial_and_multichannel.pvx_spatial_freeze_and_trajectory
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_spatial_freeze_and_trajectory.py, python3 src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_spatial_freeze_and_trajectory.py --help
Module Docstring
pvx spatial freeze and trajectory.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.pvx_spatial_freeze_and_trajectory
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_spatial_transient_preservation.py
Purpose: pvx spatial transient preservation.
Algorithm ID: spatial_and_multichannel.pvx_spatial_transient_preservation
Theme: Spatial and Multichannel
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_spatial_transient_preservation.py, python3 src/pvx/algorithms/spatial_and_multichannel/phase_vocoder_spatial/pvx_spatial_transient_preservation.py --help
Module Docstring
pvx spatial transient preservation.
Comprehensive module help:
- Theme: Spatial and Multichannel
- Algorithm ID: spatial_and_multichannel.pvx_spatial_transient_preservation
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spatial_dispatch.py
Purpose: Spatial algorithm dispatch helpers for pvx algorithm wrappers.
Classes: None
Functions: _spatial_to_channels, _spatial_fractional_delay, _spatial_apply_delays, _spatial_circular_gains, _spatial_delay_by_xcorr, _spatial_estimate_channel_delays, _spatial_synthetic_rir, dispatch_spatial
Module Docstring
Spatial algorithm dispatch helpers for pvx algorithm wrappers.
src/pvx/algorithms/spectral_time_frequency_transforms/__init__.py
Purpose: Spectral and Time-Frequency Transforms algorithm scaffolds.
Classes: None Functions: None
Module Docstring
Spectral and Time-Frequency Transforms algorithm scaffolds.
src/pvx/algorithms/spectral_time_frequency_transforms/chirplet_transform_analysis.py
Purpose: Chirplet transform analysis.
Algorithm ID: spectral_time_frequency_transforms.chirplet_transform_analysis
Theme: Spectral and Time-Frequency Transforms
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spectral_time_frequency_transforms/chirplet_transform_analysis.py, python3 src/pvx/algorithms/spectral_time_frequency_transforms/chirplet_transform_analysis.py --help
Module Docstring
Chirplet transform analysis.
Comprehensive module help:
- Theme: Spectral and Time-Frequency Transforms
- Algorithm ID: spectral_time_frequency_transforms.chirplet_transform_analysis
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spectral_time_frequency_transforms/constant_q_transform_cqt_processing.py
Purpose: Constant-Q Transform (CQT) processing.
Algorithm ID: spectral_time_frequency_transforms.constant_q_transform_cqt_processing
Theme: Spectral and Time-Frequency Transforms
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spectral_time_frequency_transforms/constant_q_transform_cqt_processing.py, python3 src/pvx/algorithms/spectral_time_frequency_transforms/constant_q_transform_cqt_processing.py --help
Module Docstring
Constant-Q Transform (CQT) processing.
Comprehensive module help:
- Theme: Spectral and Time-Frequency Transforms
- Algorithm ID: spectral_time_frequency_transforms.constant_q_transform_cqt_processing
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spectral_time_frequency_transforms/multi_window_stft_fusion.py
Purpose: Multi-window STFT fusion.
Algorithm ID: spectral_time_frequency_transforms.multi_window_stft_fusion
Theme: Spectral and Time-Frequency Transforms
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spectral_time_frequency_transforms/multi_window_stft_fusion.py, python3 src/pvx/algorithms/spectral_time_frequency_transforms/multi_window_stft_fusion.py --help
Module Docstring
Multi-window STFT fusion.
Comprehensive module help:
- Theme: Spectral and Time-Frequency Transforms
- Algorithm ID: spectral_time_frequency_transforms.multi_window_stft_fusion
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spectral_time_frequency_transforms/nsgt_based_processing.py
Purpose: NSGT-based processing.
Algorithm ID: spectral_time_frequency_transforms.nsgt_based_processing
Theme: Spectral and Time-Frequency Transforms
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spectral_time_frequency_transforms/nsgt_based_processing.py, python3 src/pvx/algorithms/spectral_time_frequency_transforms/nsgt_based_processing.py --help
Module Docstring
NSGT-based processing.
Comprehensive module help:
- Theme: Spectral and Time-Frequency Transforms
- Algorithm ID: spectral_time_frequency_transforms.nsgt_based_processing
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spectral_time_frequency_transforms/reassigned_spectrogram_methods.py
Purpose: Reassigned spectrogram methods.
Algorithm ID: spectral_time_frequency_transforms.reassigned_spectrogram_methods
Theme: Spectral and Time-Frequency Transforms
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spectral_time_frequency_transforms/reassigned_spectrogram_methods.py, python3 src/pvx/algorithms/spectral_time_frequency_transforms/reassigned_spectrogram_methods.py --help
Module Docstring
Reassigned spectrogram methods.
Comprehensive module help:
- Theme: Spectral and Time-Frequency Transforms
- Algorithm ID: spectral_time_frequency_transforms.reassigned_spectrogram_methods
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spectral_time_frequency_transforms/synchrosqueezed_stft.py
Purpose: Synchrosqueezed STFT.
Algorithm ID: spectral_time_frequency_transforms.synchrosqueezed_stft
Theme: Spectral and Time-Frequency Transforms
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spectral_time_frequency_transforms/synchrosqueezed_stft.py, python3 src/pvx/algorithms/spectral_time_frequency_transforms/synchrosqueezed_stft.py --help
Module Docstring
Synchrosqueezed STFT.
Comprehensive module help:
- Theme: Spectral and Time-Frequency Transforms
- Algorithm ID: spectral_time_frequency_transforms.synchrosqueezed_stft
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spectral_time_frequency_transforms/variable_q_transform_vqt.py
Purpose: Variable-Q Transform (VQT).
Algorithm ID: spectral_time_frequency_transforms.variable_q_transform_vqt
Theme: Spectral and Time-Frequency Transforms
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spectral_time_frequency_transforms/variable_q_transform_vqt.py, python3 src/pvx/algorithms/spectral_time_frequency_transforms/variable_q_transform_vqt.py --help
Module Docstring
Variable-Q Transform (VQT).
Comprehensive module help:
- Theme: Spectral and Time-Frequency Transforms
- Algorithm ID: spectral_time_frequency_transforms.variable_q_transform_vqt
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/spectral_time_frequency_transforms/wavelet_packet_processing.py
Purpose: Wavelet packet processing.
Algorithm ID: spectral_time_frequency_transforms.wavelet_packet_processing
Theme: Spectral and Time-Frequency Transforms
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/spectral_time_frequency_transforms/wavelet_packet_processing.py, python3 src/pvx/algorithms/spectral_time_frequency_transforms/wavelet_packet_processing.py --help
Module Docstring
Wavelet packet processing.
Comprehensive module help:
- Theme: Spectral and Time-Frequency Transforms
- Algorithm ID: spectral_time_frequency_transforms.wavelet_packet_processing
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/time_scale_and_pitch_core/__init__.py
Purpose: Time-Scale and Pitch Core algorithm scaffolds.
Classes: None Functions: None
Module Docstring
Time-Scale and Pitch Core algorithm scaffolds.
src/pvx/algorithms/time_scale_and_pitch_core/beat_synchronous_time_warping.py
Purpose: Beat-synchronous time warping.
Algorithm ID: time_scale_and_pitch_core.beat_synchronous_time_warping
Theme: Time-Scale and Pitch Core
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/time_scale_and_pitch_core/beat_synchronous_time_warping.py, python3 src/pvx/algorithms/time_scale_and_pitch_core/beat_synchronous_time_warping.py --help
Module Docstring
Beat-synchronous time warping.
Comprehensive module help:
- Theme: Time-Scale and Pitch Core
- Algorithm ID: time_scale_and_pitch_core.beat_synchronous_time_warping
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/time_scale_and_pitch_core/harmonic_percussive_split_tsm.py
Purpose: Harmonic/percussive split TSM.
Algorithm ID: time_scale_and_pitch_core.harmonic_percussive_split_tsm
Theme: Time-Scale and Pitch Core
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/time_scale_and_pitch_core/harmonic_percussive_split_tsm.py, python3 src/pvx/algorithms/time_scale_and_pitch_core/harmonic_percussive_split_tsm.py --help
Module Docstring
Harmonic/percussive split TSM.
Comprehensive module help:
- Theme: Time-Scale and Pitch Core
- Algorithm ID: time_scale_and_pitch_core.harmonic_percussive_split_tsm
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/time_scale_and_pitch_core/lp_psola.py
Purpose: LP-PSOLA.
Algorithm ID: time_scale_and_pitch_core.lp_psola
Theme: Time-Scale and Pitch Core
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/time_scale_and_pitch_core/lp_psola.py, python3 src/pvx/algorithms/time_scale_and_pitch_core/lp_psola.py --help
Module Docstring
LP-PSOLA.
Comprehensive module help:
- Theme: Time-Scale and Pitch Core
- Algorithm ID: time_scale_and_pitch_core.lp_psola
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/time_scale_and_pitch_core/multi_resolution_phase_vocoder.py
Purpose: Multi-resolution phase vocoder.
Algorithm ID: time_scale_and_pitch_core.multi_resolution_phase_vocoder
Theme: Time-Scale and Pitch Core
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/time_scale_and_pitch_core/multi_resolution_phase_vocoder.py, python3 src/pvx/algorithms/time_scale_and_pitch_core/multi_resolution_phase_vocoder.py --help
Module Docstring
Multi-resolution phase vocoder.
Comprehensive module help:
- Theme: Time-Scale and Pitch Core
- Algorithm ID: time_scale_and_pitch_core.multi_resolution_phase_vocoder
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/time_scale_and_pitch_core/nonlinear_time_maps.py
Purpose: Nonlinear time maps (curves, anchors, spline timing).
Algorithm ID: time_scale_and_pitch_core.nonlinear_time_maps
Theme: Time-Scale and Pitch Core
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/time_scale_and_pitch_core/nonlinear_time_maps.py, python3 src/pvx/algorithms/time_scale_and_pitch_core/nonlinear_time_maps.py --help
Module Docstring
Nonlinear time maps (curves, anchors, spline timing).
Comprehensive module help:
- Theme: Time-Scale and Pitch Core
- Algorithm ID: time_scale_and_pitch_core.nonlinear_time_maps
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/time_scale_and_pitch_core/td_psola.py
Purpose: TD-PSOLA.
Algorithm ID: time_scale_and_pitch_core.td_psola
Theme: Time-Scale and Pitch Core
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/time_scale_and_pitch_core/td_psola.py, python3 src/pvx/algorithms/time_scale_and_pitch_core/td_psola.py --help
Module Docstring
TD-PSOLA.
Comprehensive module help:
- Theme: Time-Scale and Pitch Core
- Algorithm ID: time_scale_and_pitch_core.td_psola
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/algorithms/time_scale_and_pitch_core/wsola_waveform_similarity_overlap_add.py
Purpose: WSOLA (Waveform Similarity Overlap-Add).
Algorithm ID: time_scale_and_pitch_core.wsola_waveform_similarity_overlap_add
Theme: Time-Scale and Pitch Core
Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
Parameter docs: see docs/PVX_ALGORITHM_PARAMS.md.
Classes: None
Functions: process, module_help_text, build_parser, main
Help commands: python3 src/pvx/algorithms/time_scale_and_pitch_core/wsola_waveform_similarity_overlap_add.py, python3 src/pvx/algorithms/time_scale_and_pitch_core/wsola_waveform_similarity_overlap_add.py --help
Module Docstring
WSOLA (Waveform Similarity Overlap-Add).
Comprehensive module help:
- Theme: Time-Scale and Pitch Core
- Algorithm ID: time_scale_and_pitch_core.wsola_waveform_similarity_overlap_add
- Primary API: process(audio, sample_rate, **params) -> AlgorithmResult
- Backend: delegates to pvx.algorithms.base.run_algorithm()
This module is both importable and executable.
When executed directly, it prints verbose help text describing purpose,
I/O contract, and parameter-routing behavior.
src/pvx/augment/__init__.py
Purpose: pvx.augment โ Audio data augmentation Python API.
Classes: None
Functions: asr_pipeline, music_pipeline, speech_enhancement_pipeline, contrastive_pipeline
Module Docstring
pvx.augment โ Audio data augmentation Python API.
.. warning::
**Alpha release (0.1.0a1).** This API is under active development.
Public interfaces may change between minor versions until 1.0.
Pin your dependency to an exact version (``pvx==0.1.0a1``) if you
need stability, and please report issues on GitHub.
A composable, NumPy-native augmentation library built on the pvx DSP engine.
All transforms follow a uniform ``(audio, sr, seed=None) -> (audio, sr)``
interface and are fully reproducible given a fixed seed.
Quick start
-----------
>>> import soundfile as sf
>>> import numpy as np
>>> from pvx.augment import Pipeline, AddNoise, RoomSimulator, SpecAugment, GainPerturber
>>>
>>> audio, sr = sf.read("speech.wav", always_2d=False)
>>>
>>> pipeline = Pipeline([
... GainPerturber(gain_db=(-3, 3), p=0.8),
... RoomSimulator(rt60_range=(0.1, 0.6), wet_range=(0.2, 0.7), p=0.5),
... AddNoise(snr_db=(15, 35), noise_type="pink", p=0.6),
... SpecAugment(freq_mask_param=20, time_mask_param=40, p=0.5),
... ], seed=42)
>>>
>>> audio_aug, sr_out = pipeline(audio, sr)
Framework integrations
----------------------
PyTorch::
from pvx.integrations.pytorch import PvxAugmentDataset
dataset = PvxAugmentDataset(file_list, pipeline, sample_rate=16000)
loader = torch.utils.data.DataLoader(dataset, batch_size=32)
HuggingFace datasets::
from pvx.integrations.huggingface import make_augment_map_fn
augment_fn = make_augment_map_fn(pipeline, audio_column="audio")
ds_aug = ds.map(augment_fn, batched=False)
TensorFlow::
from pvx.integrations.tensorflow import make_tf_augment_fn
augment_fn = make_tf_augment_fn(pipeline, sample_rate=16000)
tf_dataset = tf_dataset.map(augment_fn)
src/pvx/augment/codec.py
Purpose: Codec and transmission degradation transforms.
Classes: CodecDegradation, BitCrusher, BandwidthLimiter
Functions: _lowpass, _bandpass, _quantize, _resample_simulate
Module Docstring
Codec and transmission degradation transforms.
Simulates lossy audio compression (mp3-like, telephone, VoIP), bit-depth
reduction (bit-crushing), and low-fidelity recording artifacts โ all using
only NumPy and SciPy (no external codec binaries required).
src/pvx/augment/config.py
Purpose: Declarative pipeline configuration for pvx.augment.
Classes: None
Functions: _load_manifest, _camel_to_snake, _builtin_transform_index, _torch_transform_index, _resolve_transform_class, _build_transform, load_pipeline, load_torch_pipeline
Module Docstring
Declarative pipeline configuration for ``pvx.augment``.
Lets users describe an augmentation pipeline in YAML or JSON instead of
constructing transforms in Python. The same manifest format works for both
NumPy (``Pipeline``) and GPU (``TorchPipeline``) backends.
Manifest structure
------------------
.. code-block:: yaml
seed: 1337
p: 1.0
transforms:
- name: gain_perturber
params:
gain_db: [-6.0, 6.0]
p: 0.8
- name: add_noise
params:
snr_db: [15.0, 35.0]
noise_type: pink
p: 0.6
- name: spec_augment
params:
freq_mask_param: 20
time_mask_param: 30
p: 0.5
The ``name`` field is resolved against the plugin registry first
(:func:`pvx.augment.get_transform`), then against built-in transform
classes by snake_case-stripped class name. ``params`` are forwarded
verbatim to the constructor.
Loading
-------
>>> from pvx.augment.config import load_pipeline
>>> pipeline = load_pipeline("recipes/asr_robust.yaml")
>>> audio_aug, sr = pipeline(audio, sr)
For the GPU backend:
>>> from pvx.augment.config import load_torch_pipeline
>>> torch_pipeline = load_torch_pipeline("recipes/asr_robust.yaml")
>>> tensor_aug = torch_pipeline(tensor, sr=16000)
src/pvx/augment/core.py
Purpose: Core base classes for pvx augmentation transforms.
Classes: Transform, Pipeline, OneOf, SomeOf, RandomApply, Identity, TransformResult
Functions: _to_2d, _from_2d, load_audio, save_audio, fingerprint_audio, register_transform, get_transform, list_transforms, _load_entry_point_plugins, _to_snake_case
Module Docstring
Core base classes for pvx augmentation transforms.
All transforms operate on NumPy arrays with shape (channels, samples) or
(samples,) for mono. They return ``(audio, sample_rate)`` pairs and are
fully composable.
src/pvx/augment/gpu.py
Purpose: GPU-accelerated augmentation transforms using PyTorch.
Classes: TorchTransform, TorchGainPerturber, TorchAddNoise, TorchEQPerturber, TorchSpecAugment, TorchNormalizer, TorchClippingSimulator, TorchPipeline, TorchTimeStretch, TorchPitchShift, TorchRoomSimulator, TorchMixup, NumpyTransformAdapter
Functions: _require_torch, _torch_phase_vocoder, batch_process_files
Module Docstring
GPU-accelerated augmentation transforms using PyTorch.
These transforms operate directly on ``torch.Tensor`` objects and can run
on CUDA, MPS, or CPU devices. They avoid NumPy round-tripping and support
batched operation for maximum throughput during training.
.. warning::
**Alpha release (0.1.0a1).** This module is under active development.
Requirements
------------
``torch`` must be installed::
pip install "pvx[torch]"
Usage
-----
>>> import torch
>>> from pvx.augment.gpu import TorchGainPerturber, TorchSpecAugment, TorchPipeline
>>>
>>> pipeline = TorchPipeline([
... TorchGainPerturber(gain_db=(-6, 6), p=0.8),
... TorchAddNoise(snr_db=(10, 30), noise_type="white", p=0.5),
... TorchSpecAugment(freq_mask_param=27, time_mask_param=100, p=0.5),
... ])
>>>
>>> audio = torch.randn(16, 1, 48000) # (batch, channels, samples)
>>> audio_aug = pipeline(audio, sr=16000)
src/pvx/augment/ir_database.py
Purpose: Curated impulse response (IR) database integration.
Classes: IRDatabase
Functions: None
Module Docstring
Curated impulse response (IR) database integration.
Provides a simple downloader and cache manager for publicly available
impulse response collections, enabling physics-based room acoustics
augmentation via :class:`pvx.augment.ImpulseResponseConvolver`.
Supported databases
-------------------
- **EchoThief** โ 115 real-world IRs from concert halls, churches,
tunnels, parking garages, and other spaces. CC BY license.
http://www.echothief.com
- **OpenAIR** โ University of York's open acoustic impulse response
library with measured IRs from real spaces.
https://openairlib.net
Usage
-----
>>> from pvx.augment.ir_database import IRDatabase
>>>
>>> db = IRDatabase(cache_dir="~/.pvx/ir_cache")
>>> db.download("echothief")
>>>
>>> # Use with ImpulseResponseConvolver
>>> from pvx.augment import ImpulseResponseConvolver
>>> aug = ImpulseResponseConvolver(db.ir_dir("echothief"), wet_range=(0.4, 1.0))
>>>
>>> # Or get specific IRs by room category
>>> halls = db.filter("echothief", category="hall")
>>> aug = ImpulseResponseConvolver(halls, wet_range=(0.5, 0.9))
src/pvx/augment/noise.py
Purpose: Noise-based audio augmentation transforms.
Classes: AddNoise, BackgroundMixer, ImpulseNoise
Functions: _db_to_linear, _linear_to_db, _rms, _scale_to_snr, _generate_white_noise, _generate_pink_noise, _generate_brown_noise, _generate_bandlimited_noise
Module Docstring
Noise-based audio augmentation transforms.
Provides additive noise injection at controlled SNR levels, background
audio mixing, and impulse noise (click/pop) simulation. All transforms
are NumPy-native and require only ``scipy`` as an optional dependency for
spectral-shaped noise generation.
src/pvx/augment/room.py
Purpose: Room acoustics augmentation transforms.
Classes: RoomSimulator, ImpulseResponseConvolver
Functions: _generate_synthetic_rir
Module Docstring
Room acoustics augmentation transforms.
Provides synthetic room impulse response (RIR) approximation via an
exponentially-decaying noise model and convolution with arbitrary
user-supplied impulse response files.
The synthetic RIR generator is a lightweight statistical approximation
suitable for data augmentation โ it does *not* perform physical room
modelling (image-source or ray-tracing). For physics-based simulation,
use external tools such as ``pyroomacoustics`` or ``gpuRIR`` and load
the resulting IR files with :class:`ImpulseResponseConvolver`.
No external neural-network dependencies required.
src/pvx/augment/spectral.py
Purpose: Spectral-domain augmentation transforms.
Classes: SpecAugment, EQPerturber, SpectralNoise, PitchShiftSimple
Functions: _stft, _istft
Module Docstring
Spectral-domain augmentation transforms.
Implements SpecAugment (frequency and time masking), random EQ perturbation,
spectral noise injection, and harmonic distortion โ all operating in the
STFT domain with overlap-add resynthesis.
src/pvx/augment/streaming.py
Purpose: Streaming / chunked augmentation for long-form audio.
Classes: None
Functions: _hann_fade, stream_augment, stream_augment_file, stream_augment_directory
Module Docstring
Streaming / chunked augmentation for long-form audio.
Processes audio files in overlapping chunks to keep memory usage bounded,
then crossfades the overlapping regions to avoid audible seams.
This is designed for podcasts, audiobooks, meetings, and other long-form
content where loading the entire file into memory is impractical.
Usage
-----
>>> from pvx.augment import Pipeline, AddNoise, GainPerturber
>>> from pvx.augment.streaming import stream_augment, stream_augment_file
>>>
>>> pipeline = Pipeline([
... GainPerturber(gain_db=(-3, 3), p=0.8),
... AddNoise(snr_db=(15, 35), noise_type="pink", p=0.5),
... ], seed=42)
>>>
>>> # Process a file with bounded memory
>>> stream_augment_file(
... "podcast_2h.wav",
... "podcast_2h_aug.wav",
... pipeline=pipeline,
... chunk_duration_s=30.0,
... seed=42,
... )
>>>
>>> # Or process a large in-memory array
>>> for chunk_out in stream_augment(audio, sr, pipeline, chunk_duration_s=30.0):
... # Each chunk_out is (audio_chunk, sr)
... pass
Notes
-----
- Chunk boundaries use overlap-add with a crossfade to avoid clicks.
- Each chunk gets a deterministic seed derived from (global_seed, chunk_index).
- Transforms that require global context (e.g., Normalizer with mode="rms")
will operate per-chunk. For global normalization, use a two-pass approach.
- TimeStretch changes the duration of each chunk. The crossfade logic
accounts for output-length mismatches.
src/pvx/augment/time_domain.py
Purpose: Time-domain audio augmentation transforms.
Classes: GainPerturber, Normalizer, ClippingSimulator, TimeShift, Reverse, Fade, TrimSilence, FixedLengthCrop, TimeStretch, PitchShift
Functions: _has_torch, _has_torchaudio, _resolve_engine, _torchaudio_time_stretch, _torchaudio_pitch_shift, _pytorch_time_stretch, _pytorch_pitch_shift, _call_pvx_voc
Module Docstring
Time-domain audio augmentation transforms.
Provides transforms that operate on the waveform directly: gain
perturbation, clipping, time shifting, fade in/out, silence trimming, and
reverse. Production-quality time-stretch and pitch-shift wrappers that
call ``pvx voc`` are also provided here.
src/pvx/cli/__init__.py
Purpose: CLI entrypoints for pvx tools.
Classes: None Functions: None
Module Docstring
CLI entrypoints for pvx tools.
src/pvx/cli/catalog.py
Purpose: Static command catalog for the unified pvx CLI.
Classes: ToolSpec
Functions: build_tool_index
Help commands: PYTHONPATH=src python3 -m pvx.cli.catalog --help
Module Docstring
Static command catalog for the unified pvx CLI.
src/pvx/cli/hps_pitch_track.py
Purpose: Track F0 and emit a pvx control-map CSV for pitch-follow pipelines.
Classes: None
Functions: _read_audio, _acf_pitch_and_confidence, _estimate_reference_hz, _smooth, _track_pyin, _track_acf, build_parser, validate_args, _emit_csv, _derive_stretch_track, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.hps_pitch_track --help
CLI Help Snapshot
usage: python3 -m pvx.cli.hps_pitch_track [-h] [--output OUTPUT]
[--backend {auto,pyin,acf}]
[--fmin FMIN] [--fmax FMAX]
[--frame-length FRAME_LENGTH]
[--hop-size HOP_SIZE]
[--ratio-reference {median,mean,first,hz}]
[--reference-hz REFERENCE_HZ]
[--ratio-min RATIO_MIN]
[--ratio-max RATIO_MAX]
[--smooth-frames SMOOTH_FRAMES]
[--confidence-floor CONFIDENCE_FLOOR]
[--emit {pitch_map,stretch_map,pitch_to_stretch}]
[--stretch-from {pitch_ratio,inv_pitch_ratio,f0_hz}]
[--stretch-scale STRETCH_SCALE]
[--stretch-min STRETCH_MIN]
[--stretch-max STRETCH_MAX]
[--stretch STRETCH]
[--feature-set {none,basic,advanced,all}]
[--mfcc-count MFCC_COUNT]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent]
input
HPS/pyin-style pitch tracker that emits pvx control-map CSV to stdout.
positional arguments:
input Input audio file path or '-' for stdin audio
options:
-h, --help show this help message and exit
--output OUTPUT Output CSV path (default: '-' for stdout)
--backend {auto,pyin,acf}
Pitch backend (default: auto -> pyin if available, else acf)
--fmin FMIN Minimum F0 in Hz (default: 50)
--fmax FMAX Maximum F0 in Hz (default: 1200)
--frame-length FRAME_LENGTH
Frame length in samples (default: 2048)
--hop-size HOP_SIZE Hop size in samples (default: 256)
--ratio-reference {median,mean,first,hz}
Reference for emitted pitch_ratio values (default: median voiced f0).
--reference-hz REFERENCE_HZ
Reference frequency in Hz when --ratio-reference hz.
--ratio-min RATIO_MIN
Lower clamp for emitted pitch_ratio (default: 0.25).
--ratio-max RATIO_MAX
Upper clamp for emitted pitch_ratio (default: 4.0).
--smooth-frames SMOOTH_FRAMES
Smoothing window for pitch_ratio frames (default: 5).
--confidence-floor CONFIDENCE_FLOOR
Set confidence below this floor to 0.0 (default: 0.0).
--emit {pitch_map,stretch_map,pitch_to_stretch}
Output mode: pitch_map (default), stretch_map, or pitch_to_stretch.
--stretch-from {pitch_ratio,inv_pitch_ratio,f0_hz}
Source signal used to derive stretch in stretch-oriented emit modes (default: pitch_ratio).
--stretch-scale STRETCH_SCALE
Scale factor for derived stretch tracks (default: 1.0).
--stretch-min STRETCH_MIN
Lower clamp for emitted stretch in stretch-oriented modes (default: 0.25).
--stretch-max STRETCH_MAX
Upper clamp for emitted stretch in stretch-oriented modes (default: 4.0).
--stretch STRETCH Emit constant stretch column value for --emit pitch_map (default: 1.0).
--feature-set {none,basic,advanced,all}
Feature tracking preset emitted as extra CSV columns. none/basic/advanced/all (default: all).
--mfcc-count MFCC_COUNT
Number of MFCC columns (mfcc_01..mfcc_N) when feature-set is advanced/all (default: 13).
--verbosity {silent,quiet,normal,verbose,debug}
Console verbosity level
-v, --verbose Increase verbosity (repeat for extra detail)
--quiet Reduce output and hide status bars
--silent Suppress all console output
Examples:
pvx pitch-track guide.wav --output guide_pitch.csv
pvx pitch-track guide.wav --backend pyin --ratio-reference hz --reference-hz 440 --output guide_to_a440.csv
pvx pitch-track guide.wav --emit pitch_to_stretch --output - | pvx voc target.wav --control-stdin --output followed.wav
Notes:
- Default output columns include control map fields and feature tracks (for example: rms_db, spectral_flux, voicing_prob, MFCCs, MPEG-7-style descriptors).
- Use --confidence-floor to gate unreliable pitch estimates.
Module Docstring
Track F0 and emit a pvx control-map CSV for pitch-follow pipelines.
src/pvx/cli/main.py
Purpose: Compatibility entrypoint for the unified pvx CLI.
Classes: None Functions: None
Help commands: PYTHONPATH=src python3 -m pvx.cli.main --help
CLI Help Snapshot
usage: pvx [-h] [command] ...
Unified CLI for pvx (audio quality first, speed second).
Use subcommands to access all existing pvx tools from one entrypoint.
positional arguments:
command Subcommand name, helper command, or input path (defaults to `voc` when an input path is provided)
args Arguments forwarded directly to the selected subcommand
options:
-h, --help show this help message and exit
Quick start:
pvx voc input.wav --stretch 1.2 --output output.wav
pvx input.wav --stretch 1.2 --output output.wav # defaults to `voc`
pvx follow guide.wav target.wav --output followed.wav --emit pitch_to_stretch
pvx chain input.wav --pipeline "voc --stretch 1.2 | formant --mode preserve" --output out.wav
pvx stream input.wav --output out.wav --chunk-seconds 0.2 --time-stretch 2.0
pvx stretch-budget input.wav --disk-budget 20GB --bit-depth 16 --requested-stretch 1000000
pvx doctor
pvx quickstart input.wav --output output.wav
pvx safe input.wav --material mix --output output.wav
pvx transforms
pvx smoke --output smoke_out.wav
pvx augment data/*.wav --output-dir aug_out --variants-per-input 4 --intent asr_robust --seed 1337
pvx augment-manifest validate aug_out/augment_manifest.jsonl
pvx voc input.wav --output-dir out --lucky 8
pvx list
pvx examples basic
pvx help voc
Available tool commands: voc, freeze, harmonize, conform, morph, warp, formant, transient, unison, denoise, deverb, retune, layer, pitch-track, analysis, response, envelope, reshape, filter, tvfilter, noisefilter, bandamp, spec-compander, ring, ringfilter, ringtvfilter, chordmapper, inharmonator, trajectory-reverb, noise, rir, codec, specaugment, gain
Module Docstring
Compatibility entrypoint for the unified pvx CLI.
src/pvx/cli/pvx.py
Purpose: Unified top-level CLI for the pvx command suite.
Classes: None
Functions: _load_entrypoint, _looks_like_audio_input, _tool_names_csv, print_tools, print_examples, _prompt_text, _prompt_choice, _print_command_preview, print_follow_examples, run_doctor_mode, run_quickstart_mode, run_safe_mode, run_transforms_mode, run_smoke_mode, _parse_split_ratios, _stable_seed_from_text, _augment_group_key, run_batch_gpu_mode, run_augment_mode, run_augment_manifest_mode, run_guided_mode, _token_flag, _extract_flag_value, _strip_flags, _replace_flag_value, _consume_lucky_options, _lucky_output_variant, _lucky_mastering_overrides, _lucky_tool_overrides, _run_lucky_tool_mode, _run_lucky_helper_mode, run_follow_mode, run_chain_mode, run_stream_mode, _parse_size_bytes, _format_bytes_human, _infer_output_format, _bytes_per_sample_from_subtype, run_stretch_budget_mode, dispatch_tool, build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvx --help
CLI Help Snapshot
usage: pvx [-h] [command] ...
Unified CLI for pvx (audio quality first, speed second).
Use subcommands to access all existing pvx tools from one entrypoint.
positional arguments:
command Subcommand name, helper command, or input path (defaults to `voc` when an input path is provided)
args Arguments forwarded directly to the selected subcommand
options:
-h, --help show this help message and exit
Quick start:
pvx voc input.wav --stretch 1.2 --output output.wav
pvx input.wav --stretch 1.2 --output output.wav # defaults to `voc`
pvx follow guide.wav target.wav --output followed.wav --emit pitch_to_stretch
pvx chain input.wav --pipeline "voc --stretch 1.2 | formant --mode preserve" --output out.wav
pvx stream input.wav --output out.wav --chunk-seconds 0.2 --time-stretch 2.0
pvx stretch-budget input.wav --disk-budget 20GB --bit-depth 16 --requested-stretch 1000000
pvx doctor
pvx quickstart input.wav --output output.wav
pvx safe input.wav --material mix --output output.wav
pvx transforms
pvx smoke --output smoke_out.wav
pvx augment data/*.wav --output-dir aug_out --variants-per-input 4 --intent asr_robust --seed 1337
pvx augment-manifest validate aug_out/augment_manifest.jsonl
pvx voc input.wav --output-dir out --lucky 8
pvx list
pvx examples basic
pvx help voc
Available tool commands: voc, freeze, harmonize, conform, morph, warp, formant, transient, unison, denoise, deverb, retune, layer, pitch-track, analysis, response, envelope, reshape, filter, tvfilter, noisefilter, bandamp, spec-compander, ring, ringfilter, ringtvfilter, chordmapper, inharmonator, trajectory-reverb, noise, rir, codec, specaugment, gain
Module Docstring
Unified top-level CLI for the pvx command suite.
src/pvx/cli/pvx_augment.py
Purpose: Augmentation helpers and subcommands for the unified pvx CLI.
Classes: None
Functions: _expand_augment_inputs, _parse_split_ratios, _pick_split, _stable_seed_from_text, _augment_group_key, _token_flag, _flag_present, _load_augment_policy, _load_label_metadata, _source_metadata, _assign_balanced_split_for_groups, _sha256_file, _audio_audit_metrics, _manifest_required_errors, _load_manifest_jsonl, _merge_manifest_rows, _sample_augment_params, _render_job_pytorch, _augment_output_conflict, run_batch_gpu_mode, run_augment_mode, run_augment_manifest_mode
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvx_augment --help
Module Docstring
Augmentation helpers and subcommands for the unified pvx CLI.
src/pvx/cli/pvx_helpers.py
Purpose: Helper modes and utility flows for the unified pvx CLI.
Classes: None
Functions: run_doctor_mode, run_quickstart_mode, _token_flag, run_safe_mode, run_transforms_mode, _build_smoke_signal, run_smoke_mode, run_guided_mode, _extract_flag_value, _strip_flags, _replace_flag_value, _consume_lucky_options, _lucky_output_variant, _lucky_mastering_overrides, _lucky_tool_overrides, _run_lucky_tool_mode, _run_lucky_helper_mode, _parse_size_bytes, _format_bytes_human, _infer_output_format, _bytes_per_sample_from_subtype, run_stretch_budget_mode
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvx_helpers --help
Module Docstring
Helper modes and utility flows for the unified pvx CLI.
src/pvx/cli/pvx_pipeline.py
Purpose: Pipeline-oriented helper commands for the unified pvx CLI.
Classes: _BytesStdin
Functions: print_follow_examples, _extract_follow_example_request, _split_pipeline_stages, _token_flag, _extract_flag_value, _run_stage_command, _run_stage_capture_stdout, _patched_stdin_bytes, run_follow_mode, run_chain_mode, run_stream_mode
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvx_pipeline --help
Module Docstring
Pipeline-oriented helper commands for the unified pvx CLI.
src/pvx/cli/pvxanalysis.py
Purpose: Persist and inspect reusable phase-vocoder analysis artifacts (PVXAN).
Classes: None
Functions: _normalize_argv, _default_output_path, _print_summary, _write_json, build_parser, _validate_create_args, _run_create, _run_inspect, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxanalysis --help
CLI Help Snapshot
usage: pvx analysis [-h] {create,inspect} ...
Create and inspect PVXAN analysis artifacts for reusable phase-vocoder workflows.
positional arguments:
{create,inspect}
create Analyze audio and save PVXAN artifact
inspect Inspect existing PVXAN artifact
options:
-h, --help show this help message and exit
Examples:
pvx analysis create input.wav --output input.pvxan.npz --n-fft 4096 --hop-size 256
pvx analysis inspect input.pvxan.npz
pvxanalysis input.wav --output input.pvxan.npz
Notes:
- When command is omitted, create mode is assumed for convenience.
- PVXAN stores complex STFT payloads (channels x frames x bins) in compressed NPZ format.
Module Docstring
Persist and inspect reusable phase-vocoder analysis artifacts (PVXAN).
src/pvx/cli/pvxbandamp.py
Purpose: Response-peak band emphasis wrapper.
Classes: None
Functions: main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxbandamp --help
CLI Help Snapshot
usage: pvx bandamp [-h] [-o OUTPUT_DIR] [--output OUTPUT] [--suffix SUFFIX]
[--output-format OUTPUT_FORMAT] [--stdout] [--overwrite]
[--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}] [-v]
[--quiet] [--silent] [--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS] [--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL] [--clip]
[--subtype SUBTYPE] [--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}] [--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}] [--n-fft N_FFT]
[--win-length WIN_LENGTH] [--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX] [--no-onset-realign]
[--no-center] [--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE]
[--operator {filter,tvfilter,noisefilter,bandamp,spec-compander}]
--response RESPONSE [--response-mix RESPONSE_MIX]
[--dry-mix DRY_MIX] [--response-gain-db RESPONSE_GAIN_DB]
[--transpose-semitones TRANSPOSE_SEMITONES]
[--shift-bins SHIFT_BINS] [--tv-map TV_MAP]
[--tv-key TV_KEY]
[--tv-interp {none,stairstep,nearest,linear,cubic,polynomial,exponential,s_curve,smootherstep}]
[--tv-order TV_ORDER] [--noise-floor NOISE_FLOOR]
[--band-gain-db BAND_GAIN_DB]
[--band-width-bins BAND_WIDTH_BINS]
[--peak-count PEAK_COUNT]
[--comp-threshold-db COMP_THRESHOLD_DB]
[--comp-ratio COMP_RATIO] [--expand-ratio EXPAND_RATIO]
inputs [inputs ...]
Response-driven spectral processing using PVXRF artifacts.
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--output, --out OUTPUT
Explicit output file path (single-input mode only). Alias: --out
--suffix SUFFIX Output filename suffix (default: _filter)
--output-format OUTPUT_FORMAT
Output extension/format
--stdout Write processed audio to stdout stream (for piping); requires exactly one input
--overwrite Overwrite existing outputs
--dry-run Resolve and print, but do not write files
--verbosity {silent,qu
... [truncated]
Module Docstring
Response-peak band emphasis wrapper.
src/pvx/cli/pvxchordmapper.py
Purpose: Chordmapper wrapper.
Classes: None
Functions: main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxchordmapper --help
CLI Help Snapshot
usage: pvx chordmapper [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX] [--output-format OUTPUT_FORMAT]
[--stdout] [--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}] [-v]
[--quiet] [--silent] [--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS] [--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL] [--clip]
[--subtype SUBTYPE] [--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}] [--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}] [--n-fft N_FFT]
[--win-length WIN_LENGTH] [--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}] [--cuda-device CUDA_DEVICE]
[--operator {chordmapper,inharmonator}]
[--root-hz ROOT_HZ]
[--chord {aug,dim,dom7,maj7,major,min7,minor,power,sus2,sus4}]
[--strength STRENGTH]
[--tolerance-cents TOLERANCE_CENTS]
[--boost-db BOOST_DB] [--attenuation ATTENUATION]
[--inharmonic-f0-hz INHARMONIC_F0_HZ]
[--inharmonicity INHARMONICITY]
[--inharmonic-mix INHARMONIC_MIX] [--dry-mix DRY_MIX]
inputs [inputs ...]
Harmonic/chord mapping and inharmonic spectral warping.
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--output, --out OUTPUT
Explicit output file path (single-input mode only). Alias: --out
--suffix SUFFIX Output filename suffix (default: _harm)
--output-format OUTPUT_FORMAT
Output extension/format
--stdout Write processed audio to stdout stream (for piping); requires exactly one input
--overwrite Overwrite existing outputs
--dry-run Resolve and print, but do not write files
--verbosity {silent,quiet,normal,verbose,debug}
Console verbosity level
-v, --verbose Increase verbosity (repeat for
... [truncated]
Module Docstring
Chordmapper wrapper.
src/pvx/cli/pvxcodec.py
Purpose: pvxcodec โ simulate lossy codec and transmission degradation.
Classes: None
Functions: build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxcodec --help
CLI Help Snapshot
usage: pvxcodec [-h] --output OUTPUT
[--codec {mp3_low,mp3_medium,telephone,voip_narrow,voip_wide,am_radio,lo_fi,random}]
[--bits BITS] [--seed SEED] [--bit-depth {16,24,32,float}]
input
Simulate lossy codec artifacts (MP3, telephone, VoIP) without codec binaries.
positional arguments:
input Input audio file
options:
-h, --help show this help message and exit
--output, -o OUTPUT Output audio file
--codec {mp3_low,mp3_medium,telephone,voip_narrow,voip_wide,am_radio,lo_fi,random}
Codec preset to simulate (default: none โ use --bits
for raw bit-crush)
--bits BITS Bit depth for raw bit-crushing (4-16). Applied after
codec if both specified.
--seed SEED Random seed (default: 0)
--bit-depth {16,24,32,float}
Output file bit depth (default: 24)
pvxcodec โ simulate lossy codec and transmission degradation.
Applies bandwidth limiting, sample-rate decimation, and bit-depth
quantization to simulate the artifacts of real-world codec processing
(MP3, telephone, VoIP, AM radio) without requiring external codec
binaries.
Available presets
-----------------
mp3_low ~32 kbps MP3 (11 kHz bandwidth, 12-bit quantization)
mp3_medium ~128 kbps MP3 (16 kHz bandwidth, 14-bit quantization)
telephone POTS telephone band (300-3400 Hz, 8 kHz, 8-bit)
voip_narrow Narrow-band VoIP (50-4000 Hz, 8 kHz, 8-bit)
voip_wide Wide-band VoIP (50-7000 Hz, 16 kHz, 12-bit)
am_radio AM radio (200-5000 Hz, 8-bit)
lo_fi Extreme lo-fi (8 kHz bandwidth, 6-bit)
random Pick a random preset each run
Examples
--------
pvxcodec speech.wav --codec telephone --output speech_phone.wav
pvxcodec music.wav --codec mp3_low --output music_lossy.wav
pvxcodec speech.wav --codec random --seed 7 --output out.wav
pvxcodec music.wav --bits 8 --output music_crushed.wav
Module Docstring
pvxcodec โ simulate lossy codec and transmission degradation.
Applies bandwidth limiting, sample-rate decimation, and bit-depth
quantization to simulate the artifacts of real-world codec processing
(MP3, telephone, VoIP, AM radio) without requiring external codec
binaries.
Available presets
-----------------
mp3_low ~32 kbps MP3 (11 kHz bandwidth, 12-bit quantization)
mp3_medium ~128 kbps MP3 (16 kHz bandwidth, 14-bit quantization)
telephone POTS telephone band (300-3400 Hz, 8 kHz, 8-bit)
voip_narrow Narrow-band VoIP (50-4000 Hz, 8 kHz, 8-bit)
voip_wide Wide-band VoIP (50-7000 Hz, 16 kHz, 12-bit)
am_radio AM radio (200-5000 Hz, 8-bit)
lo_fi Extreme lo-fi (8 kHz bandwidth, 6-bit)
random Pick a random preset each run
Examples
--------
pvxcodec speech.wav --codec telephone --output speech_phone.wav
pvxcodec music.wav --codec mp3_low --output music_lossy.wav
pvxcodec speech.wav --codec random --seed 7 --output out.wav
pvxcodec music.wav --bits 8 --output music_crushed.wav
src/pvx/cli/pvxconform.py
Purpose: Conform timing and pitch to a user-provided segment map.
Classes: None
Functions: expand_segments, build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxconform --help
CLI Help Snapshot
usage: python3 -m pvx.cli.pvxconform [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX]
[--output-format OUTPUT_FORMAT]
[--stdout] [--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent]
[--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS]
[--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL]
[--clip] [--subtype SUBTYPE]
[--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}]
[--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}]
[--n-fft N_FFT] [--win-length WIN_LENGTH]
[--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE] --map MAP
[--crossfade-ms CROSSFADE_MS]
[--resample-mode {auto,fft,linear}]
inputs [inputs ...]
Conform audio to a CSV map. CSV columns: start_sec,end_sec,stretch, and one pitch field: pitch_semitones or pitch_cents or pitch_ratio (pitch_ratio accepts decimals, fractions like 3/2, or expressions like 2^(1/12))
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--outp
... [truncated]
Module Docstring
Conform timing and pitch to a user-provided segment map.
src/pvx/cli/pvxdenoise.py
Purpose: Phase-consistent spectral denoiser.
Classes: None
Functions: smooth_mask, denoise_channel, build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxdenoise --help
CLI Help Snapshot
usage: python3 -m pvx.cli.pvxdenoise [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX]
[--output-format OUTPUT_FORMAT]
[--stdout] [--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent]
[--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS]
[--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL]
[--clip] [--subtype SUBTYPE]
[--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}]
[--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}]
[--n-fft N_FFT] [--win-length WIN_LENGTH]
[--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE]
[--noise-seconds NOISE_SECONDS]
[--noise-file NOISE_FILE]
[--reduction-db REDUCTION_DB]
[--floor FLOOR] [--smooth SMOOTH]
inputs [inputs ...]
Spectral subtraction denoiser
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--output, --out OUTPUT
Explicit output file path
... [truncated]
Module Docstring
Phase-consistent spectral denoiser.
src/pvx/cli/pvxdeverb.py
Purpose: Spectral tail suppression for dereverberation-like cleanup.
Classes: None
Functions: deverb_channel, build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxdeverb --help
CLI Help Snapshot
usage: python3 -m pvx.cli.pvxdeverb [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX]
[--output-format OUTPUT_FORMAT] [--stdout]
[--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent]
[--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS]
[--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL]
[--clip] [--subtype SUBTYPE]
[--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}]
[--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}]
[--n-fft N_FFT] [--win-length WIN_LENGTH]
[--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE]
[--strength STRENGTH] [--decay DECAY]
[--floor FLOOR]
inputs [inputs ...]
Reduce spectral tails / reverberant smear
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--output, --out OUTPUT
Explicit output file path (single-input mode only). Alias: --out
--suffix SUFFIX Output filename suffix (default: _deverb)
--output-format OUTPUT_FORMAT
Output extension/form
... [truncated]
Module Docstring
Spectral tail suppression for dereverberation-like cleanup.
src/pvx/cli/pvxenvelope.py
Purpose: PVC-style envelope function-stream generator.
Classes: None
Functions: build_parser, _resolve_output_format, _render_payload, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxenvelope --help
CLI Help Snapshot
usage: pvx envelope [-h]
[--mode {adsr,ramp,exp,sine,triangle,square,saw_up,saw_down}]
--duration DURATION [--rate RATE] [--start START]
[--peak PEAK] [--sustain SUSTAIN] [--end END]
[--attack-sec ATTACK_SEC] [--decay-sec DECAY_SEC]
[--release-sec RELEASE_SEC] [--exp-curve EXP_CURVE]
[--sine-cycles SINE_CYCLES] [--frequency-hz FREQUENCY_HZ]
[--sine-phase-rad SINE_PHASE_RAD]
[--duty-cycle DUTY_CYCLE] [--min MIN_VALUE]
[--max MAX_VALUE] [--key KEY] [--format {csv,json,auto}]
[--output OUTPUT] [--stdout]
[--verbosity {silent,quiet,normal,verbose,debug}] [-v]
[--quiet] [--silent]
Generate deterministic envelope/LFO control-rate maps for pvx CSV/JSON workflows.
options:
-h, --help show this help message and exit
--mode, --wave {adsr,ramp,exp,sine,triangle,square,saw_up,saw_down}
Envelope/LFO waveform mode
--duration DURATION Envelope duration in seconds
--rate RATE Control points per second (default: 20)
--start, --center START
Start/center value (mode-dependent; for periodic modes this is the center/DC offset)
--peak, --amplitude PEAK
Peak/depth/amplitude value (mode-dependent; periodic modes use this as waveform amplitude)
--sustain SUSTAIN Sustain value for ADSR mode
--end END End value for ADSR/ramp/exp modes
--attack-sec ATTACK_SEC
ADSR attack in seconds
--decay-sec DECAY_SEC
ADSR decay in seconds
--release-sec RELEASE_SEC
ADSR release in seconds
--exp-curve EXP_CURVE
Exponential curve steepness for exp mode
--sine-cycles, --cycles SINE_CYCLES
Waveform cycles across full duration (periodic modes)
--frequency-hz, --freq FREQUENCY_HZ
Waveform frequency in Hz for periodic modes (converted to cycles = frequency * duration)
--sine-phase-rad, --phase-rad, --phase SINE_PHASE_RAD
Initial waveform phase in radians for periodic modes
--duty-cycle DUTY_CYCLE
Duty cycle in (0,1) for square mode (default: 0.5)
--min MIN_VALUE Optional value clamp minimum
--max MAX_VALUE Optional value clamp maximum
--key KEY Output control column/key name (default: value)
--format {csv,json,auto}
Output format (default: auto from extension or csv for stdout)
--output, --out OUTPUT
Output path. Default: stdout.
--stdout Write map to stdout
--verbosity {silent,quiet,normal,verbose,debug}
Console verbosity level
-v, --verbose Increase verbosity (repeat for extra detail)
--quiet Reduce output and hide status bars
--silent Suppress all console output
Examples:
pvx envelope --mode adsr --duration 8 --rate 20 --attack-sec 0.2 --decay-sec 0.6 --sustain 1.1 --release-sec 1.0 --key stretch --output stretch_env.csv
pvx envelope --mode ramp --duration 6 --rate 10 --start 1.0 --end 0.5 --key pitch_ratio --stdout | pvx voc input.wav --stretch 1.0 --pitch-map-stdin --route pitch_ratio=pitch_ratio --output out.wav
pvx lfo --wave sine --duration 12 --rate 30 --center 1.0 --amplitude 0.25 --cycles 6 --min 0.75 --max 1.25 --key stretch --output stretch_lfo.json
pvx lfo --wave triangle --duration 8 --frequency-hz 0.5 --center 1.0 --amplitude 0.2 --key stretch --output stretch_triangle.csv
pvx lfo --wave square --duration 8 --frequency-hz 2.0 --center 1.0 --amplitude 0.3 --duty-cycle 0.35 --key pitch_ratio --output pitch_square.csv
Notes:
- Generated maps are control-rate signals (not sample-rate audio).
- Use --key to emit directly as stretch or pitch_ratio for pvx voc map workflows.
- Use `pvx lfo` as a shorthand alias for `pvx envelope` when authoring periodic control signals.
Module Docstring
PVC-style envelope function-stream generator.
src/pvx/cli/pvxfilter.py
Purpose: PVC-inspired response-driven spectral operators.
Classes: None
Functions: build_parser, run_filter_cli, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxfilter --help
CLI Help Snapshot
usage: pvx filter [-h] [-o OUTPUT_DIR] [--output OUTPUT] [--suffix SUFFIX]
[--output-format OUTPUT_FORMAT] [--stdout] [--overwrite]
[--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}] [-v]
[--quiet] [--silent] [--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS] [--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL] [--clip]
[--subtype SUBTYPE] [--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}] [--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}] [--n-fft N_FFT]
[--win-length WIN_LENGTH] [--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX] [--no-onset-realign]
[--no-center] [--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE]
[--operator {filter,tvfilter,noisefilter,bandamp,spec-compander}]
--response RESPONSE [--response-mix RESPONSE_MIX]
[--dry-mix DRY_MIX] [--response-gain-db RESPONSE_GAIN_DB]
[--transpose-semitones TRANSPOSE_SEMITONES]
[--shift-bins SHIFT_BINS] [--tv-map TV_MAP]
[--tv-key TV_KEY]
[--tv-interp {none,stairstep,nearest,linear,cubic,polynomial,exponential,s_curve,smootherstep}]
[--tv-order TV_ORDER] [--noise-floor NOISE_FLOOR]
[--band-gain-db BAND_GAIN_DB]
[--band-width-bins BAND_WIDTH_BINS]
[--peak-count PEAK_COUNT]
[--comp-threshold-db COMP_THRESHOLD_DB]
[--comp-ratio COMP_RATIO] [--expand-ratio EXPAND_RATIO]
inputs [inputs ...]
Response-driven spectral processing using PVXRF artifacts.
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--output, --out OUTPUT
Explicit output file path (single-input mode only). Alias: --out
--suffix SUFFIX Output filename suffix (default: _filter)
--output-format OUTPUT_FORMAT
Output extension/format
--stdout Write processed audio to stdout stream (for piping); requires exactly one input
--overwrite Overwrite existing outputs
--dry-run Resolve and print, but do not write files
--verbosity {silent,quiet,normal,verbose,debug}
Console
... [truncated]
Module Docstring
PVC-inspired response-driven spectral operators.
src/pvx/cli/pvxformant.py
Purpose: Formant processing tool with optional pitch shifting.
Classes: None
Functions: shift_envelope, formant_process_channel, build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxformant --help
CLI Help Snapshot
usage: python3 -m pvx.cli.pvxformant [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX]
[--output-format OUTPUT_FORMAT]
[--stdout] [--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent]
[--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS]
[--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL]
[--clip] [--subtype SUBTYPE]
[--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}]
[--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}]
[--n-fft N_FFT] [--win-length WIN_LENGTH]
[--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE]
[--pitch-shift-semitones PITCH_SHIFT_SEMITONES]
[--pitch-shift-cents PITCH_SHIFT_CENTS]
[--formant-shift-ratio FORMANT_SHIFT_RATIO]
[--mode {shift,preserve}]
[--formant-lifter FORMANT_LIFTER]
[--formant-max-gain-db FORMANT_MAX_GAIN_DB]
[--resample-mode {auto,fft,linear}]
inputs [inputs ...]
Formant shift/preserve processor
positional arguments:
inpu
... [truncated]
Module Docstring
Formant processing tool with optional pitch shifting.
src/pvx/cli/pvxfreeze.py
Purpose: Spectral freeze tool built on pvx phase-vocoder primitives.
Classes: None
Functions: _principal_angle, freeze_channel, build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxfreeze --help
CLI Help Snapshot
usage: python3 -m pvx.cli.pvxfreeze [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX]
[--output-format OUTPUT_FORMAT] [--stdout]
[--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent]
[--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS]
[--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL]
[--clip] [--subtype SUBTYPE]
[--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}]
[--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}]
[--n-fft N_FFT] [--win-length WIN_LENGTH]
[--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE]
[--freeze-time FREEZE_TIME]
[--duration DURATION] [--random-phase]
[--phase-mode {instantaneous,bin,hold}]
inputs [inputs ...]
Freeze a spectral slice into a sustained output
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--output, --out OUTPUT
Explicit output file path (single-input mode only). Alias: --out
--suffix SUFFIX Output filename suffix (
... [truncated]
Module Docstring
Spectral freeze tool built on pvx phase-vocoder primitives.
src/pvx/cli/pvxgain.py
Purpose: pvxgain โ apply random or fixed gain perturbation to audio.
Classes: None
Functions: build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxgain --help
CLI Help Snapshot
usage: pvxgain [-h] --output OUTPUT [--gain GAIN] [--normalize {peak,rms}]
[--target TARGET] [--seed SEED] [--bit-depth {16,24,32,float}]
input
Apply random or fixed gain perturbation or normalization.
positional arguments:
input Input audio file
options:
-h, --help show this help message and exit
--output, -o OUTPUT Output audio file
--gain GAIN Gain in dB. Single value (fixed) or 'min,max' (random
range). Mutually exclusive with --normalize.
--normalize {peak,rms}
Normalization mode. Mutually exclusive with --gain.
--target TARGET Target level in dBFS for normalization (default: -1.0)
--seed SEED Random seed (default: 0)
--bit-depth {16,24,32,float}
Output bit depth (default: 24)
pvxgain โ apply random or fixed gain perturbation to audio.
A simple utility for volume normalization and random loudness perturbation.
Useful as a pre-processing or augmentation step in any audio ML pipeline.
Examples
--------
# Random gain -6 to +6 dB:
pvxgain speech.wav --gain -6,6 --output speech_gain.wav
# Normalize to -1 dBFS peak:
pvxgain speech.wav --normalize peak --target -1 --output normalized.wav
# Normalize to -20 dBFS RMS:
pvxgain speech.wav --normalize rms --target -20 --output normalized.wav
# Batch random loudness for dataset:
for f in dataset/*.wav; do
pvxgain "$f" --gain -6,6 --seed $RANDOM --output augmented/"$(basename $f)"
done
Module Docstring
pvxgain โ apply random or fixed gain perturbation to audio.
A simple utility for volume normalization and random loudness perturbation.
Useful as a pre-processing or augmentation step in any audio ML pipeline.
Examples
--------
# Random gain -6 to +6 dB:
pvxgain speech.wav --gain -6,6 --output speech_gain.wav
# Normalize to -1 dBFS peak:
pvxgain speech.wav --normalize peak --target -1 --output normalized.wav
# Normalize to -20 dBFS RMS:
pvxgain speech.wav --normalize rms --target -20 --output normalized.wav
# Batch random loudness for dataset:
for f in dataset/*.wav; do
pvxgain "$f" --gain -6,6 --seed $RANDOM --output augmented/"$(basename $f)"
done
src/pvx/cli/pvxharmmap.py
Purpose: PVC-inspired harmonic/chord spectral mapping CLI.
Classes: None
Functions: build_parser, run_harmmap_cli, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxharmmap --help
CLI Help Snapshot
usage: pvx chordmapper [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX] [--output-format OUTPUT_FORMAT]
[--stdout] [--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}] [-v]
[--quiet] [--silent] [--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS] [--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL] [--clip]
[--subtype SUBTYPE] [--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}] [--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}] [--n-fft N_FFT]
[--win-length WIN_LENGTH] [--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}] [--cuda-device CUDA_DEVICE]
[--operator {chordmapper,inharmonator}]
[--root-hz ROOT_HZ]
[--chord {aug,dim,dom7,maj7,major,min7,minor,power,sus2,sus4}]
[--strength STRENGTH]
[--tolerance-cents TOLERANCE_CENTS]
[--boost-db BOOST_DB] [--attenuation ATTENUATION]
[--inharmonic-f0-hz INHARMONIC_F0_HZ]
[--inharmonicity INHARMONICITY]
[--inharmonic-mix INHARMONIC_MIX] [--dry-mix DRY_MIX]
inputs [inputs ...]
Harmonic/chord mapping and inharmonic spectral warping.
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--output, --out OUTPUT
Explicit output file path (single-input mode only). Alias: --out
--suffix SUFFIX Output filename suffix (default: _harm)
--output-format OUTPUT_FORMAT
Output extension/format
--stdout Write processed audio to stdout stream (for piping); requires exactly one input
--overwrite Overwrite existing outputs
--dry-run Resolve and print, but do not write files
--verbosity {silent,quiet,normal,verbose,debug}
Console verbosity level
-v, --verbose Increase verbosity (repeat for
... [truncated]
Module Docstring
PVC-inspired harmonic/chord spectral mapping CLI.
src/pvx/cli/pvxharmonize.py
Purpose: Multi-voice harmonizer built from phase-vocoder pitch shifts.
Classes: None
Functions: pan_stereo, build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxharmonize --help
CLI Help Snapshot
usage: python3 -m pvx.cli.pvxharmonize [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX]
[--output-format OUTPUT_FORMAT]
[--stdout] [--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent]
[--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS]
[--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL]
[--clip] [--subtype SUBTYPE]
[--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}]
[--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}]
[--n-fft N_FFT]
[--win-length WIN_LENGTH]
[--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE]
[--intervals INTERVALS]
[--intervals-cents INTERVALS_CENTS]
[--gains GAINS] [--pans PANS]
[--force-stereo]
[--resample-mode {auto,fft,linear}]
inputs [inputs ...]
Generate harmonized voices from an input
positional arguments:
inputs Input files/globs or '-' f
... [truncated]
Module Docstring
Multi-voice harmonizer built from phase-vocoder pitch shifts.
src/pvx/cli/pvxinharmonator.py
Purpose: Inharmonator wrapper.
Classes: None
Functions: main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxinharmonator --help
CLI Help Snapshot
usage: pvx inharmonator [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX] [--output-format OUTPUT_FORMAT]
[--stdout] [--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}] [-v]
[--quiet] [--silent] [--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS] [--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL] [--clip]
[--subtype SUBTYPE] [--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}] [--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}]
[--n-fft N_FFT] [--win-length WIN_LENGTH]
[--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}] [--cuda-device CUDA_DEVICE]
[--operator {chordmapper,inharmonator}]
[--root-hz ROOT_HZ]
[--chord {aug,dim,dom7,maj7,major,min7,minor,power,sus2,sus4}]
[--strength STRENGTH]
[--tolerance-cents TOLERANCE_CENTS]
[--boost-db BOOST_DB] [--attenuation ATTENUATION]
[--inharmonic-f0-hz INHARMONIC_F0_HZ]
[--inharmonicity INHARMONICITY]
[--inharmonic-mix INHARMONIC_MIX] [--dry-mix DRY_MIX]
inputs [inputs ...]
Harmonic/chord mapping and inharmonic spectral warping.
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--output, --out OUTPUT
Explicit output file path (single-input mode only). Alias: --out
--suffix SUFFIX Output filename suffix (default: _harm)
--output-format OUTPUT_FORMAT
Output extension/format
--stdout Write processed audio to stdout stream (for piping); requires exactly one input
--overwrite Overwrite existing outputs
--dry-run Resolve and print, but do not write files
--verbosity {silent,quiet,normal,verbose,debug}
C
... [truncated]
Module Docstring
Inharmonator wrapper.
src/pvx/cli/pvxlayer.py
Purpose: Layered harmonic/percussive processing with independent controls.
Classes: None
Functions: hpss_masks, split_hpss, build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxlayer --help
CLI Help Snapshot
usage: python3 -m pvx.cli.pvxlayer [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX]
[--output-format OUTPUT_FORMAT] [--stdout]
[--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent]
[--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS]
[--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL]
[--clip] [--subtype SUBTYPE]
[--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}]
[--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}]
[--n-fft N_FFT] [--win-length WIN_LENGTH]
[--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE]
[--harmonic-stretch HARMONIC_STRETCH]
[--harmonic-pitch-semitones HARMONIC_PITCH_SEMITONES]
[--harmonic-pitch-cents HARMONIC_PITCH_CENTS]
[--percussive-stretch PERCUSSIVE_STRETCH]
[--percussive-pitch-semitones PERCUSSIVE_PITCH_SEMITONES]
[--percussive-pitch-cents PERCUSSIVE_PITCH_CENTS]
[--harmonic-gain HARMONIC_GAIN]
[--percussive-gain PERCUSSIVE_GAIN]
[--harmonic-kernel HARMONIC_KERNEL]
[--percus
... [truncated]
Module Docstring
Layered harmonic/percussive processing with independent controls.
src/pvx/cli/pvxmorph.py
Purpose: Spectral morphing between two input files.
Classes: MorphControlSignal
Functions: _normalize_control_points, _parse_csv_control_points, _parse_json_control_points, _load_control_signal, _parse_scalar_or_control, _sample_cubic_local, _smoothstep, _smootherstep, _exp_ease, _sample_piecewise_ease, _sample_control_signal, match_channels, _phase_blend, _resolve_phase_mix_curve, _safe_rms, _framewise_envelope, _mask_from_modulator, morph_pair, build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxmorph --help
CLI Help Snapshot
usage: python3 -m pvx.cli.pvxmorph [-h] [-o OUTPUT] [--stdout]
[--output-format OUTPUT_FORMAT]
[--alpha ALPHA]
[--blend-mode {linear,geometric,magnitude_b_phase_a,magnitude_a_phase_b,carrier_a_envelope_b,carrier_b_envelope_a,carrier_a_mask_b,carrier_b_mask_a,product,max_mag,min_mag}]
[--phase-mix PHASE_MIX]
[--interp {none,linear,nearest,cubic,polynomial,exponential,s_curve,smootherstep}]
[--order ORDER]
[--mask-exponent MASK_EXPONENT]
[--envelope-lifter ENVELOPE_LIFTER]
[--normalize-energy]
[--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS]
[--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL]
[--clip] [--subtype SUBTYPE]
[--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}]
[--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}]
[--overwrite]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent] [--n-fft N_FFT]
[--win-length WIN_LENGTH]
[--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE]
input_a input_b
Morph two audio files in the STFT domain
positional arguments:
input_a Input A path or
... [truncated]
Module Docstring
Spectral morphing between two input files.
src/pvx/cli/pvxnoise.py
Purpose: pvxnoise โ add synthetic noise to audio at a controlled SNR.
Classes: None
Functions: build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxnoise --help
CLI Help Snapshot
usage: pvxnoise [-h] --output OUTPUT [--snr SNR]
[--noise-type {white,pink,brown,gaussian,bandlimited}]
[--band BAND] [--background-dir BACKGROUND_DIR] [--seed SEED]
[--bit-depth {16,24,32,float}]
input
Add synthetic or background noise to audio at a controlled SNR.
positional arguments:
input Input audio file
options:
-h, --help show this help message and exit
--output, -o OUTPUT Output audio file
--snr SNR Signal-to-noise ratio in dB. Single value for fixed
SNR or 'min,max' for uniform sampling. (default: 20)
--noise-type {white,pink,brown,gaussian,bandlimited}
Noise type (default: white)
--band BAND Low,high frequency band in Hz for bandlimited noise
(default: 300,4000)
--background-dir BACKGROUND_DIR
Directory of background audio files to mix instead of
synthetic noise
--seed SEED Random seed (default: 0)
--bit-depth {16,24,32,float}
Output bit depth (default: 24)
pvxnoise โ add synthetic noise to audio at a controlled SNR.
Supports white, pink, brown, and band-limited noise injection with
precise signal-to-noise ratio control. Useful for building robust ASR,
speaker verification, and speech enhancement datasets.
Examples
--------
# Add pink noise at 20 dB SNR:
pvxnoise speech.wav --snr 20 --noise-type pink --output speech_noisy.wav
# Random SNR between 5-30 dB, white noise:
pvxnoise speech.wav --snr 5,30 --noise-type white --output speech_noisy.wav
# Band-limited noise (telephone band):
pvxnoise speech.wav --snr 15 --noise-type bandlimited --band 300,3400 --output out.wav
# Background noise mixing from a directory:
pvxnoise speech.wav --background-dir noise_samples/ --snr 10,25 --output out.wav
Module Docstring
pvxnoise โ add synthetic noise to audio at a controlled SNR.
Supports white, pink, brown, and band-limited noise injection with
precise signal-to-noise ratio control. Useful for building robust ASR,
speaker verification, and speech enhancement datasets.
Examples
--------
# Add pink noise at 20 dB SNR:
pvxnoise speech.wav --snr 20 --noise-type pink --output speech_noisy.wav
# Random SNR between 5-30 dB, white noise:
pvxnoise speech.wav --snr 5,30 --noise-type white --output speech_noisy.wav
# Band-limited noise (telephone band):
pvxnoise speech.wav --snr 15 --noise-type bandlimited --band 300,3400 --output out.wav
# Background noise mixing from a directory:
pvxnoise speech.wav --background-dir noise_samples/ --snr 10,25 --output out.wav
src/pvx/cli/pvxnoisefilter.py
Purpose: Response-profile noise filter wrapper.
Classes: None
Functions: main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxnoisefilter --help
CLI Help Snapshot
usage: pvx noisefilter [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX] [--output-format OUTPUT_FORMAT]
[--stdout] [--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}] [-v]
[--quiet] [--silent] [--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS] [--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL] [--clip]
[--subtype SUBTYPE] [--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}] [--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}] [--n-fft N_FFT]
[--win-length WIN_LENGTH] [--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}] [--cuda-device CUDA_DEVICE]
[--operator {filter,tvfilter,noisefilter,bandamp,spec-compander}]
--response RESPONSE [--response-mix RESPONSE_MIX]
[--dry-mix DRY_MIX]
[--response-gain-db RESPONSE_GAIN_DB]
[--transpose-semitones TRANSPOSE_SEMITONES]
[--shift-bins SHIFT_BINS] [--tv-map TV_MAP]
[--tv-key TV_KEY]
[--tv-interp {none,stairstep,nearest,linear,cubic,polynomial,exponential,s_curve,smootherstep}]
[--tv-order TV_ORDER] [--noise-floor NOISE_FLOOR]
[--band-gain-db BAND_GAIN_DB]
[--band-width-bins BAND_WIDTH_BINS]
[--peak-count PEAK_COUNT]
[--comp-threshold-db COMP_THRESHOLD_DB]
[--comp-ratio COMP_RATIO] [--expand-ratio EXPAND_RATIO]
inputs [inputs ...]
Response-driven spectral processing using PVXRF artifacts.
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--output, --out OUTPUT
Explicit output file path (single-input mode only). Alias: --out
--suffix SUFFIX Output filename suffix (default: _filter)
--output-format OUTPUT_FORMAT
Output extension/f
... [truncated]
Module Docstring
Response-profile noise filter wrapper.
src/pvx/cli/pvxreshape.py
Purpose: PVC-style function-stream reshaper for control maps.
Classes: None
Functions: build_parser, _resolve_output_format, _resolve_input_format, _render_payload, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxreshape --help
CLI Help Snapshot
usage: pvx reshape [-h] [--key KEY] [--output-key OUTPUT_KEY]
--operation {scale,offset,clip,pow,normalize,invert,smooth,time-scale,time-shift,resample}
[--factor FACTOR] [--offset OFFSET] [--min MIN_VALUE]
[--max MAX_VALUE] [--exponent EXPONENT] [--window WINDOW]
[--target-min TARGET_MIN] [--target-max TARGET_MAX]
[--rate RATE]
[--interp {none,stairstep,nearest,linear,cubic,polynomial,exponential,s_curve,smootherstep}]
[--order ORDER] [--input-format {auto,csv,json}]
[--format {auto,csv,json}] [--output OUTPUT] [--stdout]
[--verbosity {silent,quiet,normal,verbose,debug}] [-v]
[--quiet] [--silent]
input
Transform control-rate CSV/JSON maps for pvx routing and modulation workflows.
positional arguments:
input Input control map path or '-' for stdin
options:
-h, --help show this help message and exit
--key KEY Control column/key to read (default: value)
--output-key OUTPUT_KEY
Output control key. Default: same as --key
--operation {scale,offset,clip,pow,normalize,invert,smooth,time-scale,time-shift,resample}
Reshape operation
--factor FACTOR Scale factor for scale/time-scale ops
--offset OFFSET Offset for offset/time-shift ops
--min MIN_VALUE Minimum clamp value
--max MAX_VALUE Maximum clamp value
--exponent EXPONENT Exponent for pow operation
--window WINDOW Window size for smooth operation
--target-min TARGET_MIN
Target minimum for normalize operation
--target-max TARGET_MAX
Target maximum for normalize operation
--rate RATE Resample control rate (Hz) for resample operation
--interp {none,stairstep,nearest,linear,cubic,polynomial,exponential,s_curve,smootherstep}
Interpolation mode
--order ORDER Polynomial order for --interp polynomial
--input-format {auto,csv,json}
Input format override (default: auto by suffix or csv for stdin)
--format {auto,csv,json}
Output format (default: auto from --output suffix or csv for stdout)
--output, --out OUTPUT
Output file path. Default: stdout.
--stdout Write reshaped map to stdout
--verbosity {silent,quiet,normal,verbose,debug}
Console verbosity level
-v, --verbose Increase verbosity (repeat for extra detail)
--quiet Reduce output and hide status bars
--silent Suppress all console output
Examples:
pvx reshape stretch_env.csv --key stretch --operation scale --factor 1.2 --output stretch_scaled.csv
pvx reshape map.csv --key pitch_ratio --operation clip --min 0.5 --max 2.0 --stdout | pvx voc input.wav --pitch-map-stdin --route pitch_ratio=pitch_ratio --output out.wav
pvx reshape alpha_curve.csv --operation resample --rate 50 --interp polynomial --order 5 --output alpha_curve_dense.csv
pvx reshape stretch_env.csv --operation smooth --window 9 --output stretch_smooth.csv
Notes:
- Use --key to select which control column to reshape.
- For stdin input, pass '-' as INPUT and optionally set --input-format.
Module Docstring
PVC-style function-stream reshaper for control maps.
src/pvx/cli/pvxresponse.py
Purpose: Create and inspect reusable frequency-response artifacts (PVXRF).
Classes: None
Functions: _normalize_argv, _default_output_path, _print_summary, _write_json, build_parser, _run_create, _run_inspect, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxresponse --help
CLI Help Snapshot
usage: pvx response [-h] {create,inspect} ...
Create and inspect PVXRF frequency-response artifacts derived from PVXAN analyses.
positional arguments:
{create,inspect}
create Derive response artifact from analysis artifact
inspect Inspect existing PVXRF artifact
options:
-h, --help show this help message and exit
Examples:
pvx response create input.pvxan.npz --output input.pvxrf.npz --method median --normalize peak
pvx response inspect input.pvxrf.npz
pvxresponse input.pvxan.npz --phase-mode zero --normalize rms
Notes:
- When command is omitted, create mode is assumed for convenience.
- PVXRF stores per-channel response magnitude/phase vectors and frequency bins.
Module Docstring
Create and inspect reusable frequency-response artifacts (PVXRF).
src/pvx/cli/pvxretune.py
Purpose: Monophonic retuning with phase-vocoder segment processing.
Classes: None
Functions: freq_to_midi, midi_to_freq, normalize_octave_cents, nearest_scale_freq, overlap_add, collect_f0_values, recommend_root_hz, build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxretune --help
CLI Help Snapshot
usage: python3 -m pvx.cli.pvxretune [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX]
[--output-format OUTPUT_FORMAT] [--stdout]
[--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent]
[--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS]
[--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL]
[--clip] [--subtype SUBTYPE]
[--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}]
[--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}]
[--n-fft N_FFT] [--win-length WIN_LENGTH]
[--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE] [--root ROOT]
[--root-hz ROOT_HZ] [--recommend-root]
[--scale {chromatic,major,minor,pentatonic}]
[--scale-cents SCALE_CENTS]
[--strength STRENGTH]
[--chunk-ms CHUNK_MS]
[--overlap-ms OVERLAP_MS]
[--a4-reference-hz A4_REFERENCE_HZ]
[--f0-min F0_MIN] [--f0-max F0_MAX]
[--resample-mode {auto,fft,linear}]
inputs [inputs ...]
Monophonic retun
... [truncated]
Module Docstring
Monophonic retuning with phase-vocoder segment processing.
src/pvx/cli/pvxring.py
Purpose: PVC-inspired ring and resonator operators.
Classes: None
Functions: build_parser, run_ring_cli, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxring --help
CLI Help Snapshot
usage: pvx ring [-h] [-o OUTPUT_DIR] [--output OUTPUT] [--suffix SUFFIX]
[--output-format OUTPUT_FORMAT] [--stdout] [--overwrite]
[--dry-run] [--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent] [--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS] [--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL] [--clip]
[--subtype SUBTYPE] [--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}] [--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}] [--n-fft N_FFT]
[--win-length WIN_LENGTH] [--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED] [--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX] [--no-onset-realign]
[--no-center] [--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE]
[--operator {ring,ringfilter,ringtvfilter}]
[--frequency-hz FREQUENCY_HZ] [--depth DEPTH] [--mix MIX]
[--feedback FEEDBACK] [--resonance-hz RESONANCE_HZ]
[--resonance-q RESONANCE_Q] [--resonance-mix RESONANCE_MIX]
[--resonance-decay RESONANCE_DECAY] [--tv-map TV_MAP]
[--tv-interp {none,stairstep,nearest,linear,cubic,polynomial,exponential,s_curve,smootherstep}]
[--tv-order TV_ORDER]
inputs [inputs ...]
Ring modulation and resonator filtering with PVC-style controls.
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--output, --out OUTPUT
Explicit output file path (single-input mode only). Alias: --out
--suffix SUFFIX Output filename suffix (default: _ring)
--output-format OUTPUT_FORMAT
Output extension/format
--stdout Write processed audio to stdout stream (for piping); requires exactly one input
--overwrite Overwrite existing outputs
--dry-run Resolve and print, but do not write files
--verbosity {silent,quiet,normal,verbose,debug}
Console verbosity level
-v, --verbose Increase verbosity (repeat for extra detail)
--quiet Reduce output and hide status bars
--silent Suppress all console output
--normalize {none,peak,rms}
Output normalization mode
--peak-dbfs PEAK_DBFS
Target peak dBFS when --normalize peak
--rms-dbfs RMS_DBFS Target RMS dBFS when --normalize rms
--target-lufs TARGET_LUFS
... [truncated]
Module Docstring
PVC-inspired ring and resonator operators.
src/pvx/cli/pvxringfilter.py
Purpose: Ring + resonator filter wrapper.
Classes: None
Functions: main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxringfilter --help
CLI Help Snapshot
usage: pvx ringfilter [-h] [-o OUTPUT_DIR] [--output OUTPUT] [--suffix SUFFIX]
[--output-format OUTPUT_FORMAT] [--stdout] [--overwrite]
[--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}] [-v]
[--quiet] [--silent] [--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS] [--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL] [--clip]
[--subtype SUBTYPE] [--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}] [--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}] [--n-fft N_FFT]
[--win-length WIN_LENGTH] [--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}] [--cuda-device CUDA_DEVICE]
[--operator {ring,ringfilter,ringtvfilter}]
[--frequency-hz FREQUENCY_HZ] [--depth DEPTH]
[--mix MIX] [--feedback FEEDBACK]
[--resonance-hz RESONANCE_HZ]
[--resonance-q RESONANCE_Q]
[--resonance-mix RESONANCE_MIX]
[--resonance-decay RESONANCE_DECAY] [--tv-map TV_MAP]
[--tv-interp {none,stairstep,nearest,linear,cubic,polynomial,exponential,s_curve,smootherstep}]
[--tv-order TV_ORDER]
inputs [inputs ...]
Ring modulation and resonator filtering with PVC-style controls.
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--output, --out OUTPUT
Explicit output file path (single-input mode only). Alias: --out
--suffix SUFFIX Output filename suffix (default: _ring)
--output-format OUTPUT_FORMAT
Output extension/format
--stdout Write processed audio to stdout stream (for piping); requires exactly one input
--overwrite Overwrite existing outputs
--dry-run Resolve and print, but do not write files
--verbosity {silent,quiet,normal,verbose,debug}
Console verbosity level
-v, --verbose Increase verbosity (repeat for extra detail
... [truncated]
Module Docstring
Ring + resonator filter wrapper.
src/pvx/cli/pvxringtvfilter.py
Purpose: Time-varying ring + resonator filter wrapper.
Classes: None
Functions: main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxringtvfilter --help
CLI Help Snapshot
usage: pvx ringtvfilter [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX] [--output-format OUTPUT_FORMAT]
[--stdout] [--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}] [-v]
[--quiet] [--silent] [--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS] [--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL] [--clip]
[--subtype SUBTYPE] [--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}] [--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}]
[--n-fft N_FFT] [--win-length WIN_LENGTH]
[--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}] [--cuda-device CUDA_DEVICE]
[--operator {ring,ringfilter,ringtvfilter}]
[--frequency-hz FREQUENCY_HZ] [--depth DEPTH]
[--mix MIX] [--feedback FEEDBACK]
[--resonance-hz RESONANCE_HZ]
[--resonance-q RESONANCE_Q]
[--resonance-mix RESONANCE_MIX]
[--resonance-decay RESONANCE_DECAY] [--tv-map TV_MAP]
[--tv-interp {none,stairstep,nearest,linear,cubic,polynomial,exponential,s_curve,smootherstep}]
[--tv-order TV_ORDER]
inputs [inputs ...]
Ring modulation and resonator filtering with PVC-style controls.
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--output, --out OUTPUT
Explicit output file path (single-input mode only). Alias: --out
--suffix SUFFIX Output filename suffix (default: _ring)
--output-format OUTPUT_FORMAT
Output extension/format
--stdout Write processed audio to stdout stream (for piping); requires exactly one input
--overwrite Overwrite existing outputs
--dry-run Resolve and print, but do not write files
--verbosity {silent,quiet,normal,
... [truncated]
Module Docstring
Time-varying ring + resonator filter wrapper.
src/pvx/cli/pvxrir.py
Purpose: pvxrir โ simulate room acoustics via room impulse response convolution.
Classes: None
Functions: build_parser, _parse_range, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxrir --help
CLI Help Snapshot
usage: pvxrir [-h] --output OUTPUT [--rt60 RT60] [--wet WET] [--drr DRR]
[--pre-delay-ms PRE_DELAY_MS] [--ir-file IR_FILE]
[--ir-dir IR_DIR] [--ir-database ID] [--category CATEGORY]
[--list-databases] [--cache-dir CACHE_DIR] [--no-trim]
[--seed SEED] [--bit-depth {16,24,32,float}]
input
Simulate room acoustics via impulse response convolution.
positional arguments:
input Input audio file
options:
-h, --help show this help message and exit
--output, -o OUTPUT Output audio file
--rt60 RT60 Reverberation time in seconds. Single value or
'min,max' range (default: 0.2,1.5)
--wet WET Wet/dry mix 0-1. Single value or 'min,max' range
(default: 0.3,0.7)
--drr DRR Direct-to-reverb ratio in dB. Single value or
'min,max' range (default: 3,12)
--pre-delay-ms PRE_DELAY_MS
Pre-delay in ms before the reverberant tail (default:
5.0)
--ir-file IR_FILE Path to an impulse response WAV file (overrides
synthetic generation)
--ir-dir IR_DIR Directory of impulse response files (one is chosen
randomly)
--ir-database ID Use IRs from a curated database (auto-downloads on
first use). Available: echothief, mit_kemar
--category CATEGORY Filter IRs by category when using --ir-database (e.g.,
hall, church, outdoor, room, large)
--list-databases List available IR databases and exit
--cache-dir CACHE_DIR
Cache directory for downloaded IR databases (default:
~/.pvx/ir_cache)
--no-trim Do not trim output to input length (include reverb
tail)
--seed SEED Random seed (default: 0)
--bit-depth {16,24,32,float}
Output bit depth (default: 24)
pvxrir โ simulate room acoustics via room impulse response convolution.
Convolves audio with a synthetic or user-provided room impulse response
to simulate the acoustic characteristics of different room environments.
Useful for building reverb-robust ASR, speaker verification, and source
separation datasets.
Examples
--------
# Synthetic room: RT60 between 0.3 and 1.2 s
pvxrir speech.wav --rt60 0.3,1.2 --wet 0.4,0.7 --output speech_reverb.wav
# Fixed reverb parameters:
pvxrir speech.wav --rt60 0.5 --wet 0.6 --output speech_reverb.wav
# Convolve with a real IR file:
pvxrir speech.wav --ir-file concert_hall.wav --wet 0.5 --output out.wav
# Convolve with a random IR from a directory:
pvxrir speech.wav --ir-dir irs/ --wet 0.3,0.8 --output out.wav
# Use a curated IR database (auto-downloads on first use):
pvxrir speech.wav --ir-database echothief --wet 0.5 --output out.wav
# Filter by room category:
pvxrir speech.wav --ir-database echothief --category hall --wet 0.6 --output out.wav
# List available databases:
pvxrir input.wav --list-databases --output /dev/null
Module Docstring
pvxrir โ simulate room acoustics via room impulse response convolution.
Convolves audio with a synthetic or user-provided room impulse response
to simulate the acoustic characteristics of different room environments.
Useful for building reverb-robust ASR, speaker verification, and source
separation datasets.
Examples
--------
# Synthetic room: RT60 between 0.3 and 1.2 s
pvxrir speech.wav --rt60 0.3,1.2 --wet 0.4,0.7 --output speech_reverb.wav
# Fixed reverb parameters:
pvxrir speech.wav --rt60 0.5 --wet 0.6 --output speech_reverb.wav
# Convolve with a real IR file:
pvxrir speech.wav --ir-file concert_hall.wav --wet 0.5 --output out.wav
# Convolve with a random IR from a directory:
pvxrir speech.wav --ir-dir irs/ --wet 0.3,0.8 --output out.wav
# Use a curated IR database (auto-downloads on first use):
pvxrir speech.wav --ir-database echothief --wet 0.5 --output out.wav
# Filter by room category:
pvxrir speech.wav --ir-database echothief --category hall --wet 0.6 --output out.wav
# List available databases:
pvxrir input.wav --list-databases --output /dev/null
src/pvx/cli/pvxspecaugment.py
Purpose: pvxspecaugment โ apply SpecAugment frequency and time masking.
Classes: None
Functions: build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxspecaugment --help
CLI Help Snapshot
usage: pvxspecaugment [-h] --output OUTPUT [--freq-mask FREQ_MASK]
[--time-mask TIME_MASK]
[--num-freq-masks NUM_FREQ_MASKS]
[--num-time-masks NUM_TIME_MASKS] [--fill FILL]
[--n-fft N_FFT] [--hop-length HOP_LENGTH] [--seed SEED]
[--bit-depth {16,24,32,float}]
input
Apply SpecAugment frequency and time masking to audio.
positional arguments:
input Input audio file
options:
-h, --help show this help message and exit
--output, -o OUTPUT Output audio file
--freq-mask FREQ_MASK
Maximum frequency mask width F in bins (default: 27)
--time-mask TIME_MASK
Maximum time mask width T in frames (default: 100)
--num-freq-masks NUM_FREQ_MASKS
Number of frequency masks (default: 2)
--num-time-masks NUM_TIME_MASKS
Number of time masks (default: 2)
--fill FILL Fill value for masked regions: 0, mean, or a float
(default: 0)
--n-fft N_FFT FFT size (default: 512)
--hop-length HOP_LENGTH
STFT hop length in samples (default: 128)
--seed SEED Random seed (default: 0)
--bit-depth {16,24,32,float}
Output bit depth (default: 24)
pvxspecaugment โ apply SpecAugment frequency and time masking.
Implements the SpecAugment policy (Park et al., 2019) for training robust
speech and audio models. Applies random frequency and time masks directly
to the STFT magnitude spectrum, then reconstructs the waveform.
References
----------
Park, D. S., et al. (2019). "SpecAugment: A Simple Data Augmentation
Method for Automatic Speech Recognition." Interspeech.
https://arxiv.org/abs/1904.08779
Examples
--------
# Standard SpecAugment LB policy:
pvxspecaugment speech.wav --freq-mask 30 --time-mask 40 --num-masks 2 --output out.wav
# LD policy (fewer, narrower masks):
pvxspecaugment speech.wav --freq-mask 27 --time-mask 70 --num-masks 1 --output out.wav
# LibriSpeech LB policy:
pvxspecaugment speech.wav --freq-mask 30 --time-mask 100 --num-freq-masks 2 --num-time-masks 2 --output out.wav
Module Docstring
pvxspecaugment โ apply SpecAugment frequency and time masking.
Implements the SpecAugment policy (Park et al., 2019) for training robust
speech and audio models. Applies random frequency and time masks directly
to the STFT magnitude spectrum, then reconstructs the waveform.
References
----------
Park, D. S., et al. (2019). "SpecAugment: A Simple Data Augmentation
Method for Automatic Speech Recognition." Interspeech.
https://arxiv.org/abs/1904.08779
Examples
--------
# Standard SpecAugment LB policy:
pvxspecaugment speech.wav --freq-mask 30 --time-mask 40 --num-masks 2 --output out.wav
# LD policy (fewer, narrower masks):
pvxspecaugment speech.wav --freq-mask 27 --time-mask 70 --num-masks 1 --output out.wav
# LibriSpeech LB policy:
pvxspecaugment speech.wav --freq-mask 30 --time-mask 100 --num-freq-masks 2 --num-time-masks 2 --output out.wav
src/pvx/cli/pvxspeccompander.py
Purpose: Response-referenced spectral compander wrapper.
Classes: None
Functions: main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxspeccompander --help
CLI Help Snapshot
usage: pvx spec-compander [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX] [--output-format OUTPUT_FORMAT]
[--stdout] [--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent]
[--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS] [--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL] [--clip]
[--subtype SUBTYPE]
[--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}] [--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}]
[--n-fft N_FFT] [--win-length WIN_LENGTH]
[--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE]
[--operator {filter,tvfilter,noisefilter,bandamp,spec-compander}]
--response RESPONSE [--response-mix RESPONSE_MIX]
[--dry-mix DRY_MIX]
[--response-gain-db RESPONSE_GAIN_DB]
[--transpose-semitones TRANSPOSE_SEMITONES]
[--shift-bins SHIFT_BINS] [--tv-map TV_MAP]
[--tv-key TV_KEY]
[--tv-interp {none,stairstep,nearest,linear,cubic,polynomial,exponential,s_curve,smootherstep}]
[--tv-order TV_ORDER] [--noise-floor NOISE_FLOOR]
[--band-gain-db BAND_GAIN_DB]
[--band-width-bins BAND_WIDTH_BINS]
[--peak-count PEAK_COUNT]
[--comp-threshold-db COMP_THRESHOLD_DB]
[--comp-ratio COMP_RATIO]
[--expand-ratio EXPAND_RATIO]
inputs [inputs ...]
Response-driven spectral processing using PVXRF artifacts.
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OU
... [truncated]
Module Docstring
Response-referenced spectral compander wrapper.
src/pvx/cli/pvxtrajectoryreverb.py
Purpose: Trajectory-aware multichannel convolution reverb for mono sources.
Classes: None
Functions: build_parser, _to_mono, _normalize_coordinate_option_args, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxtrajectoryreverb --help
CLI Help Snapshot
usage: python3 -m pvx.cli.pvxtrajectoryreverb [-h] [-o OUTPUT_DIR]
[--output OUTPUT]
[--suffix SUFFIX]
[--output-format OUTPUT_FORMAT]
[--stdout] [--overwrite]
[--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent]
[--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS]
[--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL]
[--clip] [--subtype SUBTYPE]
[--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}]
[--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}]
--ir IR
[--coord-system {cartesian,spherical}]
--start START --end END
[--speaker-angles SPEAKER_ANGLES]
[--trajectory-shape {linear,ease-in,ease-out,ease-in-out}]
[--distance-law {none,inverse,inverse-square}]
[--normalize-gains]
[--no-normalize-gains]
[--wet WET] [--dry DRY]
inputs [inputs ...]
Convolve mono source with multichannel impulse response and move source from A to B.
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--output, --out OUTPUT
Explicit output file path (single-input mode only). Alias: --out
--suffix SUFFIX Output filename suffix (default: _trajrev)
--output-format OUTPUT_FORMAT
Output extension/format
--stdout Write processed audio to stdout stream (for piping); requires exactly one input
--overwrite Overwrite existing outputs
--dry-run Resolve and print, but do not write files
--verbosity {silent,quiet,normal,verbose,debug}
Console verbosity level
-v, --verbose Increase verbosity (repeat for extra detail)
--quiet Reduce output and hide status bars
--silent Suppress all console output
--normalize {none,peak,rms}
... [truncated]
Module Docstring
Trajectory-aware multichannel convolution reverb for mono sources.
src/pvx/cli/pvxtransient.py
Purpose: Transient-aware time/pitch processing.
Classes: None
Functions: build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxtransient --help
CLI Help Snapshot
usage: python3 -m pvx.cli.pvxtransient [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX]
[--output-format OUTPUT_FORMAT]
[--stdout] [--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent]
[--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS]
[--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL]
[--clip] [--subtype SUBTYPE]
[--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}]
[--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}]
[--n-fft N_FFT]
[--win-length WIN_LENGTH]
[--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE]
[--time-stretch TIME_STRETCH]
[--target-duration TARGET_DURATION]
[--pitch-shift-semitones PITCH_SHIFT_SEMITONES]
[--pitch-shift-cents PITCH_SHIFT_CENTS]
[--pitch-shift-ratio PITCH_SHIFT_RATIO]
[--transient-threshold TRANSIENT_THRESHOLD]
[
... [truncated]
Module Docstring
Transient-aware time/pitch processing.
src/pvx/cli/pvxtvfilter.py
Purpose: Time-varying response filter wrapper.
Classes: None
Functions: main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxtvfilter --help
CLI Help Snapshot
usage: pvx tvfilter [-h] [-o OUTPUT_DIR] [--output OUTPUT] [--suffix SUFFIX]
[--output-format OUTPUT_FORMAT] [--stdout] [--overwrite]
[--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}] [-v]
[--quiet] [--silent] [--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS] [--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL] [--clip]
[--subtype SUBTYPE] [--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}] [--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}] [--n-fft N_FFT]
[--win-length WIN_LENGTH] [--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX] [--no-onset-realign]
[--no-center] [--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE]
[--operator {filter,tvfilter,noisefilter,bandamp,spec-compander}]
--response RESPONSE [--response-mix RESPONSE_MIX]
[--dry-mix DRY_MIX] [--response-gain-db RESPONSE_GAIN_DB]
[--transpose-semitones TRANSPOSE_SEMITONES]
[--shift-bins SHIFT_BINS] [--tv-map TV_MAP]
[--tv-key TV_KEY]
[--tv-interp {none,stairstep,nearest,linear,cubic,polynomial,exponential,s_curve,smootherstep}]
[--tv-order TV_ORDER] [--noise-floor NOISE_FLOOR]
[--band-gain-db BAND_GAIN_DB]
[--band-width-bins BAND_WIDTH_BINS]
[--peak-count PEAK_COUNT]
[--comp-threshold-db COMP_THRESHOLD_DB]
[--comp-ratio COMP_RATIO] [--expand-ratio EXPAND_RATIO]
inputs [inputs ...]
Response-driven spectral processing using PVXRF artifacts.
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--output, --out OUTPUT
Explicit output file path (single-input mode only). Alias: --out
--suffix SUFFIX Output filename suffix (default: _filter)
--output-format OUTPUT_FORMAT
Output extension/format
--stdout Write processed audio to stdout stream (for piping); requires exactly one input
--overwrite Overwrite existing outputs
--dry-run Resolve a
... [truncated]
Module Docstring
Time-varying response filter wrapper.
src/pvx/cli/pvxunison.py
Purpose: Create unison width via micro-detuned phase-vocoder voices.
Classes: None
Functions: cents_to_ratio, pan_gains, build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxunison --help
CLI Help Snapshot
usage: python3 -m pvx.cli.pvxunison [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX]
[--output-format OUTPUT_FORMAT] [--stdout]
[--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent]
[--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS]
[--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL]
[--clip] [--subtype SUBTYPE]
[--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}]
[--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}]
[--n-fft N_FFT] [--win-length WIN_LENGTH]
[--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE]
[--voices VOICES]
[--detune-cents DETUNE_CENTS]
[--width WIDTH] [--dry-mix DRY_MIX]
[--resample-mode {auto,fft,linear}]
inputs [inputs ...]
Stereo unison thickener
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--output, --out OUTPUT
Explicit output file path (single-input mode only). Alias: --out
--suffix SUFFIX
... [truncated]
Module Docstring
Create unison width via micro-detuned phase-vocoder voices.
src/pvx/cli/pvxvoc.py
Purpose: CLI entrypoint wrapper for the phase-vocoder tool.
Classes: None Functions: None
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxvoc --help
CLI Help Snapshot
usage: python3 -m pvx.cli.pvxvoc [-h] [-o OUTPUT_DIR] [--suffix SUFFIX]
[--output-format OUTPUT_FORMAT]
[--out OUTPUT] [--overwrite] [--dry-run]
[--stdout]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent]
[--preset {none,default,vocal,ambient,extreme,vocal_studio,drums_safe,extreme_ambient,stereo_coherent}]
[--example {all,basic,vocal,ambient,extreme,drums_safe,stereo_coherent,hybrid,benchmark,gpu,pipeline,csv}]
[--guided] [--stretch STRETCH] [--gpu]
[--cpu]
[--quality-profile {neutral,speech,music,percussion,ambient,extreme}]
[--auto-profile]
[--auto-profile-lookahead-seconds AUTO_PROFILE_LOOKAHEAD_SECONDS]
[--auto-transform] [--n-fft N_FFT]
[--win-length WIN_LENGTH]
[--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--no-center]
[--phase-locking {off,identity}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--transient-preserve]
[--transient-threshold TRANSIENT_THRESHOLD]
[--fourier-sync]
[--fourier-sync-min-fft FOURIER_SYNC_MIN_FFT]
[--fourier-sync-max-fft FOURIER_SYNC_MAX_FFT]
[--fourier-sync-smooth FOURIER_SYNC_SMOOTH]
[--multires-fusion]
[--multires-ffts MULTIRES_FFTS]
[--multires-weights MULTIRES_WEIGHTS]
[--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE]
[--time-stretch TIME_STRETCH]
[--target-duration TARGET_DURATION]
[--stretch-mode {auto,standard,multistage}]
[--extreme-time-stretch]
[--extreme-stretch-threshold EXTREME_STRETCH_THRESHOLD]
[--max-stage-stretch MAX_STAGE_STRETCH]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--ambient-preset]
[--auto-segment-seconds AUTO_SEGMENT_SECONDS]
[--checkpoint-dir CHECKPOINT_DIR]
[--checkpoint-id CHECKPOINT_ID] [--resume]
[--interp {none,linear,nearest,cubic,polynomial,exponential,s_curve,smootherstep}]
[--order ORDER]
[--transient-mode {off,reset,hybrid,wsola}]
[--transient-sensitivity TRANSIENT_SENSITIVITY]
[--transient-protect-ms TRANSIENT_PROTECT_MS]
[--transient-crossfade-ms TRANSIENT_CROSSFADE_MS]
[--stereo-mode {independent,mid_side_lock,ref_channel_lock}]
[--ref-channel REF_CHANNEL]
[--coherence-strength COHERENCE_STRENGTH]
[--pitch-shift-semitones PITCH_SHIFT_SEMITONES |
--pitch-shift-cents PITCH_SHIFT_CENTS |
--pitch-shift-ratio PITCH_SHIFT_RATIO |
... [truncated]
Module Docstring
CLI entrypoint wrapper for the phase-vocoder tool.
src/pvx/cli/pvxwarp.py
Purpose: Time-warp an input according to a user-provided stretch map.
Classes: None
Functions: fill_stretch_segments, build_parser, main
Help commands: PYTHONPATH=src python3 -m pvx.cli.pvxwarp --help
CLI Help Snapshot
usage: python3 -m pvx.cli.pvxwarp [-h] [-o OUTPUT_DIR] [--output OUTPUT]
[--suffix SUFFIX]
[--output-format OUTPUT_FORMAT] [--stdout]
[--overwrite] [--dry-run]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent]
[--normalize {none,peak,rms}]
[--peak-dbfs PEAK_DBFS]
[--rms-dbfs RMS_DBFS]
[--target-lufs TARGET_LUFS]
[--compressor-threshold-db COMPRESSOR_THRESHOLD_DB]
[--compressor-ratio COMPRESSOR_RATIO]
[--compressor-attack-ms COMPRESSOR_ATTACK_MS]
[--compressor-release-ms COMPRESSOR_RELEASE_MS]
[--compressor-makeup-db COMPRESSOR_MAKEUP_DB]
[--expander-threshold-db EXPANDER_THRESHOLD_DB]
[--expander-ratio EXPANDER_RATIO]
[--expander-attack-ms EXPANDER_ATTACK_MS]
[--expander-release-ms EXPANDER_RELEASE_MS]
[--compander-threshold-db COMPANDER_THRESHOLD_DB]
[--compander-compress-ratio COMPANDER_COMPRESS_RATIO]
[--compander-expand-ratio COMPANDER_EXPAND_RATIO]
[--compander-attack-ms COMPANDER_ATTACK_MS]
[--compander-release-ms COMPANDER_RELEASE_MS]
[--compander-makeup-db COMPANDER_MAKEUP_DB]
[--limiter-threshold LIMITER_THRESHOLD]
[--soft-clip-level SOFT_CLIP_LEVEL]
[--soft-clip-type {tanh,arctan,cubic}]
[--soft-clip-drive SOFT_CLIP_DRIVE]
[--hard-clip-level HARD_CLIP_LEVEL] [--clip]
[--subtype SUBTYPE]
[--bit-depth {inherit,16,24,32f}]
[--dither {none,tpdf}]
[--dither-seed DITHER_SEED]
[--true-peak-max-dbtp TRUE_PEAK_MAX_DBTP]
[--metadata-policy {none,sidecar,copy}]
[--n-fft N_FFT] [--win-length WIN_LENGTH]
[--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--no-center]
[--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE] --map MAP
[--crossfade-ms CROSSFADE_MS]
[--resample-mode {auto,fft,linear}]
inputs [inputs ...]
Apply variable time-stretch map from CSV
positional arguments:
inputs Input files/globs or '-' for stdin
options:
-h, --help show this help message and exit
-o, --output-dir OUTPUT_DIR
Output directory
--output, --out OUTPUT
Explicit output file path (single-input mode only). Alias: --out
--suffix SUFFIX Output filename suffix (default: _warp)
--output-format OUTPUT_FORMAT
Output extension/format
--stdout Write processed audio to stdout stream (for piping); require
... [truncated]
Module Docstring
Time-warp an input according to a user-provided stretch map.
src/pvx/core/__init__.py
Purpose: Core DSP/runtime internals shared by pvx CLI tools.
Classes: None Functions: None
Module Docstring
Core DSP/runtime internals shared by pvx CLI tools.
src/pvx/core/analysis_store.py
Purpose: Persistent phase-vocoder analysis artifact storage.
Classes: AnalysisArtifact
Functions: _utc_now_iso, _as_complex_spectrum, _canonical_meta, analysis_digest, summarize_analysis_artifact, analyze_audio, save_analysis_artifact, load_analysis_artifact
Module Docstring
Persistent phase-vocoder analysis artifact storage.
PVXAN schema:
- container: NumPy NPZ (compressed)
- required members:
- meta_json: UTF-8 JSON metadata payload
- spectrum_real: float64 array, shape (channels, frames, bins)
- spectrum_imag: float64 array, shape (channels, frames, bins)
src/pvx/core/attribution.py
Purpose: Centralized attribution text shared across pvx code and documentation.
Classes: None
Functions: python_header_reference, markdown_notice, html_notice
Module Docstring
Centralized attribution text shared across pvx code and documentation.
src/pvx/core/audio_metrics.py
Purpose: Shared audio metric summaries and ASCII table rendering.
Classes: AudioMetricSummary
Functions: _to_mono, _to_2d, _resample_1d_linear, _resample_audio_linear, _match_length, _principal_angle, _stft_complex, _stft_mag_db, _onset_envelope, _dbfs, _spectral_centroid_and_bw95, summarize_audio_metrics, _format_float, _ascii_table, render_audio_metrics_table, summarize_audio_comparison_metrics, render_audio_comparison_table
Module Docstring
Shared audio metric summaries and ASCII table rendering.
src/pvx/core/common.py
Purpose: Shared helpers for pvx DSP command-line tools.
Classes: SegmentSpec, StatusBar
Functions: add_console_args, build_examples_epilog, console_level, is_quiet, is_silent, log_message, log_error, build_status_bar, add_common_io_args, add_output_policy_args, add_vocoder_args, build_vocoder_config, validate_vocoder_args, resolve_inputs, read_audio, finalize_audio, write_output, print_input_output_metrics_table, default_output_path, _stream_format_name, parse_float_list, semitone_to_ratio, cents_to_ratio, time_pitch_shift_channel, time_pitch_shift_audio, read_segment_csv, concat_with_crossfade, ensure_runtime
Module Docstring
Shared helpers for pvx DSP command-line tools.
src/pvx/core/control_bus.py
Purpose: Control-bus routing helpers for time-varying CSV maps.
Classes: ControlRoute
Functions: normalize_control_name, _parse_finite_float, _parse_signal_name, parse_control_route, parse_control_routes, _source_column_candidates, _parse_row_float, _read_source_value, _eval_route, apply_control_routes_csv
Module Docstring
Control-bus routing helpers for time-varying CSV maps.
src/pvx/core/feature_tracking.py
Purpose: Frame-level feature tracking for control-rate audio modulation maps.
Classes: None
Functions: _safe_div, _hz_to_mel, _mel_to_hz, _mel_filterbank, _dct_type2, _frame, _acf_peak_ratio, _estimate_formants_lpc, _estimate_tempo_bpm, _estimate_inharmonicity, extract_feature_tracks, feature_subset, as_serializable_columns
Module Docstring
Frame-level feature tracking for control-rate audio modulation maps.
src/pvx/core/output_policy.py
Purpose: Shared output policy helpers for bit depth, dither, true-peak, and metadata sidecars.
Classes: None
Functions: db_to_amplitude, _resample_linear_1d, true_peak_dbtp, enforce_true_peak_limit, resolve_output_subtype, subtype_bit_depth, apply_dither_if_needed, prepare_output_audio, source_metadata, write_metadata_sidecar, validate_output_policy_args
Module Docstring
Shared output policy helpers for bit depth, dither, true-peak, and metadata sidecars.
src/pvx/core/presets.py
Purpose: Preset definitions for pvx processing intent modes.
Classes: None Functions: None
Module Docstring
Preset definitions for pvx processing intent modes.
src/pvx/core/pvc_functions.py
Purpose: PVC-style function-stream utilities for control-rate map authoring.
Classes: None
Functions: _sanitize_times_values, _auto_format_from_path, parse_control_points_payload, load_control_points, dump_control_points_csv, dump_control_points_json, generate_envelope_points, _moving_average, reshape_control_points
Module Docstring
PVC-style function-stream utilities for control-rate map authoring.
Phase 6 coverage:
- envelope: generate deterministic control trajectories
- reshape: transform existing control trajectories
src/pvx/core/pvc_harmony.py
Purpose: PVC-inspired harmonic/chord spectral mapping for pvx.
Classes: None
Functions: _coerce_audio, chord_mapper_mask, _inharmonic_inverse_map, _interp_mag_phase_from_freq, process_harmony_operator
Module Docstring
PVC-inspired harmonic/chord spectral mapping for pvx.
Phase 5 coverage:
- chordmapper
- inharmonator
src/pvx/core/pvc_ops.py
Purpose: PVC-inspired response-driven spectral operators for pvx.
Classes: None
Functions: _piecewise_segment_fraction, _smoothstep, _smootherstep, _exp_ease, db_to_amp, _coerce_audio, _resize_curve, _shift_response_curve, _read_rows_from_map, load_scalar_control_points, evaluate_scalar_control, _frame_times, _blend_dry_wet, _compute_band_shape, process_response_operator
Module Docstring
PVC-inspired response-driven spectral operators for pvx.
Phase 3 coverage:
- filter
- tvfilter
- noisefilter
- bandamp
- spec-compander
src/pvx/core/pvc_resonators.py
Purpose: PVC-inspired ring/resonator operators for pvx.
Classes: None
Functions: _coerce_audio, _sample_times, _ring_modulate, _resonant_peak_filter, process_ring_operator
Module Docstring
PVC-inspired ring/resonator operators for pvx.
Phase 4 coverage:
- ring
- ringfilter
- ringtvfilter
src/pvx/core/response_store.py
Purpose: Persistent frequency-response artifact storage.
Classes: ResponseArtifact
Functions: _canonical_meta, _moving_average_1d, _aggregate_magnitude, _aggregate_phase, _normalize_magnitude, response_digest, summarize_response_artifact, response_from_analysis, save_response_artifact, load_response_artifact
Module Docstring
Persistent frequency-response artifact storage.
PVXRF schema:
- container: NumPy NPZ (compressed)
- required members:
- meta_json: UTF-8 JSON metadata payload
- frequencies_hz: float64 array, shape (bins,)
- magnitude: float64 array, shape (channels, bins)
- phase: float64 array, shape (channels, bins)
src/pvx/core/spatial_reverb.py
Purpose: Trajectory-aware multichannel convolution reverb helpers.
Classes: None
Functions: _parse_float_triplet, parse_coordinate, parse_speaker_angles, default_speaker_angles, _angles_to_unit_vectors, _shape_curve, compute_trajectory_gains, _fft_convolve_or_fallback, apply_multichannel_trajectory_reverb, resample_audio_linear
Module Docstring
Trajectory-aware multichannel convolution reverb helpers.
src/pvx/core/stereo.py
Purpose: Stereo/multichannel helper utilities.
Classes: None
Functions: validate_ref_channel, lr_to_ms, ms_to_lr
Module Docstring
Stereo/multichannel helper utilities.
src/pvx/core/streaming.py
Purpose: Stateful chunked streaming helpers for the unified pvx CLI.
Classes: None
Functions: _read_audio, _build_config, _resolve_voc_args_for_stream, _chunk_core_extract, _concat_exact, run_stateful_stream
Module Docstring
Stateful chunked streaming helpers for the unified pvx CLI.
src/pvx/core/transients.py
Purpose: Transient analysis and segmentation helpers for hybrid pvx modes.
Classes: TransientFeatures, TransientRegion
Functions: _principal, _normalize_robust, _frame_signal, compute_transient_features, pick_onset_frames, _mask_to_regions, _enforce_min_region_samples, build_transient_mask, map_mask_to_output, smooth_binary_mask, detect_transient_regions
Module Docstring
Transient analysis and segmentation helpers for hybrid pvx modes.
src/pvx/core/voc.py
Purpose: Multi-channel phase vocoder CLI for time and pitch manipulation.
Classes: VocoderConfig, PitchConfig, ControlSegment, DynamicControlRef, DynamicControlSignal, JobResult, FourierSyncPlan, AudioBlockResult, RuntimeConfig
Functions: db_to_amplitude, cents_to_ratio, _eval_numeric_expr, parse_numeric_expression, parse_pitch_ratio_value, _is_power_of_two, parse_numeric_list, parse_int_list, _looks_like_control_signal_reference, looks_like_control_signal_reference, _parse_scalar_cli_value, _parse_int_cli_value, parse_int_cli_value, _parse_control_signal_value, _coerce_control_interp, _control_value_column_candidates, _deduplicate_points, _normalize_control_points, _parse_csv_control_points, _parse_json_control_points, load_dynamic_control_signal, _smoothstep, _smootherstep, _exp_ease, _piecewise_ease_sample, _sample_dynamic_signal, estimate_content_features, suggest_quality_profile, apply_quality_profile_overrides, resolve_transform_auto, _has_cupy, _is_cupy_array, _array_module, _to_numpy, _to_runtime_array, _as_float, _as_bool, _i0, normalize_transform_name, transform_bin_count, _analysis_angular_velocity, _transform_requires_scipy, ensure_transform_backend_available, validate_transform_available, _resize_or_pad_1d, _onesided_to_full_spectrum, _forward_transform_numpy, _inverse_transform_numpy, _forward_transform, _inverse_transform, add_runtime_args, runtime_config, configure_runtime, configure_runtime_from_args, ensure_runtime_dependencies, principal_angle, _cosine_series_window, _bartlett_window, _bohman_window, _cosine_window, _sine_window, _triangular_window, _bartlett_hann_window, _tukey_window, _parzen_window, _lanczos_window, _welch_window, _gaussian_window, _general_gaussian_window, _exponential_window, _cauchy_window, _cosine_power_window, _hann_poisson_window, _general_hamming_window, _kaiser_window, make_window, pad_for_framing, stft, istft, scaled_win_length, resize_spectrum_bins, smooth_series, regularize_frame_lengths, fill_nan_with_nearest, lock_fft_length_to_f0, build_fourier_sync_plan, compute_transient_flags, build_output_time_steps, create_phase_rng, draw_random_phase, apply_phase_engine, find_spectral_peaks, apply_identity_phase_locking, phase_vocoder_time_stretch, phase_vocoder_time_stretch_fourier_sync, compute_multistage_stretches, phase_vocoder_time_stretch_multistage, stretch_channel_with_strategy, phase_vocoder_time_stretch_multires_fusion, linear_resample_1d, resample_1d, force_length, estimate_f0_autocorrelation, normalize_audio, _envelope_coeff, _envelope_follower, _estimate_lufs_or_rms_db, _apply_compressor, _apply_expander, _apply_compander, _apply_limiter, _apply_soft_clip, add_mastering_args, validate_mastering_args, apply_mastering_chain, cepstral_envelope, apply_formant_preservation, choose_pitch_ratio, _parse_optional_float, parse_control_segments_csv, apply_control_confidence_policy, smooth_control_ratios, expand_control_segments, load_control_segments, _lock_channel_phase_to_reference, process_audio_block, resolve_base_stretch, build_vocoder_config_from_args, _finalize_dynamic_segment_values, build_dynamic_control_segments, compute_output_path, _stream_format_name, _read_audio_input, read_audio_input, _write_audio_output, concat_audio_chunks, build_uniform_control_segments, resolve_checkpoint_context, load_checkpoint_chunk, save_checkpoint_chunk, write_manifest, process_file, force_length_multi, resample_multi, validate_args, build_parser, run_guided_mode, expand_inputs, collect_cli_flags, apply_named_preset, main
Help commands: PYTHONPATH=src python3 -m pvx.core.voc --help
CLI Help Snapshot
usage: python3 -m pvx.core.voc [-h] [-o OUTPUT_DIR] [--suffix SUFFIX]
[--output-format OUTPUT_FORMAT] [--out OUTPUT]
[--overwrite] [--dry-run] [--stdout]
[--verbosity {silent,quiet,normal,verbose,debug}]
[-v] [--quiet] [--silent]
[--preset {none,default,vocal,ambient,extreme,vocal_studio,drums_safe,extreme_ambient,stereo_coherent}]
[--example {all,basic,vocal,ambient,extreme,drums_safe,stereo_coherent,hybrid,benchmark,gpu,pipeline,csv}]
[--guided] [--stretch STRETCH] [--gpu] [--cpu]
[--quality-profile {neutral,speech,music,percussion,ambient,extreme}]
[--auto-profile]
[--auto-profile-lookahead-seconds AUTO_PROFILE_LOOKAHEAD_SECONDS]
[--auto-transform] [--n-fft N_FFT]
[--win-length WIN_LENGTH] [--hop-size HOP_SIZE]
[--window {hann,hamming,blackman,blackmanharris,nuttall,flattop,blackman_nuttall,exact_blackman,sine,bartlett,boxcar,triangular,bartlett_hann,tukey,tukey_0p1,tukey_0p25,tukey_0p75,tukey_0p9,parzen,lanczos,welch,gaussian_0p25,gaussian_0p35,gaussian_0p45,gaussian_0p55,gaussian_0p65,general_gaussian_1p5_0p35,general_gaussian_2p0_0p35,general_gaussian_3p0_0p35,general_gaussian_4p0_0p35,exponential_0p25,exponential_0p5,exponential_1p0,cauchy_0p5,cauchy_1p0,cauchy_2p0,cosine_power_2,cosine_power_3,cosine_power_4,hann_poisson_0p5,hann_poisson_1p0,hann_poisson_2p0,general_hamming_0p50,general_hamming_0p60,general_hamming_0p70,general_hamming_0p80,bohman,cosine,kaiser,rect}]
[--kaiser-beta KAISER_BETA]
[--transform {fft,dft,czt,dct,dst,hartley}]
[--no-center] [--phase-locking {off,identity}]
[--phase-engine {propagate,hybrid,random}]
[--ambient-phase-mix AMBIENT_PHASE_MIX]
[--phase-random-seed PHASE_RANDOM_SEED]
[--transient-preserve]
[--transient-threshold TRANSIENT_THRESHOLD]
[--fourier-sync]
[--fourier-sync-min-fft FOURIER_SYNC_MIN_FFT]
[--fourier-sync-max-fft FOURIER_SYNC_MAX_FFT]
[--fourier-sync-smooth FOURIER_SYNC_SMOOTH]
[--multires-fusion]
[--multires-ffts MULTIRES_FFTS]
[--multires-weights MULTIRES_WEIGHTS]
[--device {auto,cpu,cuda}]
[--cuda-device CUDA_DEVICE]
[--time-stretch TIME_STRETCH]
[--target-duration TARGET_DURATION]
[--stretch-mode {auto,standard,multistage}]
[--extreme-time-stretch]
[--extreme-stretch-threshold EXTREME_STRETCH_THRESHOLD]
[--max-stage-stretch MAX_STAGE_STRETCH]
[--onset-time-credit]
[--onset-credit-pull ONSET_CREDIT_PULL]
[--onset-credit-max ONSET_CREDIT_MAX]
[--no-onset-realign] [--ambient-preset]
[--auto-segment-seconds AUTO_SEGMENT_SECONDS]
[--checkpoint-dir CHECKPOINT_DIR]
[--checkpoint-id CHECKPOINT_ID] [--resume]
[--interp {none,linear,nearest,cubic,polynomial,exponential,s_curve,smootherstep}]
[--order ORDER]
[--transient-mode {off,reset,hybrid,wsola}]
[--transient-sensitivity TRANSIENT_SENSITIVITY]
[--transient-protect-ms TRANSIENT_PROTECT_MS]
[--transient-crossfade-ms TRANSIENT_CROSSFADE_MS]
[--stereo-mode {independent,mid_side_lock,ref_channel_lock}]
[--ref-channel REF_CHANNEL]
[--coherence-strength COHERENCE_STRENGTH]
[--pitch-shift-semitones PITCH_SHIFT_SEMITONES |
--pitch-shift-cents PITCH_SHIFT_CENTS |
--pitch-shift-ratio PITCH_SHIFT_RATIO |
--target-f0 TARGET_F0]
[--analysis-channel {first,mix}]
[--f0-min F0_MIN] [--f0-max F0_MAX]
[--pitch-mode {standard,formant-
... [truncated]
Module Docstring
Multi-channel phase vocoder CLI for time and pitch manipulation.
src/pvx/core/voc_console.py
Purpose: Console, preset, and example helpers for the pvx voc CLI.
Classes: ProgressBar
Functions: add_console_args, console_level, is_quiet, is_silent, log_message, log_error, clone_args_namespace, collect_cli_flags, print_cli_examples, apply_named_preset
Module Docstring
Console, preset, and example helpers for the pvx voc CLI.
src/pvx/core/voc_jobs.py
Purpose: Job orchestration helpers for pvx voc renders.
Classes: None
Functions: compute_output_path, _stream_format_name, _hash_file_contents, _metadata_sidecar_path, _checkpoint_chunk_meta_path, _read_audio_input, _write_audio_output, concat_audio_chunks, build_uniform_control_segments, _checkpoint_job_id, _render_fingerprint, resolve_checkpoint_context, load_checkpoint_chunk, save_checkpoint_chunk, write_manifest, _resolve_output_path, _ensure_writable_target, _preflight_file_writes, _consume_prefetched_audio, _preflight_checkpoint_targets, process_file
Module Docstring
Job orchestration helpers for pvx voc renders.
src/pvx/core/wsola.py
Purpose: Deterministic WSOLA time-stretch primitives for transient handling.
Classes: None
Functions: _safe_window, wsola_time_stretch
Module Docstring
Deterministic WSOLA time-stretch primitives for transient handling.
src/pvx/integrations/__init__.py
Purpose: pvx.integrations โ Framework adapters for pvx augmentation pipelines.
Classes: None Functions: None
Module Docstring
pvx.integrations โ Framework adapters for pvx augmentation pipelines.
Provides thin, zero-dependency-on-framework-in-core adapters so that
pvx augmentation pipelines slot cleanly into PyTorch, HuggingFace
datasets, and TensorFlow data pipelines.
Usage
-----
Each submodule guards its framework import so only the framework you
actually use needs to be installed::
# PyTorch
from pvx.integrations.pytorch import PvxAugmentDataset
# HuggingFace
from pvx.integrations.huggingface import make_augment_map_fn
# TensorFlow
from pvx.integrations.tensorflow import make_tf_augment_fn
src/pvx/integrations/huggingface.py
Purpose: HuggingFace datasets integration for pvx augmentation pipelines.
Classes: HFAugmentMapper
Functions: make_augment_map_fn, augment_dataset
Module Docstring
HuggingFace datasets integration for pvx augmentation pipelines.
Provides ``map()``-compatible functions so that pvx augmentation slots
cleanly into HuggingFace ``datasets.Dataset`` workflows with full
reproducibility and multiprocessing support.
Requirements
------------
``datasets`` must be installed separately::
pip install datasets
Usage
-----
>>> from datasets import load_dataset
>>> from pvx.augment import Pipeline, AddNoise, RoomSimulator
>>> from pvx.integrations.huggingface import make_augment_map_fn
>>>
>>> ds = load_dataset("speech_commands", split="train")
>>>
>>> pipeline = Pipeline([
... AddNoise(snr_db=(10, 30), p=0.5),
... RoomSimulator(rt60_range=(0.1, 0.8), p=0.4),
... ], seed=42)
>>>
>>> augment_fn = make_augment_map_fn(
... pipeline,
... audio_column="audio",
... sr_column=None, # infer from audio dict
... output_column="audio_aug",
... )
>>> ds_aug = ds.map(augment_fn, batched=False, num_proc=4)
src/pvx/integrations/pytorch.py
Purpose: PyTorch integration for pvx augmentation pipelines.
Classes: PvxAugmentDataset, PvxAugmentTransform, AudioCollator
Functions: _require_torch
Module Docstring
PyTorch integration for pvx augmentation pipelines.
Provides ``torch.utils.data.Dataset`` subclasses and collate helpers so
that pvx augmentation pipelines slot directly into PyTorch training loops
with no boilerplate.
Requirements
------------
``torch`` and ``torchaudio`` must be installed separately::
pip install torch torchaudio
Usage
-----
>>> from pvx.augment import Pipeline, AddNoise, RoomSimulator, SpecAugment
>>> from pvx.integrations.pytorch import PvxAugmentDataset
>>>
>>> pipeline = Pipeline([
... AddNoise(snr_db=(10, 30), p=0.5),
... RoomSimulator(rt60_range=(0.1, 0.8), p=0.4),
... SpecAugment(freq_mask_param=30, time_mask_param=50, p=0.5),
... ], seed=42)
>>>
>>> file_list = ["speech1.wav", "speech2.wav", ...]
>>> dataset = PvxAugmentDataset(
... file_list,
... pipeline=pipeline,
... sample_rate=16000,
... labels=labels, # optional list of int labels
... duration_s=3.0, # optional fixed crop
... )
>>> loader = torch.utils.data.DataLoader(
... dataset, batch_size=32, num_workers=4,
... collate_fn=PvxAugmentDataset.collate_fn,
... )
src/pvx/integrations/tensorflow.py
Purpose: TensorFlow / tf.data integration for pvx augmentation pipelines.
Classes: None
Functions: _require_tf, make_tf_augment_fn, make_tf_augment_map_fn, pvx_augment_tf_dataset
Module Docstring
TensorFlow / tf.data integration for pvx augmentation pipelines.
Provides helpers to wrap pvx augmentation pipelines inside ``tf.data``
pipelines using ``tf.py_function`` for gradient-free data augmentation.
Requirements
------------
``tensorflow`` must be installed separately::
pip install tensorflow
Usage
-----
>>> import tensorflow as tf
>>> from pvx.augment import Pipeline, AddNoise, RoomSimulator
>>> from pvx.integrations.tensorflow import make_tf_augment_fn, pvx_augment_tf_dataset
>>>
>>> pipeline = Pipeline([
... AddNoise(snr_db=(10, 30), p=0.5),
... RoomSimulator(rt60_range=(0.1, 0.8), p=0.4),
... ], seed=42)
>>>
>>> # Wrap a tf.data dataset
>>> tf_dataset = tf.data.Dataset.from_tensor_slices(audio_array)
>>> tf_dataset = pvx_augment_tf_dataset(tf_dataset, pipeline, sample_rate=16000)
>>>
>>> # Or get a map function for manual use
>>> augment_fn = make_tf_augment_fn(pipeline, sample_rate=16000)
>>> tf_dataset = tf_dataset.map(augment_fn, num_parallel_calls=tf.data.AUTOTUNE)
src/pvx/metrics/__init__.py
Purpose: Objective metric helpers for pvx benchmarks and tests.
Classes: None Functions: None
Module Docstring
Objective metric helpers for pvx benchmarks and tests.
src/pvx/metrics/coherence.py
Purpose: Inter-channel coherence drift metrics.
Classes: None
Functions: _principal, _stft, interchannel_coherence_drift, stereo_coherence_drift_score
Module Docstring
Inter-channel coherence drift metrics.
src/pvx/voc_cli.py
Purpose: CLI entrypoint for the phase-vocoder tool.
Classes: None
Functions: _prompt_text, _prompt_choice, run_guided_mode, expand_inputs, _build_explain_plan, _manifest_entries, _preflight_manifest_target, main
Help commands: python3 src/pvx/voc_cli.py, python3 src/pvx/voc_cli.py --help
Module Docstring
CLI entrypoint for the phase-vocoder tool.
src/pvxalgorithms/__init__.py
Purpose: Compatibility shim for pvxalgorithms namespace.
Classes: None Functions: None
Module Docstring
Compatibility shim for `pvxalgorithms` namespace.
Use `pvx.algorithms` as the canonical import path.
src/pvxalgorithms/base.py
Purpose: Compatibility shim for pvxalgorithms.base.
Classes: None Functions: None
Module Docstring
Compatibility shim for `pvxalgorithms.base`.
src/pvxalgorithms/registry.py
Purpose: Compatibility shim for pvxalgorithms.registry.
Classes: None Functions: None
Module Docstring
Compatibility shim for `pvxalgorithms.registry`.
tests/test_algorithms_generated.py
Purpose: Regression smoke tests for generated pvx algorithm wrappers.
Classes: TestGeneratedAlgorithms
Functions: None
Help commands: python3 tests/test_algorithms_generated.py
Module Docstring
Regression smoke tests for generated pvx algorithm wrappers.
This test verifies that every algorithm listed in `pvx.algorithms.registry`
is importable and can process a synthetic stereo signal while returning
finite 2D output and honest dispatch metadata.
tests/test_alpha_release_ready.py
Purpose: Direct seam tests for alpha-release refactors.
Classes: TestCLIHelperSeams, TestVocCompatibilitySeams
Functions: None
Help commands: python3 tests/test_alpha_release_ready.py
Module Docstring
Direct seam tests for alpha-release refactors.
tests/test_analysis_response_store.py
Purpose: Unit tests for PVXAN/PVXRF artifact storage and determinism.
Classes: TestAnalysisResponseStore
Functions: None
Help commands: python3 tests/test_analysis_response_store.py
Module Docstring
Unit tests for PVXAN/PVXRF artifact storage and determinism.
tests/test_audio_metrics.py
Purpose: Tests for shared audio metric table utilities.
Classes: TestAudioMetrics
Functions: None
Help commands: python3 tests/test_audio_metrics.py
Module Docstring
Tests for shared audio metric table utilities.
tests/test_augment_bench_gate.py
Purpose: Regression tests for directional augment benchmark gates.
Classes: TestAugmentBenchGate
Functions: None
Help commands: python3 tests/test_augment_bench_gate.py
Module Docstring
Regression tests for directional augment benchmark gates.
tests/test_augment_mode.py
Purpose: Unit tests for pvx augment helper mode.
Classes: TestAugmentMode
Functions: None
Help commands: python3 tests/test_augment_mode.py
Module Docstring
Unit tests for pvx augment helper mode.
tests/test_augment_transforms.py
Purpose: Unit tests for pvx.augment transform library.
Classes: TestPipelineCore, TestAddNoise, TestImpulseNoise, TestRoomSimulator, TestCodecDegradation, TestBitCrusher, TestSpecAugment, TestEQPerturber, TestGainPerturber, TestNormalizer, TestClippingSimulator, TestTimeShift, TestReverse, TestFade, TestFixedLengthCrop, TestPresetFactories, TestEngineSelection, TestPluginSystem, TestPipelineConfig
Functions: _mono, _stereo, _sine
Help commands: python3 tests/test_augment_transforms.py
Module Docstring
Unit tests for pvx.augment transform library.
Tests cover: shape preservation, reproducibility, per-transform correctness,
pipeline composition, and combinators.
tests/test_benchmark_metrics.py
Purpose: Unit tests for benchmark metric primitives.
Classes: TestBenchmarkMetrics
Functions: None
Help commands: python3 tests/test_benchmark_metrics.py
Module Docstring
Unit tests for benchmark metric primitives.
tests/test_benchmark_runner.py
Purpose: Tests for benchmark runner profile selection.
Classes: TestBenchmarkRunnerProfiles
Functions: None
Help commands: python3 tests/test_benchmark_runner.py
Module Docstring
Tests for benchmark runner profile selection.
tests/test_cli_regression.py
Purpose: CLI regression tests for pvxvoc end-to-end workflows.
Classes: TestCLIRegression
Functions: write_stereo_tone, write_mono_tone, write_mono_glide, write_mono_complex, write_multichannel_ir
Help commands: python3 tests/test_cli_regression.py
Module Docstring
CLI regression tests for pvxvoc end-to-end workflows.
Coverage includes:
- baseline multi-channel pitch/time behavior
- dry-run behavior with existing outputs
- microtonal cents-shift CLI path
- non-power-of-two Fourier-sync mode
- a numeric DSP snapshot metric for drift detection
tests/test_control_bus.py
Purpose: Unit tests for control-bus routing helpers.
Classes: TestControlBus
Functions: None
Help commands: python3 tests/test_control_bus.py
Module Docstring
Unit tests for control-bus routing helpers.
tests/test_docs_coverage.py
Purpose: Documentation coverage checks for CLI flags.
Classes: None
Functions: _string_literal, _iter_cli_sources, _tool_name_for_path, extract_flags_from_code, load_doc_pairs, test_cli_flag_docs_match_parser_definitions, test_readme_long_flags_exist_in_parser_sources
Module Docstring
Documentation coverage checks for CLI flags.
tests/test_docs_pdf.py
Purpose: Tests for scripts/scripts_generate_docs_pdf.py helpers.
Classes: TestDocsPdfHelpers
Functions: None
Help commands: python3 tests/test_docs_pdf.py
Module Docstring
Tests for scripts/scripts_generate_docs_pdf.py helpers.
tests/test_dsp.py
Purpose: DSP unit tests for core vocoder and analysis primitives.
Classes: TestPhaseVocoderDSP
Functions: spectral_centroid
Help commands: python3 tests/test_dsp.py
Module Docstring
DSP unit tests for core vocoder and analysis primitives.
These tests validate transform length behavior, F0 estimation, transient
handling, formant-preserving correction, Fourier-sync operation, runtime
selection, and support for all registered analysis windows.
tests/test_gpu_transforms.py
Purpose: Tests for GPU-accelerated augmentation transforms (pvx.augment.gpu).
Classes: TestTorchGainPerturber, TestTorchAddNoise, TestTorchEQPerturber, TestTorchSpecAugment, TestTorchNormalizer, TestTorchClippingSimulator, TestTorchPipeline, TestNumpyTransformAdapter, TestTorchTimeStretch, TestTorchPitchShift, TestTorchRoomSimulator, TestTorchMixup
Functions: _random_audio, _sine_audio
Module Docstring
Tests for GPU-accelerated augmentation transforms (pvx.augment.gpu).
tests/test_integrations.py
Purpose: Smoke tests for pvx.integrations.
Classes: TestHuggingFaceIntegration, TestTensorFlowIntegrationImport, TestPyTorchIntegrationImport
Functions: _mono
Help commands: python3 tests/test_integrations.py
Module Docstring
Smoke tests for pvx.integrations.
Tests that the integration modules import cleanly, the map functions work
with pure-NumPy inputs, and framework-specific functionality is properly
guarded behind optional import checks.
tests/test_microtonal.py
Purpose: Microtonal feature tests across CSV mapping, retune, and CLI pitch paths.
Classes: TestMicrotonalSupport
Functions: write_text
Help commands: python3 tests/test_microtonal.py
Module Docstring
Microtonal feature tests across CSV mapping, retune, and CLI pitch paths.
Ensures cents/ratio/semitone mapping behavior remains stable and that
microtonal pitch controls produce expected conversion outputs.
tests/test_output_policy.py
Purpose: Unit tests for shared output policy helpers.
Classes: TestOutputPolicy
Functions: _make_args
Help commands: python3 tests/test_output_policy.py, python3 tests/test_output_policy.py --help
Module Docstring
Unit tests for shared output policy helpers.
tests/test_pvc_parity_benchmark.py
Purpose: Tests for PVC parity benchmark runner and gate logic.
Classes: TestPVCParityBenchmark
Functions: None
Help commands: python3 tests/test_pvc_parity_benchmark.py
Module Docstring
Tests for PVC parity benchmark runner and gate logic.
tests/test_pvc_phase3_5.py
Purpose: Unit tests for PVC-inspired Phase 3-5 core operators.
Classes: TestPVCPhase3To5
Functions: None
Help commands: python3 tests/test_pvc_phase3_5.py
Module Docstring
Unit tests for PVC-inspired Phase 3-5 core operators.
tests/test_pvc_phase6.py
Purpose: Unit tests for PVC-inspired Phase 6 function-stream utilities.
Classes: TestPVCPhase6Utilities, TestPVCPhase6Cli
Functions: None
Help commands: python3 tests/test_pvc_phase6.py
Module Docstring
Unit tests for PVC-inspired Phase 6 function-stream utilities.
tests/test_pvxvoc_cli.py
Purpose: Regression tests for the dedicated pvxvoc CLI module.
Classes: TestPvxvocCli
Functions: None
Help commands: python3 tests/test_pvxvoc_cli.py
Module Docstring
Regression tests for the dedicated pvxvoc CLI module.
tests/test_transient_and_stereo.py
Purpose: Tests for hybrid transient processing and stereo coherence modes.
Classes: TestTransientHybridAndStereo
Functions: _build_args, _phase_drift_internal
Help commands: python3 tests/test_transient_and_stereo.py
Module Docstring
Tests for hybrid transient processing and stereo coherence modes.
tests/test_voc_console.py
Purpose: Focused regression tests for the extracted voc console helpers.
Classes: TestVocConsole
Functions: None
Help commands: python3 tests/test_voc_console.py
Module Docstring
Focused regression tests for the extracted voc console helpers.
tests/test_voc_jobs.py
Purpose: Focused regression tests for extracted voc job helpers.
Classes: TestVocJobs
Functions: None
Help commands: python3 tests/test_voc_jobs.py
Module Docstring
Focused regression tests for extracted voc job helpers.
Attribution
See ATTRIBUTION.md.