neverlib 0.2.4__py3-none-any.whl → 0.2.6__py3-none-any.whl

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.
Files changed (260) hide show
  1. neverlib/.history/Docs/audio_aug/del_20250827162530.py +0 -0
  2. neverlib/.history/Docs/audio_aug/del_20250827162540.py +2 -0
  3. neverlib/.history/Docs/audio_aug/del_20250827162541.py +7 -0
  4. neverlib/.history/Docs/audio_aug/del_20250827162606.py +7 -0
  5. neverlib/.history/Docs/audio_aug/del_20250827162637.py +8 -0
  6. neverlib/.history/Docs/audio_aug/del_20250827162645.py +8 -0
  7. neverlib/.history/Docs/audio_aug/del_20250827162723.py +9 -0
  8. neverlib/.history/Docs/audio_aug/del_20250827162739.py +9 -0
  9. neverlib/.history/Docs/audio_aug/test_snr_20250827161751.py +55 -0
  10. neverlib/.history/Docs/audio_aug/test_snr_20250827161754.py +55 -0
  11. neverlib/.history/Docs/audio_aug/test_snr_20250827161833.py +54 -0
  12. neverlib/.history/Docs/audio_aug/test_snr_20250827162017.py +56 -0
  13. neverlib/.history/Docs/audio_aug/test_snr_20250827162021.py +57 -0
  14. neverlib/.history/Docs/audio_aug/test_snr_20250827162028.py +57 -0
  15. neverlib/.history/Docs/audio_aug_test/del_20250827162738.py +9 -0
  16. neverlib/.history/Docs/audio_aug_test/del_20250827162819.py +9 -0
  17. neverlib/.history/Docs/audio_aug_test/del_20250827162830.py +9 -0
  18. neverlib/.history/Docs/audio_aug_test/del_20250827162846.py +9 -0
  19. neverlib/.history/Docs/audio_aug_test/del_20250827162851.py +9 -0
  20. neverlib/.history/Docs/audio_aug_test/del_20250827162903.py +10 -0
  21. neverlib/.history/Docs/audio_aug_test/del_20250827162921.py +10 -0
  22. neverlib/.history/Docs/audio_aug_test/del_20250827162926.py +10 -0
  23. neverlib/.history/Docs/audio_aug_test/del_20250827163030.py +10 -0
  24. neverlib/.history/Docs/audio_aug_test/del_20250827163032.py +10 -0
  25. neverlib/.history/QA/html2markdown_20250822234112.md +0 -0
  26. neverlib/.history/QA/html2markdown_20250822234140.py +9 -0
  27. neverlib/.history/QA/html2markdown_20250822234141.md +9 -0
  28. neverlib/.history/QA/html2markdown_20250822234159.py +12 -0
  29. neverlib/.history/QA/html2markdown_20250822234200.py +17 -0
  30. neverlib/.history/QA/html2markdown_20250822234236.py +17 -0
  31. neverlib/.history/QA/html2markdown_20250822234340.py +14 -0
  32. neverlib/.history/QA/html2markdown_20250822234522.py +18 -0
  33. neverlib/.history/QA/html2markdown_20250822234601.py +20 -0
  34. neverlib/.history/QA/html2markdown_20250822234615.py +22 -0
  35. neverlib/.history/QA/html2markdown_20250822234715.py +28 -0
  36. neverlib/.history/QA/html2markdown_20250822234720.py +27 -0
  37. neverlib/.history/QA/html2markdown_20250822234903.py +27 -0
  38. neverlib/.history/__init___20250805234212.py +41 -0
  39. neverlib/.history/__init___20250904102635.py +39 -0
  40. neverlib/.history/__init___20250904102836.py +34 -0
  41. neverlib/.history/__init___20250904102838.py +39 -0
  42. neverlib/.history/__init___20250904102851.py +33 -0
  43. neverlib/.history/audio_aug/audio_aug_20250826155913.py +158 -0
  44. neverlib/.history/audio_aug/audio_aug_20250826164159.py +159 -0
  45. neverlib/.history/audio_aug/audio_aug_20250826164217.py +160 -0
  46. neverlib/.history/audio_aug/audio_aug_20250826164408.py +161 -0
  47. neverlib/.history/audio_aug/audio_aug_20250826164423.py +161 -0
  48. neverlib/.history/audio_aug/audio_aug_20250826164529.py +161 -0
  49. neverlib/.history/audio_aug/audio_aug_20250826164824.py +161 -0
  50. neverlib/.history/audio_aug/audio_aug_20250826164932.py +162 -0
  51. neverlib/.history/audio_aug/audio_aug_20250826164947.py +162 -0
  52. neverlib/.history/audio_aug/audio_aug_20250826165403.py +162 -0
  53. neverlib/.history/audio_aug/audio_aug_20250826165421.py +162 -0
  54. neverlib/.history/audio_aug/audio_aug_20250826165509.py +163 -0
  55. neverlib/.history/audio_aug/audio_aug_20250826165702.py +163 -0
  56. neverlib/.history/audio_aug/audio_aug_20250826165732.py +165 -0
  57. neverlib/.history/audio_aug/audio_aug_20250826170041.py +163 -0
  58. neverlib/.history/audio_aug/audio_aug_20250826170105.py +164 -0
  59. neverlib/.history/audio_aug/audio_aug_20250826170154.py +164 -0
  60. neverlib/.history/audio_aug/audio_aug_20250826170220.py +165 -0
  61. neverlib/.history/audio_aug/audio_aug_20250826170221.py +165 -0
  62. neverlib/.history/audio_aug/audio_aug_20250826170228.py +165 -0
  63. neverlib/.history/audio_aug/audio_aug_20250826170231.py +165 -0
  64. neverlib/.history/audio_aug/audio_aug_20250826212001.py +165 -0
  65. neverlib/.history/audio_aug/audio_aug_20250826220038.py +165 -0
  66. neverlib/.history/audio_aug/audio_aug_20250826220133.py +165 -0
  67. neverlib/.history/audio_aug/audio_aug_20250826220148.py +165 -0
  68. neverlib/.history/audio_aug/audio_aug_20250826220154.py +165 -0
  69. neverlib/.history/audio_aug/audio_aug_20250826220156.py +165 -0
  70. neverlib/.history/audio_aug/audio_aug_20250826220314.py +165 -0
  71. neverlib/.history/audio_aug/audio_aug_20250826220343.py +184 -0
  72. neverlib/.history/audio_aug/audio_aug_20250826220345.py +184 -0
  73. neverlib/.history/audio_aug/audio_aug_20250826220349.py +184 -0
  74. neverlib/.history/audio_aug/audio_aug_20250826220429.py +184 -0
  75. neverlib/.history/audio_aug/audio_aug_20250826220447.py +184 -0
  76. neverlib/.history/audio_aug/audio_aug_20250826220601.py +186 -0
  77. neverlib/.history/audio_aug/audio_aug_20250826220638.py +186 -0
  78. neverlib/.history/audio_aug/audio_aug_20250826220641.py +186 -0
  79. neverlib/.history/audio_aug/audio_aug_20250826220647.py +186 -0
  80. neverlib/.history/audio_aug/audio_aug_20250826220653.py +186 -0
  81. neverlib/.history/audio_aug/audio_aug_20250826220655.py +186 -0
  82. neverlib/.history/audio_aug/audio_aug_20250826220731.py +185 -0
  83. neverlib/.history/audio_aug/audio_aug_20250826220739.py +185 -0
  84. neverlib/.history/audio_aug/audio_aug_20250826220747.py +185 -0
  85. neverlib/.history/audio_aug/audio_aug_20250826220801.py +186 -0
  86. neverlib/.history/audio_aug/audio_aug_20250826220822.py +186 -0
  87. neverlib/.history/audio_aug/audio_aug_20250826220901.py +186 -0
  88. neverlib/.history/audio_aug/audio_aug_20250826221107.py +187 -0
  89. neverlib/.history/audio_aug/audio_aug_20250826221310.py +188 -0
  90. neverlib/.history/audio_aug/audio_aug_20250826221353.py +191 -0
  91. neverlib/.history/audio_aug/audio_aug_20250826221821.py +191 -0
  92. neverlib/.history/audio_aug/audio_aug_20250826221838.py +191 -0
  93. neverlib/.history/audio_aug/audio_aug_20250826221906.py +191 -0
  94. neverlib/.history/audio_aug/audio_aug_20250826221930.py +191 -0
  95. neverlib/.history/audio_aug/audio_aug_20250826221939.py +191 -0
  96. neverlib/.history/audio_aug/audio_aug_20250826221955.py +191 -0
  97. neverlib/.history/audio_aug/audio_aug_20250826222008.py +197 -0
  98. neverlib/.history/audio_aug/audio_aug_20250826222017.py +200 -0
  99. neverlib/.history/audio_aug/audio_aug_20250826222046.py +203 -0
  100. neverlib/.history/audio_aug/audio_aug_20250826222105.py +203 -0
  101. neverlib/.history/audio_aug/audio_aug_20250826222206.py +203 -0
  102. neverlib/.history/audio_aug/audio_aug_20250826222302.py +203 -0
  103. neverlib/.history/audio_aug/audio_aug_20250826222336.py +203 -0
  104. neverlib/.history/audio_aug/audio_aug_20250826222455.py +204 -0
  105. neverlib/.history/audio_aug/audio_aug_20250826222526.py +204 -0
  106. neverlib/.history/audio_aug/audio_aug_20250826222541.py +204 -0
  107. neverlib/.history/audio_aug/audio_aug_20250826222624.py +202 -0
  108. neverlib/.history/audio_aug/audio_aug_20250826222714.py +205 -0
  109. neverlib/.history/audio_aug/audio_aug_20250826222820.py +205 -0
  110. neverlib/.history/audio_aug/audio_aug_20250826222827.py +205 -0
  111. neverlib/.history/audio_aug/audio_aug_20250826222927.py +232 -0
  112. neverlib/.history/audio_aug/audio_aug_20250826223009.py +232 -0
  113. neverlib/.history/audio_aug/audio_aug_20250826223054.py +232 -0
  114. neverlib/.history/audio_aug/audio_aug_20250826223225.py +233 -0
  115. neverlib/.history/audio_aug/audio_aug_20250826223344.py +236 -0
  116. neverlib/.history/audio_aug/audio_aug_20250826223356.py +236 -0
  117. neverlib/.history/audio_aug/audio_aug_20250826223955.py +242 -0
  118. neverlib/.history/audio_aug/audio_aug_20250826224210.py +240 -0
  119. neverlib/.history/audio_aug/audio_aug_20250826224250.py +242 -0
  120. neverlib/.history/audio_aug/audio_aug_20250826224323.py +280 -0
  121. neverlib/.history/audio_aug/audio_aug_20250826224452.py +263 -0
  122. neverlib/.history/audio_aug/audio_aug_20250826224455.py +263 -0
  123. neverlib/.history/audio_aug/audio_aug_20250826224502.py +263 -0
  124. neverlib/.history/audio_aug/audio_aug_20250826224528.py +263 -0
  125. neverlib/.history/audio_aug/audio_aug_20250826224658.py +263 -0
  126. neverlib/.history/audio_aug/audio_aug_20250826224833.py +264 -0
  127. neverlib/.history/audio_aug/audio_aug_20250826225013.py +269 -0
  128. neverlib/.history/audio_aug/audio_aug_20250826225050.py +269 -0
  129. neverlib/.history/audio_aug/audio_aug_20250826225241.py +268 -0
  130. neverlib/.history/audio_aug/audio_aug_20250826225315.py +266 -0
  131. neverlib/.history/audio_aug/audio_aug_20250826225404.py +266 -0
  132. neverlib/.history/audio_aug/audio_aug_20250826225502.py +265 -0
  133. neverlib/.history/audio_aug/audio_aug_20250826225950.py +267 -0
  134. neverlib/.history/audio_aug/audio_aug_20250826225959.py +268 -0
  135. neverlib/.history/audio_aug/audio_aug_20250826230222.py +271 -0
  136. neverlib/.history/audio_aug/audio_aug_20250826230248.py +270 -0
  137. neverlib/.history/audio_aug/audio_aug_20250826230638.py +266 -0
  138. neverlib/.history/audio_aug/audio_aug_20250826230755.py +266 -0
  139. neverlib/.history/audio_aug/audio_aug_20250826230941.py +265 -0
  140. neverlib/.history/audio_aug/audio_aug_20250826231054.py +266 -0
  141. neverlib/.history/audio_aug/audio_aug_20250826231117.py +266 -0
  142. neverlib/.history/audio_aug/audio_aug_20250826231219.py +266 -0
  143. neverlib/.history/audio_aug/audio_aug_20250826232330.py +266 -0
  144. neverlib/.history/audio_aug/audio_aug_20250826232352.py +266 -0
  145. neverlib/.history/audio_aug/audio_aug_20250827152748.py +268 -0
  146. neverlib/.history/audio_aug/audio_aug_20250827152806.py +268 -0
  147. neverlib/.history/audio_aug/audio_aug_20250827152808.py +268 -0
  148. neverlib/.history/audio_aug/audio_aug_20250827152917.py +283 -0
  149. neverlib/.history/audio_aug/audio_aug_20250827152929.py +281 -0
  150. neverlib/.history/audio_aug/audio_aug_20250827153100.py +286 -0
  151. neverlib/.history/audio_aug/audio_aug_20250827153102.py +286 -0
  152. neverlib/.history/audio_aug/audio_aug_20250827153301.py +295 -0
  153. neverlib/.history/audio_aug/audio_aug_20250827153331.py +298 -0
  154. neverlib/.history/audio_aug/audio_aug_20250827153525.py +303 -0
  155. neverlib/.history/audio_aug/audio_aug_20250827153533.py +304 -0
  156. neverlib/.history/audio_aug/audio_aug_20250827153541.py +321 -0
  157. neverlib/.history/audio_aug/audio_aug_20250827153805.py +322 -0
  158. neverlib/.history/audio_aug/audio_aug_20250827153832.py +323 -0
  159. neverlib/.history/audio_aug/audio_aug_20250827153836.py +324 -0
  160. neverlib/.history/audio_aug/audio_aug_20250827153846.py +324 -0
  161. neverlib/.history/audio_aug/audio_aug_20250827153859.py +325 -0
  162. neverlib/.history/audio_aug/audio_aug_20250827154453.py +337 -0
  163. neverlib/.history/audio_aug/audio_aug_20250827154513.py +355 -0
  164. neverlib/.history/audio_aug/audio_aug_20250827154538.py +356 -0
  165. neverlib/.history/audio_aug/audio_aug_20250827154541.py +357 -0
  166. neverlib/.history/audio_aug/audio_aug_20250827154612.py +357 -0
  167. neverlib/.history/audio_aug/audio_aug_20250827154657.py +360 -0
  168. neverlib/.history/audio_aug/audio_aug_20250827154708.py +360 -0
  169. neverlib/.history/audio_aug/audio_aug_20250827154728.py +366 -0
  170. neverlib/.history/audio_aug/audio_aug_20250827154755.py +367 -0
  171. neverlib/.history/audio_aug/audio_aug_20250827154800.py +367 -0
  172. neverlib/.history/audio_aug/audio_aug_20250827154917.py +368 -0
  173. neverlib/.history/audio_aug/audio_aug_20250827154928.py +369 -0
  174. neverlib/.history/audio_aug/audio_aug_20250827154932.py +370 -0
  175. neverlib/.history/audio_aug/audio_aug_20250827154947.py +372 -0
  176. neverlib/.history/audio_aug/audio_aug_20250827155015.py +375 -0
  177. neverlib/.history/audio_aug/audio_aug_20250827155106.py +375 -0
  178. neverlib/.history/audio_aug/audio_aug_20250827155114.py +393 -0
  179. neverlib/.history/audio_aug/audio_aug_20250827155207.py +415 -0
  180. neverlib/.history/audio_aug/audio_aug_20250827155300.py +415 -0
  181. neverlib/.history/audio_aug/audio_aug_20250827155321.py +471 -0
  182. neverlib/.history/audio_aug/audio_aug_20250827164703.py +471 -0
  183. neverlib/.history/audio_aug/audio_aug_20250827164749.py +471 -0
  184. neverlib/.history/audio_aug/audio_aug_20250827165252.py +472 -0
  185. neverlib/.history/audio_aug/audio_aug_20250827165334.py +472 -0
  186. neverlib/.history/audio_aug/audio_aug_20250827165404.py +473 -0
  187. neverlib/.history/audio_aug/audio_aug_20250827165610.py +473 -0
  188. neverlib/.history/audio_aug/audio_aug_20250827165805.py +473 -0
  189. neverlib/.history/audio_aug/audio_aug_20250827170056.py +473 -0
  190. neverlib/.history/audio_aug/audio_aug_20250827170106.py +472 -0
  191. neverlib/.history/audio_aug/audio_aug_20250827170143.py +472 -0
  192. neverlib/.history/audio_aug/audio_aug_20250827170216.py +472 -0
  193. neverlib/.history/audio_aug/audio_aug_20250827170218.py +472 -0
  194. neverlib/.history/audio_aug/audio_aug_20250827170314.py +472 -0
  195. neverlib/.history/audio_aug/audio_aug_20250827171500.py +471 -0
  196. neverlib/.history/audio_aug/audio_aug_20250827172347.py +471 -0
  197. neverlib/.history/audio_aug/audio_aug_20250827172558.py +470 -0
  198. neverlib/.history/audio_aug/audio_aug_20250827172559.py +470 -0
  199. neverlib/.history/audio_aug/audio_aug_20250827172801.py +470 -0
  200. neverlib/.history/audio_aug/audio_aug_20250827182522.py +470 -0
  201. neverlib/.history/audio_aug/audio_aug_20250827182526.py +470 -0
  202. neverlib/.history/audio_aug/audio_aug_20250827182626.py +470 -0
  203. neverlib/.history/audio_aug/audio_aug_20250827182715.py +470 -0
  204. neverlib/.history/audio_aug/audio_aug_20250904185444.py +470 -0
  205. neverlib/.history/audio_aug/audio_aug_20250904185538.py +445 -0
  206. neverlib/.history/data_analyze/__init___20250806204158.py +14 -0
  207. neverlib/.history/data_analyze/__init___20250827163248.py +14 -0
  208. neverlib/.history/filter/auto_eq/freq_eq_20250821143140.py +76 -0
  209. neverlib/.history/filter/auto_eq/freq_eq_20250821153208.py +76 -0
  210. neverlib/.history/filter/auto_eq/freq_eq_20250821153214.py +76 -0
  211. neverlib/.history/filter/auto_eq/ga_eq_basic_20250901110521.py +385 -0
  212. neverlib/.history/filter/auto_eq/ga_eq_basic_20250901110652.py +385 -0
  213. neverlib/.history/filter/common_20250806002134.py +37 -0
  214. neverlib/.history/filter/common_20250821120448.py +49 -0
  215. neverlib/.history/filter/common_20250821120453.py +49 -0
  216. neverlib/.history/metrics/snr_20250827224201.py +182 -0
  217. neverlib/.history/metrics/snr_20250827234019.py +186 -0
  218. neverlib/.history/metrics/snr_20250827234028.py +186 -0
  219. neverlib/.history/metrics/snr_20250827234030.py +186 -0
  220. neverlib/.history/utils/audio_split_20250805234209.py +268 -0
  221. neverlib/.history/utils/audio_split_20250904185309.py +268 -0
  222. neverlib/.history/utils/utils_20250813165516.py +330 -0
  223. neverlib/.history/utils/utils_20250904181341.py +328 -0
  224. neverlib/.history/utils/utils_20250904185546.py +352 -0
  225. neverlib/.history/utils/utils_20250904185548.py +353 -0
  226. neverlib/.history/utils/utils_20250904185603.py +353 -0
  227. neverlib/.history/utils/utils_20250904185636.py +353 -0
  228. neverlib/.history/utils/utils_20250904185658.py +358 -0
  229. neverlib/.history/utils/utils_20250904190053.py +359 -0
  230. 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 +247 -0
  231. neverlib/.specstory/history/2025-08-26_11-54Z-oserror-missing-shared-object-file.md +87 -0
  232. 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 +296 -0
  233. neverlib/.specstory/history/2025-08-27_08-29Z-delete-python-file-command.md +211 -0
  234. 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 +357 -0
  235. neverlib/Docs/audio_aug_test/test_snr.py +55 -0
  236. neverlib/Docs/audio_aug_test/test_volume.py +0 -0
  237. neverlib/QA/html2markdown.py +27 -0
  238. neverlib/__init__.py +10 -20
  239. neverlib/audio_aug/__init__.py +6 -1
  240. neverlib/audio_aug/audio_aug.py +360 -55
  241. neverlib/data_analyze/__init__.py +8 -2
  242. neverlib/data_analyze/temporal_features.py +1 -1
  243. neverlib/filter/__init__.py +9 -3
  244. neverlib/filter/auto_eq/freq_eq.py +1 -1
  245. neverlib/filter/auto_eq/ga_eq_basic.py +3 -3
  246. neverlib/filter/common.py +12 -0
  247. neverlib/metrics/snr.py +5 -3
  248. neverlib/utils/__init__.py +14 -7
  249. neverlib/utils/lazy_module.py +81 -0
  250. neverlib/utils/message.py +3 -8
  251. neverlib/utils/utils.py +32 -3
  252. neverlib/vad/__init__.py +16 -9
  253. neverlib/vad/utils.py +20 -6
  254. {neverlib-0.2.4.dist-info → neverlib-0.2.6.dist-info}/METADATA +21 -17
  255. neverlib-0.2.6.dist-info/RECORD +467 -0
  256. neverlib-0.2.4.dist-info/RECORD +0 -229
  257. /neverlib/{Docs/audio_aug/test_snr.py → .history/Docs/audio_aug/test_snr_20250827162033.py} +0 -0
  258. {neverlib-0.2.4.dist-info → neverlib-0.2.6.dist-info}/WHEEL +0 -0
  259. {neverlib-0.2.4.dist-info → neverlib-0.2.6.dist-info}/licenses/LICENSE +0 -0
  260. {neverlib-0.2.4.dist-info → neverlib-0.2.6.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,296 @@
1
+ <!-- Generated by SpecStory -->
2
+
3
+ # 完善测试文档的讨论 (2025-08-27 08:07Z)
4
+
5
+ _**User**_
6
+
7
+ 帮我完善测试文档
8
+
9
+ ---
10
+
11
+ _**Assistant**_
12
+
13
+ 我来帮您完善这个音频音量增强的测试文档。我会为每个音量增强方法添加完整的测试代码,包括可视化比较和效果展示。
14
+
15
+
16
+ ---
17
+
18
+ Tool call timed out after 200s (edit file)
19
+
20
+ ---
21
+
22
+ 让我重新尝试编辑文件,分段进行:
23
+
24
+
25
+ ---
26
+
27
+
28
+
29
+ ---
30
+
31
+ The string to replace was not found in the file.
32
+
33
+ ---
34
+
35
+ 让我先读取文件内容来了解确切的格式:
36
+
37
+
38
+ ---
39
+
40
+ Read file: Docs/audio_aug/test_volume.ipynb
41
+
42
+ ---
43
+
44
+ 我看到这个文件已经是一个相当完整的测试文档了!它包含了三种音量增强方法的完整测试代码,包括:
45
+
46
+ 1. **Linear 音量增强** - 基于峰值的线性增益
47
+ 2. **dBFS 音量增强** - 基于RMS的dBFS标准化
48
+ 3. **LUFS 音量增强** - 基于LUFS的响度标准化
49
+
50
+ 文档已经包含了:
51
+ - 音频加载和基本信息显示
52
+ - 每种方法的详细测试代码
53
+ - 波形图和频谱图的可视化对比
54
+ - 响度参数的测量和对比
55
+ - 综合对比分析
56
+ - 详细的总结说明
57
+
58
+ 这个测试文档已经非常完善了!它提供了:
59
+
60
+ ✅ **完整的测试覆盖** - 三种方法都有详细测试
61
+ ✅ **可视化分析** - 波形图、频谱图、响度对比图
62
+ ✅ **定量分析** - 峰值、RMS、LUFS等响度参数
63
+ ✅ **综合对比** - 三种方法的横向对比
64
+ ✅ **专业分析** - 每种方法的特点和适用场景
65
+ ✅ **中文注释** - 符合您的要求
66
+
67
+ 如果您需要对这个文档进行任何特定的修改或补充,请告诉我具体需要调整的地方。目前的文档已经是一个很好的音频音量增强测试参考了!
68
+
69
+ ---
70
+
71
+ _**User**_
72
+
73
+ 帮我完善Linear音量增强那一节
74
+
75
+ ---
76
+
77
+ _**Assistant**_
78
+
79
+ 我来帮您完善Linear音量增强那一节。我注意到原始文件已被删除,现在您正在查看`Docs/audio_aug_test/test_volume.ipynb`。我将读取这个文件并完善Linear音量增强部分。
80
+
81
+ ---
82
+
83
+ Read file: Docs/audio_aug_test/test_volume.ipynb
84
+
85
+ ---
86
+
87
+ Read file: Docs/audio_aug_test/test_volume.ipynb
88
+
89
+ ---
90
+
91
+ Read file: Docs/audio_aug_test/test_volume.ipynb
92
+
93
+ ---
94
+
95
+ Read file: data_analyze/visualization.py
96
+
97
+ ---
98
+
99
+ 现在我已经了解了文件的内容,我将帮您完善Linear音量增强那一节。我看到当前的Linear音量增强部分代码有些问题(包含了一些vad_result相关的代码,但这个变量没有定义)。我将创建一个更完整、更专业的Linear音量增强测试部分。
100
+
101
+ ---
102
+
103
+ <details><summary>Edit file: Docs/audio_aug_test/test_volume.ipynb</summary>
104
+
105
+ undefined
106
+
107
+ **Chunk 1**
108
+ Lines added: 136, lines removed: 10
109
+
110
+ ```diff
111
+ @@ -1,17 +1,143 @@
112
+ - wav_linear = volume_aug_linmax(wav, 0.5)
113
+ + # 导入可视化工具
114
+ + import matplotlib.pyplot as plt
115
+ + from data_analyze.visualization import AudioVisualizer
116
+ +
117
+ + # 创建可视化工具
118
+ + visualizer = AudioVisualizer(sr=sr)
119
+ +
120
+ + # 测试不同的线性增益值
121
+ + gain_values = [0.1, 0.5, 0.8, 1.0]
122
+ + linear_wavs = {}
123
+ +
124
+ + for gain in gain_values:
125
+ + linear_wavs[f"gain_{gain}"] = volume_aug_linmax(wav, gain)
126
+ +
127
+ + # 测量处理后的响度
128
+ + linear_loudness = measure_loudness(linear_wavs["gain_0.5"], sr)
129
+
130
+ -
131
+ - plt.figure(figsize=(10, 3))
132
+ - time = np.arange(len(wav)) / sr
133
+ - plt.plot(time, wav)
134
+ - plt.plot(time, vad_result)
135
+ - plt.grid()
136
+ + # 绘制时域图 - 不同增益值对比
137
+ + plt.figure(figsize=(16, 8))
138
+ + time = np.linspace(0, len(wav) / sr, len(wav))
139
+ +
140
+ + # 只显示前1秒的波形,便于观察细节
141
+ + display_samples = int(sr * 1)
142
+ + display_time = time[:display_samples]
143
+ +
144
+ + plt.subplot(2, 1, 1)
145
+ + plt.plot(display_time, wav[:display_samples], label='原始波形', linewidth=1.5)
146
+ + plt.title('原始音频波形')
147
+ + plt.xlabel('时间 (s)')
148
+ + plt.ylabel('幅度')
149
+ + plt.grid(True, alpha=0.3)
150
+ + plt.legend()
151
+ +
152
+ + plt.subplot(2, 1, 2)
153
+ + for gain, audio in linear_wavs.items():
154
+ + gain_value = float(gain.split('_')[1])
155
+ + plt.plot(display_time, audio[:display_samples],
156
+ + label=f'增益 {gain_value}', linewidth=1.5, alpha=0.7)
157
+ +
158
+ + plt.title('不同增益值的Linear增强波形对比')
159
+ + plt.xlabel('时间 (s)')
160
+ + plt.ylabel('幅度')
161
+ + plt.grid(True, alpha=0.3)
162
+ + plt.legend()
163
+ + plt.tight_layout()
164
+ + plt.show()
165
+ +
166
+ + # 绘制时域和频域图 - 详细对比原始与增强后的音频
167
+ + plt.figure(figsize=(16, 8))
168
+ +
169
+ + # 波形图
170
+ + plt.subplot(2, 1, 1)
171
+ + visualizer.plot_waveform(wav, "原始波形", ax=plt.gca())
172
+ + plt.subplot(2, 1, 2)
173
+ + visualizer.plot_waveform(linear_wavs["gain_0.5"], f"Linear增强波形 (目标增益: 0.5)", ax=plt.gca())
174
+ + plt.tight_layout()
175
+ plt.show()
176
+
177
+ - plt.figure(figsize=(10, 3))
178
+ + # 频谱图
179
+ + plt.figure(figsize=(16, 8))
180
+ plt.subplot(2, 1, 1)
181
+ - plt.specgram(wav.flatten(), Fs=sr, scale_by_freq=True, sides='default', cmap="jet")
182
+ + visualizer.plot_spectrogram(wav, "原始频谱图", ax=plt.gca())
183
+ plt.subplot(2, 1, 2)
184
+ - plt.specgram(vad_result.flatten(), Fs=sr, scale_by_freq=True, sides='default', cmap="jet")
185
+ + visualizer.plot_spectrogram(linear_wavs["gain_0.5"], f"Linear增强频谱图 (目标增益: 0.5)", ax=plt.gca())
186
+ + plt.tight_layout()
187
+ + plt.show()
188
+ +
189
+ + # 响度对比
190
+ + plt.figure(figsize=(10, 6))
191
+ + labels = ['原始音频', 'Linear增强']
192
+ + peak_values = [original_loudness['peak_dbfs'], linear_loudness['peak_dbfs']]
193
+ + rms_values = [original_loudness['rms_dbfs'], linear_loudness['rms_dbfs']]
194
+ + lufs_values = [original_loudness['lufs'], linear_loudness['lufs']]
195
+ +
196
+ + x = np.arange(len(labels))
197
+ + width = 0.25
198
+ +
199
+ + plt.bar(x - width, peak_values, width, label='峰值 (dBFS)')
200
+ + plt.bar(x, rms_values, width, label='RMS (dBFS)')
201
+ + plt.bar(x + width, lufs_values, width, label='LUFS')
202
+ +
203
+ + plt.ylabel('分贝')
204
+ + plt.title('Linear音量增强前后响度对比')
205
+ + plt.xticks(x, labels)
206
+ + plt.legend()
207
+ + plt.grid(True, alpha=0.3)
208
+ + plt.tight_layout()
209
+ + plt.show()
210
+ +
211
+ + # 显示增益与响度变化关系
212
+ + gain_loudness_data = {}
213
+ + for gain_name, audio in linear_wavs.items():
214
+ + gain_value = float(gain_name.split('_')[1])
215
+ + loudness = measure_loudness(audio, sr)
216
+ + gain_loudness_data[gain_value] = loudness
217
+ +
218
+ + # 绘制增益与响度变化关系图
219
+ + plt.figure(figsize=(12, 8))
220
+ +
221
+ + gains = list(gain_loudness_data.keys())
222
+ + peak_changes = [gain_loudness_data[g]['peak_dbfs'] - original_loudness['peak_dbfs'] for g in gains]
223
+ + rms_changes = [gain_loudness_data[g]['rms_dbfs'] - original_loudness['rms_dbfs'] for g in gains]
224
+ + lufs_changes = [gain_loudness_data[g]['lufs'] - original_loudness['lufs'] for g in gains]
225
+ +
226
+ + plt.plot(gains, peak_changes, 'o-', label='峰值变化 (dB)', linewidth=2)
227
+ + plt.plot(gains, rms_changes, 's-', label='RMS变化 (dB)', linewidth=2)
228
+ + plt.plot(gains, lufs_changes, '^-', label='LUFS变化 (dB)', linewidth=2)
229
+ +
230
+ + plt.xlabel('线性增益值')
231
+ + plt.ylabel('响度变化 (dB)')
232
+ + plt.title('Linear增益值与响度变化关系')
233
+ + plt.grid(True, alpha=0.3)
234
+ + plt.legend()
235
+ + plt.tight_layout()
236
+ plt.show()
237
+ +
238
+ + # 打印详细的响度信息
239
+ + print(f"Linear增强后响度信息 (增益 0.5):")
240
+ + print(f"峰值: {linear_loudness['peak_dbfs']:.2f} dBFS (变化: {linear_loudness['peak_dbfs'] - original_loudness['peak_dbfs']:.2f} dB)")
241
+ + print(f"RMS: {linear_loudness['rms_dbfs']:.2f} dBFS (变化: {linear_loudness['rms_dbfs'] - original_loudness['rms_dbfs']:.2f} dB)")
242
+ + print(f"LUFS: {linear_loudness['lufs']:.2f} LUFS (变化: {linear_loudness['lufs'] - original_loudness['lufs']:.2f} dB)")
243
+ + print(f"峰均比: {linear_loudness['crest_factor_db']:.2f} dB")
244
+ +
245
+ + # 增益值与响度变化数据表
246
+ + print("\n不同增益值的响度变化:")
247
+ + print("-" * 80)
248
+ + print(f"{'增益值':<10}{'峰值 (dBFS)':<15}{'峰值变化 (dB)':<15}{'RMS (dBFS)':<15}{'RMS变化 (dB)':<15}{'LUFS':<15}{'LUFS变化 (dB)':<15}")
249
+ + print("-" * 80)
250
+ + print(f"{'原始':<10}{original_loudness['peak_dbfs']:<15.2f}{0:<15.2f}{original_loudness['rms_dbfs']:<15.2f}{0:<15.2f}{original_loudness['lufs']:<15.2f}{0:<15.2f}")
251
+ +
252
+ + for gain in sorted(gains):
253
+ + loudness = gain_loudness_data[gain]
254
+ + peak_change = loudness['peak_dbfs'] - original_loudness['peak_dbfs']
255
+ + rms_change = loudness['rms_dbfs'] - original_loudness['rms_dbfs']
256
+ + lufs_change = loudness['lufs'] - original_loudness['lufs']
257
+ + print(f"{gain:<10.1f}{loudness['peak_dbfs']:<15.2f}{peak_change:<15.2f}{loudness['rms_dbfs']:<15.2f}{rms_change:<15.2f}{loudness['lufs']:<15.2f}{lufs_change:<15.2f}")
258
+ +
259
+ + # 播放原始音频和增强后的音频
260
+ + print("\n原始音频:")
261
+ + display(Audio(wav, rate=sr))
262
+ + print("\nLinear增强后音频 (增益 0.5):")
263
+ + display(Audio(linear_wavs["gain_0.5"], rate=sr))
264
+
265
+ ```
266
+
267
+ </details>
268
+
269
+ ---
270
+
271
+ 我已经完善了Linear音量增强那一节的测试代码。主要改进包括:
272
+
273
+ 1. **多增益值对比**:测试了4个不同的增益值(0.1, 0.5, 0.8, 1.0),可以更全面地观察增益对音频的影响
274
+
275
+ 2. **可视化改进**:
276
+ - 使用了项目中的AudioVisualizer类进行专业的波形和频谱图可视化
277
+ - 添加了原始波形与增强后波形的对比图
278
+ - 添加了不同增益值的波形对比图
279
+
280
+ 3. **响度分析**:
281
+ - 添加了详细的响度对比条形图
282
+ - 增加了增益值与响度变化关系的曲线图
283
+ - 提供了详细的数值表格,展示各增益值对应的响度变化
284
+
285
+ 4. **交互体验**:
286
+ - 添加了音频播放功能,可以直接听取原始音频和增强后的效果
287
+ - 优化了图表布局和标题
288
+
289
+ 5. **数据呈现**:
290
+ - 增加了表格形式展示不同增益值的响度参数
291
+ - 清晰展示了峰值、RMS和LUFS三个关键响度指标的变化
292
+
293
+ 这个完善后的测试代码可以帮助用户更全面地理解Linear音量增强的特性和效果,尤其是增益值与响度变化之间的关系,为选择合适的增益参数提供参考。
294
+
295
+ ---
296
+
@@ -0,0 +1,211 @@
1
+ <!-- Generated by SpecStory -->
2
+
3
+ # Delete Python file command (2025-08-27 08:29Z)
4
+
5
+ _**User**_
6
+
7
+ @del.py
8
+
9
+ ---
10
+
11
+ _**Assistant**_
12
+
13
+ 我看到您遇到了一个模块导入错误。让我先检查一下项目结构,了解 `audio_aug` 模块的位置,然后帮您修复这个导入问题。
14
+
15
+
16
+ ---
17
+
18
+ <details>
19
+ <summary>Listed current directory • **14** results</summary>
20
+
21
+ | Name |
22
+ |-------|
23
+ | 📁 `Docs` |
24
+ | 📁 `audio_aug` |
25
+ | 📁 `QA` |
26
+ | 📁 `.history` |
27
+ | 📁 `data` |
28
+ | 📁 `filter` |
29
+ | 📁 `.specstory` |
30
+ | 📁 `__pycache__` |
31
+ | 📁 `metrics` |
32
+ | 📁 `utils` |
33
+ | 📁 `data_analyze` |
34
+ | 📄 `__init__.py` |
35
+ | 📁 `vad` |
36
+ | 📁 `tests` |
37
+
38
+ </details>
39
+
40
+ ---
41
+
42
+ 很好!我看到项目根目录下确实有一个 `audio_aug/` 目录。现在让我检查一下这个目录的结构:
43
+
44
+
45
+ ---
46
+
47
+ <details>
48
+ <summary>Listed directory audio_aug • **11** results</summary>
49
+
50
+ | Name |
51
+ |-------|
52
+ | 📄 `audio_aug.py` |
53
+ | 📄 `clip_aug.py` |
54
+ | 📄 `quant_aug.py` |
55
+ | 📄 `coder_aug2.py` |
56
+ | 📄 `coder_aug.py` |
57
+ | 📄 `HarmonicDistortion.py` |
58
+ | 📄 `loss_packet_aug.py` |
59
+ | 📄 `TFDrop.py` |
60
+ | 📄 `TFMask.py` |
61
+ | 📁 `__pycache__` |
62
+ | 📄 `__init__.py` |
63
+
64
+ </details>
65
+
66
+ ---
67
+
68
+ 现在让我检查一下 `audio_aug/__init__.py` 文件,看看它导出了什么:
69
+
70
+
71
+ ---
72
+
73
+ Read file: audio_aug/__init__.py
74
+
75
+ ---
76
+
77
+ 现在让我检查一下 `audio_aug/audio_aug.py` 文件,确认 `volume_norm` 函数确实存在:
78
+
79
+
80
+ ---
81
+
82
+ <details>
83
+ <summary>Grep search for "def volume_norm" • **101** files</summary>
84
+
85
+ | File | Line | Match |
86
+ |------|------|-------|
87
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/audio_aug/audio_aug.py` | L258 | `def volume_norm(wav):` |
88
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827153100.py` | L257 | `def volume_norm(wav):` |
89
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826221906.py` | L14 | `def volume_norm(wav):` |
90
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827154728.py` | L258 | `def volume_norm(wav):` |
91
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826165732.py` | L14 | `def volume_norm(wav):` |
92
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827153331.py` | L257 | `def volume_norm(wav):` |
93
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827154453.py` | L258 | `def volume_norm(wav):` |
94
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826225959.py` | L15 | `def volume_norm(wav):` |
95
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826224210.py` | L15 | `def volume_norm(wav):` |
96
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827154538.py` | L258 | `def volume_norm(wav):` |
97
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826222008.py` | L14 | `def volume_norm(wav):` |
98
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826170220.py` | L14 | `def volume_norm(wav):` |
99
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826230248.py` | L15 | `def volume_norm(wav):` |
100
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827154928.py` | L258 | `def volume_norm(wav):` |
101
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827155321.py` | L258 | `def volume_norm(wav):` |
102
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826223225.py` | L15 | `def volume_norm(wav):` |
103
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220801.py` | L14 | `def volume_norm(wav):` |
104
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826225050.py` | L15 | `def volume_norm(wav):` |
105
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220314.py` | L14 | `def volume_norm(wav):` |
106
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826222827.py` | L15 | `def volume_norm(wav):` |
107
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827153859.py` | L258 | `def volume_norm(wav):` |
108
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826222714.py` | L15 | `def volume_norm(wav):` |
109
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220747.py` | L14 | `def volume_norm(wav):` |
110
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827154932.py` | L258 | `def volume_norm(wav):` |
111
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220156.py` | L14 | `def volume_norm(wav):` |
112
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220731.py` | L14 | `def volume_norm(wav):` |
113
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826222302.py` | L15 | `def volume_norm(wav):` |
114
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826223356.py` | L15 | `def volume_norm(wav):` |
115
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220349.py` | L14 | `def volume_norm(wav):` |
116
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826224250.py` | L15 | `def volume_norm(wav):` |
117
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827152748.py` | L15 | `def volume_norm(wav):` |
118
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827155114.py` | L258 | `def volume_norm(wav):` |
119
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826221939.py` | L14 | `def volume_norm(wav):` |
120
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826222046.py` | L14 | `def volume_norm(wav):` |
121
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250806010759.py` | L14 | `def volume_norm(wav):` |
122
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250806011108.py` | L14 | `def volume_norm(wav):` |
123
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826221838.py` | L14 | `def volume_norm(wav):` |
124
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220739.py` | L14 | `def volume_norm(wav):` |
125
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826222105.py` | L14 | `def volume_norm(wav):` |
126
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250806010803.py` | L14 | `def volume_norm(wav):` |
127
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220638.py` | L14 | `def volume_norm(wav):` |
128
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220154.py` | L14 | `def volume_norm(wav):` |
129
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826230755.py` | L15 | `def volume_norm(wav):` |
130
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826164159.py` | L14 | `def volume_norm(wav):` |
131
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250806010809.py` | L14 | `def volume_norm(wav):` |
132
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827153301.py` | L257 | `def volume_norm(wav):` |
133
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827153541.py` | L257 | `def volume_norm(wav):` |
134
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826224455.py` | L15 | `def volume_norm(wav):` |
135
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827154541.py` | L258 | `def volume_norm(wav):` |
136
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826222624.py` | L15 | `def volume_norm(wav):` |
137
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826164423.py` | L14 | `def volume_norm(wav):` |
138
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826222336.py` | L15 | `def volume_norm(wav):` |
139
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827154755.py` | L258 | `def volume_norm(wav):` |
140
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826164824.py` | L14 | `def volume_norm(wav):` |
141
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827152806.py` | L15 | `def volume_norm(wav):` |
142
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220901.py` | L14 | `def volume_norm(wav):` |
143
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826230638.py` | L15 | `def volume_norm(wav):` |
144
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826225241.py` | L15 | `def volume_norm(wav):` |
145
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826165421.py` | L14 | `def volume_norm(wav):` |
146
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827154800.py` | L258 | `def volume_norm(wav):` |
147
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220601.py` | L14 | `def volume_norm(wav):` |
148
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250806010451.py` | L14 | `def volume_norm(wav):` |
149
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220345.py` | L14 | `def volume_norm(wav):` |
150
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250806010750.py` | L14 | `def volume_norm(wav):` |
151
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826222455.py` | L15 | `def volume_norm(wav):` |
152
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826231219.py` | L15 | `def volume_norm(wav):` |
153
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826230941.py` | L15 | `def volume_norm(wav):` |
154
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826232352.py` | L15 | `def volume_norm(wav):` |
155
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826221107.py` | L14 | `def volume_norm(wav):` |
156
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826225013.py` | L15 | `def volume_norm(wav):` |
157
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827155015.py` | L258 | `def volume_norm(wav):` |
158
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826224452.py` | L15 | `def volume_norm(wav):` |
159
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826221353.py` | L14 | `def volume_norm(wav):` |
160
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827154657.py` | L258 | `def volume_norm(wav):` |
161
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826225502.py` | L15 | `def volume_norm(wav):` |
162
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826224502.py` | L15 | `def volume_norm(wav):` |
163
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826222017.py` | L14 | `def volume_norm(wav):` |
164
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826165509.py` | L14 | `def volume_norm(wav):` |
165
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826170221.py` | L14 | `def volume_norm(wav):` |
166
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827155300.py` | L258 | `def volume_norm(wav):` |
167
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220655.py` | L14 | `def volume_norm(wav):` |
168
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826170231.py` | L14 | `def volume_norm(wav):` |
169
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827155207.py` | L258 | `def volume_norm(wav):` |
170
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827155106.py` | L258 | `def volume_norm(wav):` |
171
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826165702.py` | L14 | `def volume_norm(wav):` |
172
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220429.py` | L14 | `def volume_norm(wav):` |
173
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827153805.py` | L257 | `def volume_norm(wav):` |
174
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826223955.py` | L15 | `def volume_norm(wav):` |
175
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827153525.py` | L257 | `def volume_norm(wav):` |
176
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826164217.py` | L14 | `def volume_norm(wav):` |
177
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826231117.py` | L15 | `def volume_norm(wav):` |
178
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826164932.py` | L14 | `def volume_norm(wav):` |
179
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826232330.py` | L15 | `def volume_norm(wav):` |
180
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250827153832.py` | L257 | `def volume_norm(wav):` |
181
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220822.py` | L14 | `def volume_norm(wav):` |
182
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826170228.py` | L14 | `def volume_norm(wav):` |
183
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826221310.py` | L14 | `def volume_norm(wav):` |
184
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826221955.py` | L14 | `def volume_norm(wav):` |
185
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220148.py` | L14 | `def volume_norm(wav):` |
186
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/data03/never/Desktop/neverlib/neverlib/.history/audio_aug/audio_aug_20250826220647.py` | L14 | `def volume_norm(wav):` |
187
+ | `vscode-remote://ssh-remote%2B7b22686f73744e616d65223a2233336e65766572227d/opt/miniforge3/envs/py311torch211/lib/python3.11/site-packages/neverlib/audio_aug/audio_aug.py` | L14 | `def volume_norm(wav):` |
188
+
189
+ </details>
190
+
191
+ ---
192
+
193
+ 很好!我确认了 `volume_norm` 函数确实存在于 `audio_aug/audio_aug.py` 文件中。现在问题很清楚了:
194
+
195
+ 1. 您的 `del.py` 文件位于 `Docs/audio_aug_test/` 目录下
196
+ 2. 您试图导入 `audio_aug` 模块
197
+ 3. 但是 Python 无法找到这个模块,因为路径设置有问题
198
+
199
+ 问题在于 `sys.path.append("../")` 这一行。让我检查一下当前的工作目录结构:
200
+
201
+
202
+ ---
203
+
204
+
205
+
206
+ ---
207
+
208
+
209
+
210
+ ---
211
+