neverlib 0.2.6__tar.gz → 0.2.8__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- neverlib-0.2.8/CLAUDE.md +18 -0
- neverlib-0.2.8/MANIFEST.in +50 -0
- {neverlib-0.2.6/neverlib.egg-info → neverlib-0.2.8}/PKG-INFO +1 -1
- neverlib-0.2.8/neverlib/.claude/settings.local.json +9 -0
- neverlib-0.2.8/neverlib/Docs/audio_aug/test_volume.ipynb +416 -0
- neverlib-0.2.8/neverlib/Docs/audio_aug_test/test_volume.ipynb +289 -0
- neverlib-0.2.8/neverlib/Docs/filter/biquad.ipynb +129 -0
- neverlib-0.2.8/neverlib/Docs/filter/filter_family.ipynb +450 -0
- neverlib-0.2.8/neverlib/Docs/filter/highpass.ipynb +139 -0
- neverlib-0.2.8/neverlib/Docs/filter/scipy_filter_family.ipynb +110 -0
- neverlib-0.2.8/neverlib/Docs/vad/VAD_Energy.ipynb +167 -0
- neverlib-0.2.8/neverlib/Docs/vad/VAD_Silero.ipynb +325 -0
- neverlib-0.2.8/neverlib/Docs/vad/VAD_WebRTC.ipynb +189 -0
- neverlib-0.2.8/neverlib/Docs/vad/VAD_funasr.ipynb +192 -0
- neverlib-0.2.8/neverlib/Docs/vad/VAD_rvADfast.ipynb +162 -0
- neverlib-0.2.8/neverlib/Docs/vad/VAD_statistics.ipynb +532 -0
- neverlib-0.2.8/neverlib/Docs/vad/VAD_tenVAD.ipynb +292 -0
- neverlib-0.2.8/neverlib/Docs/vad/VAD_vadlib.ipynb +168 -0
- neverlib-0.2.8/neverlib/Docs/vad/VAD_whisper.ipynb +404 -0
- neverlib-0.2.8/neverlib/QA/gen_init.py +218 -0
- neverlib-0.2.8/neverlib/QA/get_fun.py +19 -0
- neverlib-0.2.8/neverlib/__init__.py +67 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/audio_aug/HarmonicDistortion.py +19 -13
- neverlib-0.2.8/neverlib/audio_aug/__init__.py +82 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/audio_aug/audio_aug.py +19 -14
- neverlib-0.2.8/neverlib/audio_aug/clip_aug.py +38 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/audio_aug/coder_aug.py +44 -24
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/audio_aug/coder_aug2.py +54 -37
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/audio_aug/loss_packet_aug.py +7 -7
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/audio_aug/quant_aug.py +19 -17
- neverlib-0.2.8/neverlib/data/000_short_enhance.wav +0 -0
- neverlib-0.2.8/neverlib/data/3956_speech.wav +0 -0
- neverlib-0.2.8/neverlib/data/3956_sweep.wav +0 -0
- neverlib-0.2.8/neverlib/data/vad_example.wav +0 -0
- neverlib-0.2.8/neverlib/data/white.wav +0 -0
- neverlib-0.2.8/neverlib/data/white_EQ.wav +0 -0
- neverlib-0.2.8/neverlib/data/white_matched.wav +0 -0
- neverlib-0.2.8/neverlib/data_analyze/__init__.py +69 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/data_analyze/dataset_analyzer.py +109 -114
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/data_analyze/quality_metrics.py +87 -89
- neverlib-0.2.8/neverlib/data_analyze/rms_distrubution.py +43 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/data_analyze/spectral_analysis.py +43 -46
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/data_analyze/statistics.py +76 -76
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/data_analyze/temporal_features.py +15 -6
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/data_analyze/visualization.py +208 -144
- neverlib-0.2.8/neverlib/filter/__init__.py +40 -0
- neverlib-0.2.8/neverlib/filter/auto_eq/__init__.py +55 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/filter/auto_eq/de_eq.py +0 -2
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/filter/common.py +24 -5
- neverlib-0.2.8/neverlib/metrics/DNSMOS/bak_ovr.onnx +0 -0
- neverlib-0.2.8/neverlib/metrics/DNSMOS/model_v8.onnx +0 -0
- neverlib-0.2.8/neverlib/metrics/DNSMOS/sig.onnx +0 -0
- neverlib-0.2.8/neverlib/metrics/DNSMOS/sig_bak_ovr.onnx +0 -0
- neverlib-0.2.8/neverlib/metrics/__init__.py +59 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/metrics/dnsmos.py +4 -15
- neverlib-0.2.8/neverlib/metrics/pDNSMOS/sig_bak_ovr.onnx +0 -0
- neverlib-0.2.8/neverlib/metrics/pesq_c/PESQ +0 -0
- neverlib-0.2.8/neverlib/metrics/pesq_c/dsp.c +553 -0
- neverlib-0.2.8/neverlib/metrics/pesq_c/dsp.h +138 -0
- neverlib-0.2.8/neverlib/metrics/pesq_c/pesq.h +294 -0
- neverlib-0.2.8/neverlib/metrics/pesq_c/pesqdsp.c +1047 -0
- neverlib-0.2.8/neverlib/metrics/pesq_c/pesqio.c +392 -0
- neverlib-0.2.8/neverlib/metrics/pesq_c/pesqmain.c +610 -0
- neverlib-0.2.8/neverlib/metrics/pesq_c/pesqmod.c +1417 -0
- neverlib-0.2.8/neverlib/metrics/pesq_c/pesqpar.h +297 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/metrics/snr.py +5 -1
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/metrics/spec.py +31 -21
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/metrics/test_pesq.py +0 -4
- neverlib-0.2.8/neverlib/tests/__init__.py +33 -0
- neverlib-0.2.8/neverlib/tests/test_imports.py +19 -0
- neverlib-0.2.8/neverlib/utils/__init__.py +71 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/utils/audio_split.py +6 -1
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/utils/checkGPU.py +17 -9
- neverlib-0.2.8/neverlib/utils/lazy_expose.py +29 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/utils/utils.py +55 -12
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/vad/PreProcess.py +66 -66
- neverlib-0.2.8/neverlib/vad/__init__.py +71 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/vad/class_get_speech.py +1 -1
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/vad/class_vad.py +3 -3
- neverlib-0.2.8/neverlib/vad/img.png +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8/neverlib.egg-info}/PKG-INFO +1 -1
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib.egg-info/SOURCES.txt +44 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/pyproject.toml +1 -1
- neverlib-0.2.6/MANIFEST.in +0 -22
- neverlib-0.2.6/neverlib/__init__.py +0 -31
- neverlib-0.2.6/neverlib/audio_aug/__init__.py +0 -12
- neverlib-0.2.6/neverlib/audio_aug/clip_aug.py +0 -41
- neverlib-0.2.6/neverlib/data_analyze/__init__.py +0 -20
- neverlib-0.2.6/neverlib/data_analyze/rms_distrubution.py +0 -62
- neverlib-0.2.6/neverlib/filter/__init__.py +0 -20
- neverlib-0.2.6/neverlib/filter/auto_eq/__init__.py +0 -36
- neverlib-0.2.6/neverlib/tests/__init__.py +0 -1
- neverlib-0.2.6/neverlib/utils/__init__.py +0 -15
- neverlib-0.2.6/neverlib/vad/__init__.py +0 -25
- {neverlib-0.2.6 → neverlib-0.2.8}/LICENSE +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/README.md +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/del_20250827162530.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/del_20250827162540.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/del_20250827162541.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/del_20250827162606.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/del_20250827162637.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/del_20250827162645.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/del_20250827162723.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/del_20250827162739.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/test_snr_20250806011311.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/test_snr_20250806011331.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/test_snr_20250806011342.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/test_snr_20250806011352.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/test_snr_20250806011403.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/test_snr_20250806011413.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/test_snr_20250806011435.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/test_snr_20250827161751.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/test_snr_20250827161754.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/test_snr_20250827161833.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/test_snr_20250827162017.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/test_snr_20250827162021.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/test_snr_20250827162028.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug/test_snr_20250827162033.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug_test/del_20250827162738.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug_test/del_20250827162819.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug_test/del_20250827162830.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug_test/del_20250827162846.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug_test/del_20250827162851.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug_test/del_20250827162903.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug_test/del_20250827162921.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug_test/del_20250827162926.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug_test/del_20250827163030.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/audio_aug_test/del_20250827163032.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/vad/1_20250810032405.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/Docs/vad/1_20250810032417.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/QA/html2markdown_20250822234112.md +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/QA/html2markdown_20250822234140.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/QA/html2markdown_20250822234141.md +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/QA/html2markdown_20250822234159.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/QA/html2markdown_20250822234200.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/QA/html2markdown_20250822234236.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/QA/html2markdown_20250822234340.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/QA/html2markdown_20250822234522.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/QA/html2markdown_20250822234601.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/QA/html2markdown_20250822234615.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/QA/html2markdown_20250822234715.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/QA/html2markdown_20250822234720.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/QA/html2markdown_20250822234903.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/__init___20250805234212.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/__init___20250904102635.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/__init___20250904102836.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/__init___20250904102838.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/__init___20250904102851.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250806010451.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250806010750.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250806010759.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250806010803.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250806010809.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250806011108.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826155913.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826164159.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826164217.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826164408.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826164423.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826164529.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826164824.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826164932.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826164947.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826165403.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826165421.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826165509.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826165702.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826165732.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826170041.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826170105.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826170154.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826170220.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826170221.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826170228.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826170231.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826212001.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220038.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220133.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220148.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220154.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220156.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220314.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220343.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220345.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220349.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220429.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220447.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220601.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220638.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220641.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220647.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220653.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220655.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220731.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220739.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220747.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220801.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220822.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826220901.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826221107.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826221310.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826221353.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826221821.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826221838.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826221906.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826221930.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826221939.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826221955.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826222008.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826222017.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826222046.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826222105.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826222206.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826222302.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826222336.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826222455.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826222526.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826222541.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826222624.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826222714.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826222820.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826222827.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826222927.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826223009.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826223054.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826223225.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826223344.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826223356.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826223955.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826224210.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826224250.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826224323.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826224452.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826224455.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826224502.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826224528.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826224658.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826224833.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826225013.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826225050.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826225241.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826225315.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826225404.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826225502.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826225950.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826225959.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826230222.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826230248.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826230638.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826230755.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826230941.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826231054.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826231117.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826231219.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826232330.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250826232352.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827152748.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827152806.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827152808.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827152917.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827152929.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827153100.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827153102.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827153301.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827153331.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827153525.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827153533.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827153541.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827153805.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827153832.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827153836.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827153846.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827153859.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827154453.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827154513.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827154538.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827154541.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827154612.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827154657.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827154708.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827154728.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827154755.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827154800.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827154917.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827154928.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827154932.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827154947.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827155015.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827155106.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827155114.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827155207.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827155300.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827155321.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827164703.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827164749.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827165252.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827165334.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827165404.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827165610.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827165805.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827170056.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827170106.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827170143.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827170216.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827170218.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827170314.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827171500.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827172347.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827172558.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827172559.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827172801.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827182522.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827182526.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827182626.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250827182715.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250904185444.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/audio_aug/audio_aug_20250904185538.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/dataAnalyze/__init___20250805234204.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/dataAnalyze/__init___20250806204125.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/dataAnalyze/__init___20250806204139.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/dataAnalyze/__init___20250806204159.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/data_analyze/__init___20250806204158.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/data_analyze/__init___20250827163248.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/__init___20250820103351.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/__init___20250821102348.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/__init___20250821102405.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/__init___20250819213121.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/__init___20250821102241.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/__init___20250821102259.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/__init___20250821102307.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/__init___20250821102310.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/__init___20250821102318.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/__init___20250821102507.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/de_eq_20250820103848.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/de_eq_20250821102422.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250805234206.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250820140732.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250820140745.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250820140816.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250820140938.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250820141003.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250820141006.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250820141019.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250820141049.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250820141211.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250820141227.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250820141311.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250820141340.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250820141712.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250820141733.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250820141755.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250821102434.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250821102500.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250821102502.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250821143140.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250821153208.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/freq_eq_20250821153214.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/ga_eq_basic_20250820102957.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/ga_eq_basic_20250820113054.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/ga_eq_basic_20250820113150.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/ga_eq_basic_20250820113520.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/ga_eq_basic_20250820113525.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/ga_eq_basic_20250821102212.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/ga_eq_basic_20250901110521.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/auto_eq/ga_eq_basic_20250901110652.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/common_20250806002134.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/common_20250821120448.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/filter/common_20250821120453.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250806001612.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815180659.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815180701.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815181321.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815181327.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815181331.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815181620.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815181631.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815181742.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815181824.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815181834.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815181922.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815182011.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815182036.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815182936.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815182942.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183032.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183101.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183121.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183123.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183214.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183240.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183248.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183407.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183409.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183431.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183507.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183513.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183618.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183709.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183756.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183815.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183827.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183913.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815183914.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815184003.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815184040.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815184049.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815184104.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/dnsmos_20250815184200.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/lpc_lsp_metric_20250816015944.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/lpc_lsp_metric_20250816020142.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/lpc_lsp_metric_20250816020156.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/lpc_lsp_metric_20250816020554.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/lpc_lsp_metric_20250816020600.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/lpc_lsp_metric_20250816020631.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/lpc_lsp_metric_20250816020746.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/lpc_me_20250816013111.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/lpc_me_20250816013129.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/lpc_me_20250816015430.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/lpc_me_20250816015535.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/lpc_me_20250816015542.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/lpc_me_20250816015636.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/lpc_me_20250816015658.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/lpc_me_20250816015703.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/lpc_me_20250816015945.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/snr_20250806010538.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/snr_20250806211634.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/snr_20250827224201.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/snr_20250827234019.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/snr_20250827234028.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/snr_20250827234030.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250805234209.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816135530.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816135654.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816135736.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816135904.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816135921.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816140111.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816140543.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816140559.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816140602.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816140608.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816140654.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816140705.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816140755.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816140823.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816140832.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816140833.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816140922.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816141148.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816141219.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816141732.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816141740.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816142030.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816142107.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816142126.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816142410.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_20250816142415.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_metric_20250816135156.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_metric_20250816135226.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_metric_20250816135227.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_metric_20250816135306.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_metric_20250816135442.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_metric_20250816135448.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_metric_20250816135520.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_metric_20250816135537.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/metrics/spec_metric_20250816135653.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/utils/audio_split_20250805234209.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/utils/audio_split_20250904185309.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/utils/utils_20250813165516.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/utils/utils_20250904181341.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/utils/utils_20250904185546.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/utils/utils_20250904185548.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/utils/utils_20250904185603.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/utils/utils_20250904185636.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/utils/utils_20250904185658.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/utils/utils_20250904190053.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/vad/PreProcess_20250805234211.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/vad/PreProcess_20250809232455.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/vad/PreProcess_20250816020725.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/vad/VAD_Silero_20250805234211.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/vad/VAD_Silero_20250809232456.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/vad/VAD_WebRTC_20250805234211.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/vad/VAD_WebRTC_20250809232456.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/vad/VAD_funasr_20250805234211.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/vad/VAD_funasr_20250809232456.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/vad/VAD_vadlib_20250805234211.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/vad/VAD_vadlib_20250809232455.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/vad/VAD_whisper_20250805234211.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.history/vad/VAD_whisper_20250809232456.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.specstory/.what-is-this.md +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.specstory/history/2025-08-05_17-06Z-/350/277/231/344/270/200/346/255/245/347/232/204/347/233/256/347/232/204/346/230/257/344/273/200/344/271/210.md" +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.specstory/history/2025-08-22_02-10Z-/345/256/214/345/226/204/345/207/275/346/225/260/347/232/204/345/212/237/350/203/275/345/222/214/345/217/230/351/207/217/345/220/215/345/273/272/350/256/256.md" +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.specstory/history/2025-08-26_11-54Z-oserror-missing-shared-object-file.md +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.specstory/history/2025-08-27_08-07Z-/345/256/214/345/226/204/346/265/213/350/257/225/346/226/207/346/241/243/347/232/204/350/256/250/350/256/272.md" +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.specstory/history/2025-08-27_08-29Z-delete-python-file-command.md +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/.specstory/history/2025-08-27_09-05Z-/345/234/250jupyter/344/270/255/346/222/255/346/224/276/351/237/263/351/242/221/347/232/204/344/273/243/347/240/201/344/277/256/346/224/271.md" +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/Docs/audio_aug_test/test_snr.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/Docs/audio_aug_test/test_volume.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/QA/html2markdown.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/audio_aug/TFDrop.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/audio_aug/TFMask.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/data_analyze/README.md +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/filter/README.md +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/filter/auto_eq/README.md +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/filter/auto_eq/freq_eq.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/filter/auto_eq/ga_eq_advanced.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/filter/auto_eq/ga_eq_basic.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/filter/biquad.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/filter/core.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/metrics/lpc_lsp.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/metrics/time.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/tests/test_preprocess.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/tests/test_vad.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/utils/lazy_module.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/utils/message.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/vad/README.md +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/vad/VAD_Energy.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/vad/VAD_Silero.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/vad/VAD_WebRTC.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/vad/VAD_funasr.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/vad/VAD_statistics.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/vad/VAD_vadlib.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/vad/VAD_whisper.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib/vad/utils.py +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib.egg-info/dependency_links.txt +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib.egg-info/requires.txt +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/neverlib.egg-info/top_level.txt +0 -0
- {neverlib-0.2.6 → neverlib-0.2.8}/setup.cfg +0 -0
neverlib-0.2.8/CLAUDE.md
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# 包含基础项目文件
|
|
2
|
+
include LICENSE
|
|
3
|
+
include README.md
|
|
4
|
+
include pyproject.toml
|
|
5
|
+
include CLAUDE.md
|
|
6
|
+
include setup.py
|
|
7
|
+
include requirements.txt
|
|
8
|
+
|
|
9
|
+
# 包含 neverlib 包中的所有 Python 文件
|
|
10
|
+
recursive-include neverlib *.py
|
|
11
|
+
|
|
12
|
+
# 包含文档和说明文件
|
|
13
|
+
recursive-include neverlib *.txt
|
|
14
|
+
recursive-include neverlib *.md
|
|
15
|
+
recursive-include neverlib *.json
|
|
16
|
+
recursive-include neverlib *.yaml
|
|
17
|
+
recursive-include neverlib *.yml
|
|
18
|
+
recursive-include neverlib/Docs *.ipynb
|
|
19
|
+
|
|
20
|
+
# 包含测试文件
|
|
21
|
+
recursive-include neverlib/tests *.py
|
|
22
|
+
recursive-include neverlib/tests *.txt
|
|
23
|
+
recursive-include neverlib/tests *.md
|
|
24
|
+
|
|
25
|
+
# 包含音频数据文件
|
|
26
|
+
recursive-include neverlib/data *.wav
|
|
27
|
+
recursive-include neverlib/audio_aug/data *
|
|
28
|
+
recursive-include neverlib/filter/data *
|
|
29
|
+
|
|
30
|
+
# 包含文档和示例目录
|
|
31
|
+
recursive-include neverlib/Docs *
|
|
32
|
+
recursive-include neverlib/QA *
|
|
33
|
+
|
|
34
|
+
# 包含DNSMOS和pDNSMOS模型文件
|
|
35
|
+
recursive-include neverlib/metrics/DNSMOS *.onnx
|
|
36
|
+
recursive-include neverlib/metrics/pDNSMOS *.onnx
|
|
37
|
+
|
|
38
|
+
# 包含PESQ C实现文件
|
|
39
|
+
recursive-include neverlib/metrics/pesq_c *.c
|
|
40
|
+
recursive-include neverlib/metrics/pesq_c *.h
|
|
41
|
+
recursive-include neverlib/metrics/pesq_c PESQ
|
|
42
|
+
|
|
43
|
+
# 包含VAD相关图像文件
|
|
44
|
+
recursive-include neverlib/vad *.png
|
|
45
|
+
|
|
46
|
+
# 排除不需要的文件
|
|
47
|
+
global-exclude *.py[cod] __pycache__/ *.so *.dylib .DS_Store
|
|
48
|
+
global-exclude .env .venv env/ venv/
|
|
49
|
+
global-exclude *.log .coverage .pytest_cache/ build/ dist/
|
|
50
|
+
global-exclude .idea/ .vscode/ *.swp *.swo
|
|
@@ -0,0 +1,416 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cells": [
|
|
3
|
+
{
|
|
4
|
+
"cell_type": "code",
|
|
5
|
+
"execution_count": null,
|
|
6
|
+
"id": "f27585eb",
|
|
7
|
+
"metadata": {},
|
|
8
|
+
"outputs": [
|
|
9
|
+
{
|
|
10
|
+
"ename": "ImportError",
|
|
11
|
+
"evalue": "cannot import name 'volume_aug_linmax' from 'audio_aug' (unknown location)",
|
|
12
|
+
"output_type": "error",
|
|
13
|
+
"traceback": [
|
|
14
|
+
"\u001b[31m---------------------------------------------------------------------------\u001b[39m",
|
|
15
|
+
"\u001b[31mImportError\u001b[39m Traceback (most recent call last)",
|
|
16
|
+
"\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[14]\u001b[39m\u001b[32m, line 5\u001b[39m\n\u001b[32m 2\u001b[39m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01msys\u001b[39;00m\n\u001b[32m 3\u001b[39m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mos\u001b[39;00m\n\u001b[32m----> \u001b[39m\u001b[32m5\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01maudio_aug\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m volume_aug_linmax, volume_aug_dbrms, volume_aug_lufs, measure_loudness\n\u001b[32m 6\u001b[39m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01msoundfile\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01msf\u001b[39;00m\n\u001b[32m 7\u001b[39m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mnumpy\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mnp\u001b[39;00m\n",
|
|
17
|
+
"\u001b[31mImportError\u001b[39m: cannot import name 'volume_aug_linmax' from 'audio_aug' (unknown location)"
|
|
18
|
+
]
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"ename": "",
|
|
22
|
+
"evalue": "",
|
|
23
|
+
"output_type": "error",
|
|
24
|
+
"traceback": [
|
|
25
|
+
"\u001b[1;31mThe Kernel crashed while executing code in the current cell or a previous cell. \n",
|
|
26
|
+
"\u001b[1;31mPlease review the code in the cell(s) to identify a possible cause of the failure. \n",
|
|
27
|
+
"\u001b[1;31mClick <a href='https://aka.ms/vscodeJupyterKernelCrash'>here</a> for more info. \n",
|
|
28
|
+
"\u001b[1;31mView Jupyter <a href='command:jupyter.viewOutput'>log</a> for further details."
|
|
29
|
+
]
|
|
30
|
+
}
|
|
31
|
+
],
|
|
32
|
+
"source": [
|
|
33
|
+
"# 确保使用本地版本而非安装版本\n",
|
|
34
|
+
"import sys\n",
|
|
35
|
+
"import os\n",
|
|
36
|
+
"\n",
|
|
37
|
+
"from audio_aug import volume_aug_linmax, volume_aug_dbrms, volume_aug_lufs, measure_loudness\n",
|
|
38
|
+
"import soundfile as sf\n",
|
|
39
|
+
"import numpy as np\n",
|
|
40
|
+
"import matplotlib.pyplot as plt\n",
|
|
41
|
+
"\n",
|
|
42
|
+
"# 导入可视化工具\n",
|
|
43
|
+
"from neverlib.data_analyze.visualization import AudioVisualizer\n",
|
|
44
|
+
"\n",
|
|
45
|
+
"wav_path = \"/data03/never/Dataset/kws_data/Command_Word/group_a_class/zh/pos_example/上一首/037/soft_normal_male_25_151_vadstart5920_vadend33600_snr14.2.wav\"\n",
|
|
46
|
+
"wav, sr = sf.read(wav_path, always_2d=True, dtype=\"float32\")\n",
|
|
47
|
+
"wav = wav[:, 1]\n",
|
|
48
|
+
"\n",
|
|
49
|
+
"# 创建可视化工具\n",
|
|
50
|
+
"visualizer = AudioVisualizer(sr=sr)\n",
|
|
51
|
+
"\n",
|
|
52
|
+
"# 测量原始音频的响度信息\n",
|
|
53
|
+
"original_loudness = measure_loudness(wav, sr)\n",
|
|
54
|
+
"print(\"原始音频响度信息:\")\n",
|
|
55
|
+
"print(f\"峰值: {original_loudness['peak_dbfs']:.2f} dBFS\")\n",
|
|
56
|
+
"print(f\"RMS: {original_loudness['rms_dbfs']:.2f} dBFS\")\n",
|
|
57
|
+
"print(f\"LUFS: {original_loudness['lufs']:.2f} LUFS\")\n",
|
|
58
|
+
"print(f\"峰均比: {original_loudness['crest_factor_db']:.2f} dB\")"
|
|
59
|
+
]
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"cell_type": "markdown",
|
|
63
|
+
"id": "f86b2ba1",
|
|
64
|
+
"metadata": {},
|
|
65
|
+
"source": [
|
|
66
|
+
"## linear 音量增强"
|
|
67
|
+
]
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"cell_type": "code",
|
|
71
|
+
"execution_count": null,
|
|
72
|
+
"id": "4585297c",
|
|
73
|
+
"metadata": {},
|
|
74
|
+
"outputs": [],
|
|
75
|
+
"source": [
|
|
76
|
+
"wav_linear = volume_aug_linmax(wav, 0.5)\n",
|
|
77
|
+
"\n",
|
|
78
|
+
"# 测量处理后的响度\n",
|
|
79
|
+
"linear_loudness = measure_loudness(wav_linear, sr)\n",
|
|
80
|
+
"\n",
|
|
81
|
+
"# 绘制时域和频域图\n",
|
|
82
|
+
"plt.figure(figsize=(16, 8))\n",
|
|
83
|
+
"\n",
|
|
84
|
+
"# 波形图\n",
|
|
85
|
+
"plt.subplot(2, 1, 1)\n",
|
|
86
|
+
"visualizer.plot_waveform(wav, \"原始波形\", ax=plt.gca())\n",
|
|
87
|
+
"plt.subplot(2, 1, 2)\n",
|
|
88
|
+
"visualizer.plot_waveform(wav_linear, f\"Linear增强波形 (目标幅度: 0.5)\", ax=plt.gca())\n",
|
|
89
|
+
"plt.tight_layout()\n",
|
|
90
|
+
"plt.show()\n",
|
|
91
|
+
"\n",
|
|
92
|
+
"# 频谱图\n",
|
|
93
|
+
"plt.figure(figsize=(16, 8))\n",
|
|
94
|
+
"plt.subplot(2, 1, 1)\n",
|
|
95
|
+
"visualizer.plot_spectrogram(wav, \"原始频谱图\", ax=plt.gca())\n",
|
|
96
|
+
"plt.subplot(2, 1, 2)\n",
|
|
97
|
+
"visualizer.plot_spectrogram(wav_linear, f\"Linear增强频谱图 (目标幅度: 0.5)\", ax=plt.gca())\n",
|
|
98
|
+
"plt.tight_layout()\n",
|
|
99
|
+
"plt.show()\n",
|
|
100
|
+
"\n",
|
|
101
|
+
"# 响度对比\n",
|
|
102
|
+
"plt.figure(figsize=(10, 6))\n",
|
|
103
|
+
"labels = ['原始音频', 'Linear增强']\n",
|
|
104
|
+
"peak_values = [original_loudness['peak_dbfs'], linear_loudness['peak_dbfs']]\n",
|
|
105
|
+
"rms_values = [original_loudness['rms_dbfs'], linear_loudness['rms_dbfs']]\n",
|
|
106
|
+
"lufs_values = [original_loudness['lufs'], linear_loudness['lufs']]\n",
|
|
107
|
+
"\n",
|
|
108
|
+
"x = np.arange(len(labels))\n",
|
|
109
|
+
"width = 0.25\n",
|
|
110
|
+
"\n",
|
|
111
|
+
"plt.bar(x - width, peak_values, width, label='峰值 (dBFS)')\n",
|
|
112
|
+
"plt.bar(x, rms_values, width, label='RMS (dBFS)')\n",
|
|
113
|
+
"plt.bar(x + width, lufs_values, width, label='LUFS')\n",
|
|
114
|
+
"\n",
|
|
115
|
+
"plt.ylabel('分贝')\n",
|
|
116
|
+
"plt.title('Linear音量增强前后响度对比')\n",
|
|
117
|
+
"plt.xticks(x, labels)\n",
|
|
118
|
+
"plt.legend()\n",
|
|
119
|
+
"plt.grid(True, alpha=0.3)\n",
|
|
120
|
+
"plt.tight_layout()\n",
|
|
121
|
+
"plt.show()\n",
|
|
122
|
+
"\n",
|
|
123
|
+
"print(f\"Linear增强后响度信息:\")\n",
|
|
124
|
+
"print(f\"峰值: {linear_loudness['peak_dbfs']:.2f} dBFS (变化: {linear_loudness['peak_dbfs'] - original_loudness['peak_dbfs']:.2f} dB)\")\n",
|
|
125
|
+
"print(f\"RMS: {linear_loudness['rms_dbfs']:.2f} dBFS (变化: {linear_loudness['rms_dbfs'] - original_loudness['rms_dbfs']:.2f} dB)\")\n",
|
|
126
|
+
"print(f\"LUFS: {linear_loudness['lufs']:.2f} LUFS (变化: {linear_loudness['lufs'] - original_loudness['lufs']:.2f} dB)\")\n",
|
|
127
|
+
"print(f\"峰均比: {linear_loudness['crest_factor_db']:.2f} dB\")"
|
|
128
|
+
]
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
"cell_type": "markdown",
|
|
132
|
+
"id": "56fb9004",
|
|
133
|
+
"metadata": {},
|
|
134
|
+
"source": [
|
|
135
|
+
"## dBrms 音量增强"
|
|
136
|
+
]
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
"cell_type": "code",
|
|
140
|
+
"execution_count": null,
|
|
141
|
+
"id": "7e88967d",
|
|
142
|
+
"metadata": {},
|
|
143
|
+
"outputs": [],
|
|
144
|
+
"source": [
|
|
145
|
+
"wav_dbrms = volume_aug_dbrms(wav, -6)\n",
|
|
146
|
+
"\n",
|
|
147
|
+
"# 测量处理后的响度\n",
|
|
148
|
+
"dbrms_loudness = measure_loudness(wav_dbrms, sr)\n",
|
|
149
|
+
"\n",
|
|
150
|
+
"# 绘制时域和频域图\n",
|
|
151
|
+
"plt.figure(figsize=(16, 8))\n",
|
|
152
|
+
"\n",
|
|
153
|
+
"# 波形图\n",
|
|
154
|
+
"plt.subplot(2, 1, 1)\n",
|
|
155
|
+
"visualizer.plot_waveform(wav, \"原始波形\", ax=plt.gca())\n",
|
|
156
|
+
"plt.subplot(2, 1, 2)\n",
|
|
157
|
+
"visualizer.plot_waveform(wav_dbrms, f\"dBrms增强波形 (目标电平: -6 dB)\", ax=plt.gca())\n",
|
|
158
|
+
"plt.tight_layout()\n",
|
|
159
|
+
"plt.show()\n",
|
|
160
|
+
"\n",
|
|
161
|
+
"# 频谱图\n",
|
|
162
|
+
"plt.figure(figsize=(16, 8))\n",
|
|
163
|
+
"plt.subplot(2, 1, 1)\n",
|
|
164
|
+
"visualizer.plot_spectrogram(wav, \"原始频谱图\", ax=plt.gca())\n",
|
|
165
|
+
"plt.subplot(2, 1, 2)\n",
|
|
166
|
+
"visualizer.plot_spectrogram(wav_dbrms, f\"dBrms增强频谱图 (目标电平: -6 dB)\", ax=plt.gca())\n",
|
|
167
|
+
"plt.tight_layout()\n",
|
|
168
|
+
"plt.show()\n",
|
|
169
|
+
"\n",
|
|
170
|
+
"# 响度对比\n",
|
|
171
|
+
"plt.figure(figsize=(10, 6))\n",
|
|
172
|
+
"labels = ['原始音频', 'dBrms增强']\n",
|
|
173
|
+
"peak_values = [original_loudness['peak_dbfs'], dbrms_loudness['peak_dbfs']]\n",
|
|
174
|
+
"rms_values = [original_loudness['rms_dbfs'], dbrms_loudness['rms_dbfs']]\n",
|
|
175
|
+
"lufs_values = [original_loudness['lufs'], dbrms_loudness['lufs']]\n",
|
|
176
|
+
"\n",
|
|
177
|
+
"x = np.arange(len(labels))\n",
|
|
178
|
+
"width = 0.25\n",
|
|
179
|
+
"\n",
|
|
180
|
+
"plt.bar(x - width, peak_values, width, label='峰值 (dBFS)')\n",
|
|
181
|
+
"plt.bar(x, rms_values, width, label='RMS (dBFS)')\n",
|
|
182
|
+
"plt.bar(x + width, lufs_values, width, label='LUFS')\n",
|
|
183
|
+
"\n",
|
|
184
|
+
"plt.ylabel('分贝')\n",
|
|
185
|
+
"plt.title('dBrms音量增强前后响度对比')\n",
|
|
186
|
+
"plt.xticks(x, labels)\n",
|
|
187
|
+
"plt.legend()\n",
|
|
188
|
+
"plt.grid(True, alpha=0.3)\n",
|
|
189
|
+
"plt.tight_layout()\n",
|
|
190
|
+
"plt.show()\n",
|
|
191
|
+
"\n",
|
|
192
|
+
"print(f\"dBrms增强后响度信息:\")\n",
|
|
193
|
+
"print(f\"峰值: {dbrms_loudness['peak_dbfs']:.2f} dBFS (变化: {dbrms_loudness['peak_dbfs'] - original_loudness['peak_dbfs']:.2f} dB)\")\n",
|
|
194
|
+
"print(f\"RMS: {dbrms_loudness['rms_dbfs']:.2f} dBFS (变化: {dbrms_loudness['rms_dbfs'] - original_loudness['rms_dbfs']:.2f} dB)\")\n",
|
|
195
|
+
"print(f\"LUFS: {dbrms_loudness['lufs']:.2f} LUFS (变化: {dbrms_loudness['lufs'] - original_loudness['lufs']:.2f} dB)\")\n",
|
|
196
|
+
"print(f\"峰均比: {dbrms_loudness['crest_factor_db']:.2f} dB\")"
|
|
197
|
+
]
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
"cell_type": "markdown",
|
|
201
|
+
"id": "e6a9695f",
|
|
202
|
+
"metadata": {},
|
|
203
|
+
"source": [
|
|
204
|
+
"# lufs音量增强"
|
|
205
|
+
]
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
"cell_type": "code",
|
|
209
|
+
"execution_count": null,
|
|
210
|
+
"id": "30b21884",
|
|
211
|
+
"metadata": {},
|
|
212
|
+
"outputs": [],
|
|
213
|
+
"source": [
|
|
214
|
+
"wav_lufs = volume_aug_lufs(wav, -16)\n",
|
|
215
|
+
"\n",
|
|
216
|
+
"# 测量处理后的响度\n",
|
|
217
|
+
"lufs_loudness = measure_loudness(wav_lufs, sr)\n",
|
|
218
|
+
"\n",
|
|
219
|
+
"# 绘制时域和频域图\n",
|
|
220
|
+
"plt.figure(figsize=(16, 8))\n",
|
|
221
|
+
"\n",
|
|
222
|
+
"# 波形图\n",
|
|
223
|
+
"plt.subplot(2, 1, 1)\n",
|
|
224
|
+
"visualizer.plot_waveform(wav, \"原始波形\", ax=plt.gca())\n",
|
|
225
|
+
"plt.subplot(2, 1, 2)\n",
|
|
226
|
+
"visualizer.plot_waveform(wav_lufs, f\"LUFS增强波形 (目标响度: -16 LUFS)\", ax=plt.gca())\n",
|
|
227
|
+
"plt.tight_layout()\n",
|
|
228
|
+
"plt.show()\n",
|
|
229
|
+
"\n",
|
|
230
|
+
"# 频谱图\n",
|
|
231
|
+
"plt.figure(figsize=(16, 8))\n",
|
|
232
|
+
"plt.subplot(2, 1, 1)\n",
|
|
233
|
+
"visualizer.plot_spectrogram(wav, \"原始频谱图\", ax=plt.gca())\n",
|
|
234
|
+
"plt.subplot(2, 1, 2)\n",
|
|
235
|
+
"visualizer.plot_spectrogram(wav_lufs, f\"LUFS增强频谱图 (目标响度: -16 LUFS)\", ax=plt.gca())\n",
|
|
236
|
+
"plt.tight_layout()\n",
|
|
237
|
+
"plt.show()\n",
|
|
238
|
+
"\n",
|
|
239
|
+
"# 响度对比\n",
|
|
240
|
+
"plt.figure(figsize=(10, 6))\n",
|
|
241
|
+
"labels = ['原始音频', 'LUFS增强']\n",
|
|
242
|
+
"peak_values = [original_loudness['peak_dbfs'], lufs_loudness['peak_dbfs']]\n",
|
|
243
|
+
"rms_values = [original_loudness['rms_dbfs'], lufs_loudness['rms_dbfs']]\n",
|
|
244
|
+
"lufs_values = [original_loudness['lufs'], lufs_loudness['lufs']]\n",
|
|
245
|
+
"\n",
|
|
246
|
+
"x = np.arange(len(labels))\n",
|
|
247
|
+
"width = 0.25\n",
|
|
248
|
+
"\n",
|
|
249
|
+
"plt.bar(x - width, peak_values, width, label='峰值 (dBFS)')\n",
|
|
250
|
+
"plt.bar(x, rms_values, width, label='RMS (dBFS)')\n",
|
|
251
|
+
"plt.bar(x + width, lufs_values, width, label='LUFS')\n",
|
|
252
|
+
"\n",
|
|
253
|
+
"plt.ylabel('分贝')\n",
|
|
254
|
+
"plt.title('LUFS音量增强前后响度对比')\n",
|
|
255
|
+
"plt.xticks(x, labels)\n",
|
|
256
|
+
"plt.legend()\n",
|
|
257
|
+
"plt.grid(True, alpha=0.3)\n",
|
|
258
|
+
"plt.tight_layout()\n",
|
|
259
|
+
"plt.show()\n",
|
|
260
|
+
"\n",
|
|
261
|
+
"print(f\"LUFS增强后响度信息:\")\n",
|
|
262
|
+
"print(f\"峰值: {lufs_loudness['peak_dbfs']:.2f} dBFS (变化: {lufs_loudness['peak_dbfs'] - original_loudness['peak_dbfs']:.2f} dB)\")\n",
|
|
263
|
+
"print(f\"RMS: {lufs_loudness['rms_dbfs']:.2f} dBFS (变化: {lufs_loudness['rms_dbfs'] - original_loudness['rms_dbfs']:.2f} dB)\")\n",
|
|
264
|
+
"print(f\"LUFS: {lufs_loudness['lufs']:.2f} LUFS (变化: {lufs_loudness['lufs'] - original_loudness['lufs']:.2f} dB)\")\n",
|
|
265
|
+
"print(f\"峰均比: {lufs_loudness['crest_factor_db']:.2f} dB\")"
|
|
266
|
+
]
|
|
267
|
+
},
|
|
268
|
+
{
|
|
269
|
+
"cell_type": "code",
|
|
270
|
+
"execution_count": null,
|
|
271
|
+
"id": "k6vath03xyg",
|
|
272
|
+
"metadata": {},
|
|
273
|
+
"outputs": [],
|
|
274
|
+
"source": [
|
|
275
|
+
"# 创建三种增强方法的综合对比图\n",
|
|
276
|
+
"plt.figure(figsize=(16, 12))\n",
|
|
277
|
+
"\n",
|
|
278
|
+
"# 波形对比\n",
|
|
279
|
+
"plt.subplot(3, 1, 1)\n",
|
|
280
|
+
"time = np.linspace(0, len(wav) / sr, len(wav))\n",
|
|
281
|
+
"plt.plot(time, wav, label='原始波形', alpha=0.7)\n",
|
|
282
|
+
"plt.plot(time, wav_linear, label='Linear增强', alpha=0.7)\n",
|
|
283
|
+
"plt.plot(time, wav_dbrms, label='dBrms增强', alpha=0.7)\n",
|
|
284
|
+
"plt.plot(time, wav_lufs, label='LUFS增强', alpha=0.7)\n",
|
|
285
|
+
"plt.title('三种音量增强方法波形对比')\n",
|
|
286
|
+
"plt.xlabel('时间 (s)')\n",
|
|
287
|
+
"plt.ylabel('幅度')\n",
|
|
288
|
+
"plt.grid(True, alpha=0.3)\n",
|
|
289
|
+
"plt.legend()\n",
|
|
290
|
+
"\n",
|
|
291
|
+
"# 响度对比 - 条形图\n",
|
|
292
|
+
"plt.subplot(3, 1, 2)\n",
|
|
293
|
+
"labels = ['原始音频', 'Linear增强', 'dBrms增强', 'LUFS增强']\n",
|
|
294
|
+
"peak_values = [original_loudness['peak_dbfs'], linear_loudness['peak_dbfs'], \n",
|
|
295
|
+
" dbrms_loudness['peak_dbfs'], lufs_loudness['peak_dbfs']]\n",
|
|
296
|
+
"rms_values = [original_loudness['rms_dbfs'], linear_loudness['rms_dbfs'], \n",
|
|
297
|
+
" dbrms_loudness['rms_dbfs'], lufs_loudness['rms_dbfs']]\n",
|
|
298
|
+
"lufs_values = [original_loudness['lufs'], linear_loudness['lufs'], \n",
|
|
299
|
+
" dbrms_loudness['lufs'], lufs_loudness['lufs']]\n",
|
|
300
|
+
"\n",
|
|
301
|
+
"x = np.arange(len(labels))\n",
|
|
302
|
+
"width = 0.25\n",
|
|
303
|
+
"\n",
|
|
304
|
+
"plt.bar(x - width, peak_values, width, label='峰值 (dBFS)')\n",
|
|
305
|
+
"plt.bar(x, rms_values, width, label='RMS (dBFS)')\n",
|
|
306
|
+
"plt.bar(x + width, lufs_values, width, label='LUFS')\n",
|
|
307
|
+
"\n",
|
|
308
|
+
"plt.ylabel('分贝')\n",
|
|
309
|
+
"plt.title('三种音量增强方法响度对比')\n",
|
|
310
|
+
"plt.xticks(x, labels)\n",
|
|
311
|
+
"plt.legend()\n",
|
|
312
|
+
"plt.grid(True, alpha=0.3)\n",
|
|
313
|
+
"\n",
|
|
314
|
+
"# 峰均比对比\n",
|
|
315
|
+
"plt.subplot(3, 1, 3)\n",
|
|
316
|
+
"crest_values = [original_loudness['crest_factor_db'], linear_loudness['crest_factor_db'],\n",
|
|
317
|
+
" dbrms_loudness['crest_factor_db'], lufs_loudness['crest_factor_db']]\n",
|
|
318
|
+
"\n",
|
|
319
|
+
"plt.bar(x, crest_values, width=0.5, color='purple', alpha=0.7)\n",
|
|
320
|
+
"plt.ylabel('分贝')\n",
|
|
321
|
+
"plt.title('三种音量增强方法峰均比对比')\n",
|
|
322
|
+
"plt.xticks(x, labels)\n",
|
|
323
|
+
"plt.grid(True, alpha=0.3)\n",
|
|
324
|
+
"\n",
|
|
325
|
+
"plt.tight_layout()\n",
|
|
326
|
+
"plt.show()\n",
|
|
327
|
+
"\n",
|
|
328
|
+
"# 创建综合对比表格\n",
|
|
329
|
+
"print(\"\\n三种音量增强方法综合对比:\")\n",
|
|
330
|
+
"print(\"=\" * 80)\n",
|
|
331
|
+
"print(f\"{'方法':<12}{'峰值 (dBFS)':<20}{'RMS (dBFS)':<20}{'LUFS':<20}{'峰均比 (dB)':<15}\")\n",
|
|
332
|
+
"print(\"-\" * 80)\n",
|
|
333
|
+
"print(f\"{'原始音频':<12}{original_loudness['peak_dbfs']:<20.2f}{original_loudness['rms_dbfs']:<20.2f}{original_loudness['lufs']:<20.2f}{original_loudness['crest_factor_db']:<15.2f}\")\n",
|
|
334
|
+
"print(f\"{'Linear增强':<12}{linear_loudness['peak_dbfs']:<20.2f}{linear_loudness['rms_dbfs']:<20.2f}{linear_loudness['lufs']:<20.2f}{linear_loudness['crest_factor_db']:<15.2f}\")\n",
|
|
335
|
+
"print(f\"{'dBrms增强':<12}{dbrms_loudness['peak_dbfs']:<20.2f}{dbrms_loudness['rms_dbfs']:<20.2f}{dbrms_loudness['lufs']:<20.2f}{dbrms_loudness['crest_factor_db']:<15.2f}\")\n",
|
|
336
|
+
"print(f\"{'LUFS增强':<12}{lufs_loudness['peak_dbfs']:<20.2f}{lufs_loudness['rms_dbfs']:<20.2f}{lufs_loudness['lufs']:<20.2f}{lufs_loudness['crest_factor_db']:<15.2f}\")\n",
|
|
337
|
+
"print(\"=\" * 80)\n",
|
|
338
|
+
"\n",
|
|
339
|
+
"# 各方法响度变化量\n",
|
|
340
|
+
"print(\"\\n响度变化量 (相对于原始音频):\")\n",
|
|
341
|
+
"print(\"=\" * 80)\n",
|
|
342
|
+
"print(f\"{'方法':<12}{'峰值变化 (dB)':<20}{'RMS变化 (dB)':<20}{'LUFS变化 (dB)':<20}\")\n",
|
|
343
|
+
"print(\"-\" * 80)\n",
|
|
344
|
+
"print(f\"{'Linear增强':<12}{linear_loudness['peak_dbfs'] - original_loudness['peak_dbfs']:<20.2f}{linear_loudness['rms_dbfs'] - original_loudness['rms_dbfs']:<20.2f}{linear_loudness['lufs'] - original_loudness['lufs']:<20.2f}\")\n",
|
|
345
|
+
"print(f\"{'dBrms增强':<12}{dbrms_loudness['peak_dbfs'] - original_loudness['peak_dbfs']:<20.2f}{dbrms_loudness['rms_dbfs'] - original_loudness['rms_dbfs']:<20.2f}{dbrms_loudness['lufs'] - original_loudness['lufs']:<20.2f}\")\n",
|
|
346
|
+
"print(f\"{'LUFS增强':<12}{lufs_loudness['peak_dbfs'] - original_loudness['peak_dbfs']:<20.2f}{lufs_loudness['rms_dbfs'] - original_loudness['rms_dbfs']:<20.2f}{lufs_loudness['lufs'] - original_loudness['lufs']:<20.2f}\")\n",
|
|
347
|
+
"print(\"=\" * 80)\n",
|
|
348
|
+
"\n",
|
|
349
|
+
"# 总结分析\n",
|
|
350
|
+
"print(\"\\n音量增强方法分析总结:\")\n",
|
|
351
|
+
"print(\"=\" * 80)\n",
|
|
352
|
+
"print(\"1. Linear增强 (volume_aug_linmax):\")\n",
|
|
353
|
+
"print(\" - 基于峰值的线性增益,目标为最大峰值为指定的线性值\")\n",
|
|
354
|
+
"print(\" - 特点:保持动态范围不变,整体增强或减弱\")\n",
|
|
355
|
+
"print(\" - 适用场景:需要精确控制峰值而不改变音频动态特性的场合\")\n",
|
|
356
|
+
"print(\"\\n2. dBrms增强 (volume_aug_dbrms):\")\n",
|
|
357
|
+
"print(\" - 基于RMS电平的增益,目标为指定的dB电平\")\n",
|
|
358
|
+
"print(\" - 特点:以能量均值为基准,更接近人耳感知\")\n",
|
|
359
|
+
"print(\" - 适用场景:需要统一音频能量电平的场合\")\n",
|
|
360
|
+
"print(\"\\n3. LUFS增强 (volume_aug_lufs):\")\n",
|
|
361
|
+
"print(\" - 基于国际响度标准的增益,符合广播标准\")\n",
|
|
362
|
+
"print(\" - 特点:考虑人耳频率加权,最接近人耳响度感知\")\n",
|
|
363
|
+
"print(\" - 适用场景:广播、流媒体、专业音频处理等需要符合响度标准的场合\")\n",
|
|
364
|
+
"print(\"=\" * 80)"
|
|
365
|
+
]
|
|
366
|
+
},
|
|
367
|
+
{
|
|
368
|
+
"cell_type": "markdown",
|
|
369
|
+
"id": "2fb931jxgtr",
|
|
370
|
+
"metadata": {},
|
|
371
|
+
"source": [
|
|
372
|
+
"# 音量增强方法综合分析\n",
|
|
373
|
+
"\n",
|
|
374
|
+
"本笔记本演示并分析了neverlib库中三种音量增强方法的特性和效果:\n",
|
|
375
|
+
"\n",
|
|
376
|
+
"1. **Linear增强 (volume_aug_linmax)**\n",
|
|
377
|
+
" - 基于峰值的线性增益\n",
|
|
378
|
+
" - 将音频最大峰值调整为目标线性值(0-1范围)\n",
|
|
379
|
+
" - 保持动态范围不变\n",
|
|
380
|
+
"\n",
|
|
381
|
+
"2. **dBrms增强 (volume_aug_dbrms)**\n",
|
|
382
|
+
" - 基于均方根(RMS)功率的增益\n",
|
|
383
|
+
" - 将音频RMS电平调整为目标分贝值\n",
|
|
384
|
+
" - 更接近能量感知\n",
|
|
385
|
+
"\n",
|
|
386
|
+
"3. **LUFS增强 (volume_aug_lufs)**\n",
|
|
387
|
+
" - 基于感知响度单位(LUFS)的增益\n",
|
|
388
|
+
" - 符合广播标准的响度归一化\n",
|
|
389
|
+
" - 考虑人耳感知加权,最接近人耳响度感知\n",
|
|
390
|
+
"\n",
|
|
391
|
+
"各方法适用于不同场景,可根据需求选择合适的音量增强方式。"
|
|
392
|
+
]
|
|
393
|
+
}
|
|
394
|
+
],
|
|
395
|
+
"metadata": {
|
|
396
|
+
"kernelspec": {
|
|
397
|
+
"display_name": "py311torch211",
|
|
398
|
+
"language": "python",
|
|
399
|
+
"name": "python3"
|
|
400
|
+
},
|
|
401
|
+
"language_info": {
|
|
402
|
+
"codemirror_mode": {
|
|
403
|
+
"name": "ipython",
|
|
404
|
+
"version": 3
|
|
405
|
+
},
|
|
406
|
+
"file_extension": ".py",
|
|
407
|
+
"mimetype": "text/x-python",
|
|
408
|
+
"name": "python",
|
|
409
|
+
"nbconvert_exporter": "python",
|
|
410
|
+
"pygments_lexer": "ipython3",
|
|
411
|
+
"version": "3.11.9"
|
|
412
|
+
}
|
|
413
|
+
},
|
|
414
|
+
"nbformat": 4,
|
|
415
|
+
"nbformat_minor": 5
|
|
416
|
+
}
|