sonusai 1.0.2__tar.gz → 1.0.3__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.
Files changed (137) hide show
  1. {sonusai-1.0.2 → sonusai-1.0.3}/PKG-INFO +2 -1
  2. {sonusai-1.0.2 → sonusai-1.0.3}/pyproject.toml +2 -1
  3. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/genmixdb.py +6 -0
  4. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/effects.py +1 -1
  5. {sonusai-1.0.2 → sonusai-1.0.3}/README.rst +0 -0
  6. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/__init__.py +0 -0
  7. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/aawscd_probwrite.py +0 -0
  8. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/audiofe.py +0 -0
  9. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/calc_metric_spenh.py +0 -0
  10. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/config/__init__.py +0 -0
  11. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/config/config.py +0 -0
  12. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/config/config.yml +0 -0
  13. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/config/constants.py +0 -0
  14. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/constants.py +0 -0
  15. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/data/__init__.py +0 -0
  16. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/data/genmixdb.yml +0 -0
  17. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/data/silero_vad_v5.1.jit +0 -0
  18. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/data/silero_vad_v5.1.onnx +0 -0
  19. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/data/speech_ma01_01.wav +0 -0
  20. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/data/whitenoise.wav +0 -0
  21. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/datatypes.py +0 -0
  22. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/deprecated/gentcst.py +0 -0
  23. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/deprecated/plot.py +0 -0
  24. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/deprecated/tplot.py +0 -0
  25. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/doc/__init__.py +0 -0
  26. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/doc/doc.py +0 -0
  27. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/doc.py +0 -0
  28. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/genft.py +0 -0
  29. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/genmetrics.py +0 -0
  30. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/genmix.py +0 -0
  31. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/ir_metric.py +0 -0
  32. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/lsdb.py +0 -0
  33. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/main.py +0 -0
  34. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/__init__.py +0 -0
  35. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/calc_audio_stats.py +0 -0
  36. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/calc_class_weights.py +0 -0
  37. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/calc_optimal_thresholds.py +0 -0
  38. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/calc_pcm.py +0 -0
  39. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/calc_pesq.py +0 -0
  40. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/calc_phase_distance.py +0 -0
  41. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/calc_sa_sdr.py +0 -0
  42. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/calc_sample_weights.py +0 -0
  43. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/calc_segsnr_f.py +0 -0
  44. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/calc_speech.py +0 -0
  45. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/calc_wer.py +0 -0
  46. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/calc_wsdr.py +0 -0
  47. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/class_summary.py +0 -0
  48. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/confusion_matrix_summary.py +0 -0
  49. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/one_hot.py +0 -0
  50. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics/snr_summary.py +0 -0
  51. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/metrics_summary.py +0 -0
  52. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/__init__.py +0 -0
  53. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/audio.py +0 -0
  54. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/class_balancing.py +0 -0
  55. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/config.py +0 -0
  56. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/constants.py +0 -0
  57. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/data_io.py +0 -0
  58. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/db_datatypes.py +0 -0
  59. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/feature.py +0 -0
  60. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/generation.py +0 -0
  61. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/helpers.py +0 -0
  62. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/ir_delay.py +0 -0
  63. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/ir_effects.py +0 -0
  64. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/log_duration_and_sizes.py +0 -0
  65. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/mixdb.py +0 -0
  66. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/pad_audio.py +0 -0
  67. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/resample.py +0 -0
  68. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/sox_effects.py +0 -0
  69. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/sox_help.py +0 -0
  70. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/spectral_mask.py +0 -0
  71. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/truth.py +0 -0
  72. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/truth_functions/__init__.py +0 -0
  73. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/truth_functions/crm.py +0 -0
  74. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/truth_functions/energy.py +0 -0
  75. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/truth_functions/file.py +0 -0
  76. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/truth_functions/metadata.py +0 -0
  77. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/truth_functions/metrics.py +0 -0
  78. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/truth_functions/phoneme.py +0 -0
  79. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/truth_functions/sed.py +0 -0
  80. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mixture/truth_functions/target.py +0 -0
  81. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/mkwav.py +0 -0
  82. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/onnx_predict.py +0 -0
  83. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/queries/__init__.py +0 -0
  84. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/queries/queries.py +0 -0
  85. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/speech/__init__.py +0 -0
  86. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/speech/l2arctic.py +0 -0
  87. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/speech/librispeech.py +0 -0
  88. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/speech/mcgill.py +0 -0
  89. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/speech/textgrid.py +0 -0
  90. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/speech/timit.py +0 -0
  91. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/speech/types.py +0 -0
  92. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/speech/vctk.py +0 -0
  93. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/speech/voxceleb.py +0 -0
  94. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/summarize_metric_spenh.py +0 -0
  95. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/__init__.py +0 -0
  96. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/asl_p56.py +0 -0
  97. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/asr.py +0 -0
  98. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/asr_functions/__init__.py +0 -0
  99. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/asr_functions/aaware_whisper.py +0 -0
  100. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/audio_devices.py +0 -0
  101. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/braced_glob.py +0 -0
  102. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/calculate_input_shape.py +0 -0
  103. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/choice.py +0 -0
  104. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/compress.py +0 -0
  105. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/convert_string_to_number.py +0 -0
  106. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/create_timestamp.py +0 -0
  107. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/create_ts_name.py +0 -0
  108. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/dataclass_from_dict.py +0 -0
  109. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/db.py +0 -0
  110. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/docstring.py +0 -0
  111. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/energy_f.py +0 -0
  112. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/engineering_number.py +0 -0
  113. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/evaluate_random_rule.py +0 -0
  114. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/get_frames_per_batch.py +0 -0
  115. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/get_label_names.py +0 -0
  116. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/grouper.py +0 -0
  117. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/human_readable_size.py +0 -0
  118. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/keyboard_interrupt.py +0 -0
  119. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/load_object.py +0 -0
  120. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/max_text_width.py +0 -0
  121. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/model_utils.py +0 -0
  122. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/numeric_conversion.py +0 -0
  123. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/onnx_utils.py +0 -0
  124. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/parallel.py +0 -0
  125. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/path_info.py +0 -0
  126. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/print_mixture_details.py +0 -0
  127. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/rand.py +0 -0
  128. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/ranges.py +0 -0
  129. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/read_predict_data.py +0 -0
  130. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/reshape.py +0 -0
  131. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/seconds_to_hms.py +0 -0
  132. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/stacked_complex.py +0 -0
  133. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/stratified_shuffle_split.py +0 -0
  134. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/tokenized_shell_vars.py +0 -0
  135. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/write_audio.py +0 -0
  136. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/utils/yes_or_no.py +0 -0
  137. {sonusai-1.0.2 → sonusai-1.0.3}/sonusai/vars.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: sonusai
3
- Version: 1.0.2
3
+ Version: 1.0.3
4
4
  Summary: Framework for building deep neural network models for sound, speech, and voice AI
5
5
  Home-page: https://aaware.com
6
6
  License: GPL-3.0-only
@@ -36,6 +36,7 @@ Requires-Dist: pyyaml (>=6.0.2,<7.0.0)
36
36
  Requires-Dist: requests (>=2.32.3,<3.0.0)
37
37
  Requires-Dist: rich (>=13.9.4,<14.0.0)
38
38
  Requires-Dist: samplerate (>=0.2.1,<0.3.0)
39
+ Requires-Dist: scikit-learn (>=1.6.1,<2.0.0)
39
40
  Requires-Dist: sh (>=2.2.2,<3.0.0)
40
41
  Requires-Dist: soundfile (>=0.12.1,<0.13.0)
41
42
  Requires-Dist: sox (>=1.5.0,<2.0.0)
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "sonusai"
3
- version = "1.0.2"
3
+ version = "1.0.3"
4
4
  description = "Framework for building deep neural network models for sound, speech, and voice AI"
5
5
  authors = ["Chris Eddington <chris@aaware.com>", "Jason Calderwood <jason@aaware.com>"]
6
6
  maintainers = ["Chris Eddington <chris@aaware.com>", "Jason Calderwood <jason@aaware.com>"]
@@ -42,6 +42,7 @@ pyyaml = "^6.0.2"
42
42
  requests = "^2.32.3"
43
43
  rich = "^13.9.4"
44
44
  samplerate = "^0.2.1"
45
+ scikit-learn = "^1.6.1"
45
46
  sh = "^2.2.2"
46
47
  soundfile = "^0.12.1"
47
48
  sox = "^1.5.0"
@@ -91,6 +91,9 @@ def genmixdb(
91
91
  if len([file for file in source_files if file.category == "primary"]) == 0:
92
92
  raise RuntimeError("Canceled due to no primary sources")
93
93
 
94
+ if logging:
95
+ logger.info("Populating source file table")
96
+
94
97
  populate_source_file_table(location, source_files, test)
95
98
 
96
99
  if logging:
@@ -123,6 +126,9 @@ def genmixdb(
123
126
  ir_files = get_ir_files(config, show_progress=show_progress)
124
127
  logger.info("")
125
128
 
129
+ if logging:
130
+ logger.info("Populating impulse response file table")
131
+
126
132
  populate_impulse_response_file_table(location, ir_files, test)
127
133
 
128
134
  if logging:
@@ -308,7 +308,7 @@ def evaluate_sai_random_ir(mixdb: MixtureDatabase, text: str) -> str:
308
308
  return m.group(1)
309
309
 
310
310
  if re.match(rand_pattern, text):
311
- return f"ir {randint(0, mixdb.num_ir_files)}" # noqa: S311
311
+ return f"ir {randint(0, mixdb.num_ir_files - 1)}" # noqa: S311
312
312
 
313
313
  if re.match(rand_range_pattern, text):
314
314
  try:
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes