We provide a PyTorch implementation of the paper Voice Separation with an Unknown Number of Multiple Speakers In which, we present a new method for separating a mixed audio sequence, in which multiple voices speak simultaneously. The new method employs gated neural networks that are trained to separate the voices at multiple processing steps, while maintaining the speaker in each output channel fixed. A different model is trained for every number of possible speakers, and the model with the largest number of speakers is employed to select the actual number of speakers in a given sample. Our method greatly outperforms the current state of the art, which, as we show, is not competitive for more than two speakers.
Other
1.25k
stars
179
forks
source link
<unknown function> + 0xf6bb (0x787e6014f6bb in /usr/local/lib/python3.10/dist-packages/torchaudio/lib/_torchaudio.so) #101
i am executing !python train.py in colab with python 3.10
facing this issue
/content/svoice/train.py:115: UserWarning:
The version_base parameter is not specified.
Please specify a compatability version level, or None.
Will assume defaults for version 1.1
@hydra.main(config_path="conf", config_name='config.yaml')
/usr/local/lib/python3.10/dist-packages/hydra/_internal/defaults_list.py:251: UserWarning: In 'config.yaml': Defaults list is missing _self_. See https://hydra.cc/docs/1.2/upgrades/1.0_to_1.1/default_composition_order for more information
warnings.warn(msg, UserWarning)
/usr/local/lib/python3.10/dist-packages/hydra/_internal/defaults_list.py:415: UserWarning: In config.yaml: Invalid overriding of hydra/job_logging:
Default list overrides requires 'override' keyword.
See https://hydra.cc/docs/1.2/upgrades/1.0_to_1.1/defaults_list_override for more information.
deprecation_warning(msg)
/usr/local/lib/python3.10/dist-packages/hydra/_internal/defaults_list.py:415: UserWarning: In config.yaml: Invalid overriding of hydra/hydra_logging:
Default list overrides requires 'override' keyword.
See https://hydra.cc/docs/1.2/upgrades/1.0_to_1.1/defaults_list_override for more information.
deprecation_warning(msg)
/usr/local/lib/python3.10/dist-packages/hydra/_internal/hydra.py:119: UserWarning: Future Hydra versions will no longer change working directory at job runtime by default.
See https://hydra.cc/docs/1.2/upgrades/1.1_to_1.2/changes_to_job_working_dir/ for more information.
ret = runjob(
[2024-08-29 05:08:14,435][main][INFO] - For logs, checkpoints and samples check /content/svoice/outputs/exp
[2024-08-29 05:08:17,107][main][INFO] - Running on host f914368da1f4
/usr/local/lib/python3.10/dist-packages/torch/utils/data/dataloader.py:557: UserWarning: This DataLoader will create 5 worker processes in total. Our suggested max number of worker in current system is 2, which is smaller than what this DataLoader is going to create. Please be aware that excessive worker creation might get DataLoader running slow or even freeze, lower the worker number to avoid potential slowness/freeze if necessary.
warnings.warn(_create_warning_msg(
[2024-08-29 05:08:18,078][svoice.solver][INFO] - ----------------------------------------------------------------------
[2024-08-29 05:08:18,078][svoice.solver][INFO] - Training...
/usr/local/lib/python3.10/dist-packages/torch/utils/data/dataloader.py:557: UserWarning: This DataLoader will create 5 worker processes in total. Our suggested max number of worker in current system is 2, which is smaller than what this DataLoader is going to create. Please be aware that excessive worker creation might get DataLoader running slow or even freeze, lower the worker number to avoid potential slowness/freeze if necessary.
warnings.warn(_create_warning_msg(
[2024-08-29 05:08:18,234][main][ERROR] - Some error happened
Traceback (most recent call last):
File "/content/svoice/train.py", line 118, in main
_main(args)
File "/content/svoice/train.py", line 112, in _main
run(args)
File "/content/svoice/train.py", line 93, in run
solver.train()
File "/content/svoice/svoice/solver.py", line 122, in train
train_loss = self._run_one_epoch(epoch)
File "/content/svoice/svoice/solver.py", line 193, in _run_one_epoch
for i, data in enumerate(logprog):
File "/content/svoice/svoice/utils.py", line 115, in next
value = next(self._iterator)
File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/dataloader.py", line 630, in next
data = self._next_data()
File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/dataloader.py", line 1344, in _next_data
return self._process_data(data)
File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/dataloader.py", line 1370, in _process_data
data.reraise()
File "/usr/local/lib/python3.10/dist-packages/torch/_utils.py", line 706, in reraise
raise exception
RuntimeError: Caught RuntimeError in DataLoader worker process 0.
Original Traceback (most recent call last):
File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/_utils/worker.py", line 309, in _worker_loop
data = fetcher.fetch(index) # type: ignore[possibly-undefined]
File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/_utils/fetch.py", line 52, in fetch
data = [self.dataset[idx] for idx in possibly_batched_index]
File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/_utils/fetch.py", line 52, in
data = [self.dataset[idx] for idx in possibly_batched_index]
File "/content/svoice/svoice/data/data.py", line 61, in getitem
mix_sig = self.mix_set[index]
File "/content/svoice/svoice/data/audio.py", line 77, in getitem
out = torchaudio.load(str(file), frame_offset=offset,
File "/usr/local/lib/python3.10/dist-packages/torchaudio/_backend/utils.py", line 205, in load
return backend.load(uri, frame_offset, num_frames, normalize, channels_first, format, buffer_size)
File "/usr/local/lib/python3.10/dist-packages/torchaudio/_backend/ffmpeg.py", line 297, in load
return load_audio(uri, frame_offset, num_frames, normalize, channels_first, format)
File "/usr/local/lib/python3.10/dist-packages/torchaudio/_backend/ffmpeg.py", line 88, in load_audio
s = torchaudio.io.StreamReader(src, format, None, buffer_size)
File "/usr/local/lib/python3.10/dist-packages/torio/io/_streaming_media_decoder.py", line 526, in init
self._be = ffmpeg_ext.StreamingMediaDecoder(os.path.normpath(src), format, option)
RuntimeError: Failed to open the input "debug/mix/2803-161169-0001_7976-110523-0004.wav" (No such file or directory).
Exception raised from get_input_format_context at /__w/audio/audio/pytorch/audio/src/libtorio/ffmpeg/stream_reader/stream_reader.cpp:42 (most recent call first):
frame #0: c10::Error::Error(c10::SourceLocation, std::string) + 0x96 (0x787df5aa0f86 in /usr/local/lib/python3.10/dist-packages/torch/lib/libc10.so)
frame #1: c10::detail::torchCheckFail(char const, char const, unsigned int, std::string const&) + 0x64 (0x787df5a4fd10 in /usr/local/lib/python3.10/dist-packages/torch/lib/libc10.so)
frame #2: + 0x41ff4 (0x787dc12faff4 in /usr/local/lib/python3.10/dist-packages/torio/lib/libtorio_ffmpeg4.so)
frame #3: torio::io::StreamingMediaDecoder::StreamingMediaDecoder(std::string const&, std::optional const&, std::optional<std::map<std::string, std::string, std::less, std::allocator<std::pair<std::string const, std::string> > > > const&) + 0x14 (0x787dc12fd9f4 in /usr/local/lib/python3.10/dist-packages/torio/lib/libtorio_ffmpeg4.so)
frame #4: + 0x3aa7e (0x787daab42a7e in /usr/local/lib/python3.10/dist-packages/torio/lib/_torio_ffmpeg4.so)
frame #5: + 0x32647 (0x787daab3a647 in /usr/local/lib/python3.10/dist-packages/torio/lib/_torio_ffmpeg4.so)
frame #11: + 0xf6bb (0x787e6014f6bb in /usr/local/lib/python3.10/dist-packages/torchaudio/lib/_torchaudio.so)
**how to resolve this**
i am executing !python train.py in colab with python 3.10 facing this issue
/content/svoice/train.py:115: UserWarning: The version_base parameter is not specified. Please specify a compatability version level, or None. Will assume defaults for version 1.1 @hydra.main(config_path="conf", config_name='config.yaml') /usr/local/lib/python3.10/dist-packages/hydra/_internal/defaults_list.py:251: UserWarning: In 'config.yaml': Defaults list is missing
_self_
. See https://hydra.cc/docs/1.2/upgrades/1.0_to_1.1/default_composition_order for more information warnings.warn(msg, UserWarning) /usr/local/lib/python3.10/dist-packages/hydra/_internal/defaults_list.py:415: UserWarning: In config.yaml: Invalid overriding of hydra/job_logging: Default list overrides requires 'override' keyword. See https://hydra.cc/docs/1.2/upgrades/1.0_to_1.1/defaults_list_override for more information.deprecation_warning(msg) /usr/local/lib/python3.10/dist-packages/hydra/_internal/defaults_list.py:415: UserWarning: In config.yaml: Invalid overriding of hydra/hydra_logging: Default list overrides requires 'override' keyword. See https://hydra.cc/docs/1.2/upgrades/1.0_to_1.1/defaults_list_override for more information.
deprecation_warning(msg) /usr/local/lib/python3.10/dist-packages/hydra/_internal/hydra.py:119: UserWarning: Future Hydra versions will no longer change working directory at job runtime by default. See https://hydra.cc/docs/1.2/upgrades/1.1_to_1.2/changes_to_job_working_dir/ for more information. ret = runjob( [2024-08-29 05:08:14,435][main][INFO] - For logs, checkpoints and samples check /content/svoice/outputs/exp [2024-08-29 05:08:17,107][main][INFO] - Running on host f914368da1f4 /usr/local/lib/python3.10/dist-packages/torch/utils/data/dataloader.py:557: UserWarning: This DataLoader will create 5 worker processes in total. Our suggested max number of worker in current system is 2, which is smaller than what this DataLoader is going to create. Please be aware that excessive worker creation might get DataLoader running slow or even freeze, lower the worker number to avoid potential slowness/freeze if necessary. warnings.warn(_create_warning_msg( [2024-08-29 05:08:18,078][svoice.solver][INFO] - ---------------------------------------------------------------------- [2024-08-29 05:08:18,078][svoice.solver][INFO] - Training... /usr/local/lib/python3.10/dist-packages/torch/utils/data/dataloader.py:557: UserWarning: This DataLoader will create 5 worker processes in total. Our suggested max number of worker in current system is 2, which is smaller than what this DataLoader is going to create. Please be aware that excessive worker creation might get DataLoader running slow or even freeze, lower the worker number to avoid potential slowness/freeze if necessary. warnings.warn(_create_warning_msg( [2024-08-29 05:08:18,234][main][ERROR] - Some error happened Traceback (most recent call last): File "/content/svoice/train.py", line 118, in main _main(args) File "/content/svoice/train.py", line 112, in _main run(args) File "/content/svoice/train.py", line 93, in run solver.train() File "/content/svoice/svoice/solver.py", line 122, in train train_loss = self._run_one_epoch(epoch) File "/content/svoice/svoice/solver.py", line 193, in _run_one_epoch for i, data in enumerate(logprog): File "/content/svoice/svoice/utils.py", line 115, in next value = next(self._iterator) File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/dataloader.py", line 630, in next data = self._next_data() File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/dataloader.py", line 1344, in _next_data return self._process_data(data) File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/dataloader.py", line 1370, in _process_data data.reraise() File "/usr/local/lib/python3.10/dist-packages/torch/_utils.py", line 706, in reraise raise exception RuntimeError: Caught RuntimeError in DataLoader worker process 0. Original Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/_utils/worker.py", line 309, in _worker_loop data = fetcher.fetch(index) # type: ignore[possibly-undefined] File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/_utils/fetch.py", line 52, in fetch data = [self.dataset[idx] for idx in possibly_batched_index] File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/_utils/fetch.py", line 52, in
data = [self.dataset[idx] for idx in possibly_batched_index]
File "/content/svoice/svoice/data/data.py", line 61, in getitem
mix_sig = self.mix_set[index]
File "/content/svoice/svoice/data/audio.py", line 77, in getitem
out = torchaudio.load(str(file), frame_offset=offset,
File "/usr/local/lib/python3.10/dist-packages/torchaudio/_backend/utils.py", line 205, in load
return backend.load(uri, frame_offset, num_frames, normalize, channels_first, format, buffer_size)
File "/usr/local/lib/python3.10/dist-packages/torchaudio/_backend/ffmpeg.py", line 297, in load
return load_audio(uri, frame_offset, num_frames, normalize, channels_first, format)
File "/usr/local/lib/python3.10/dist-packages/torchaudio/_backend/ffmpeg.py", line 88, in load_audio
s = torchaudio.io.StreamReader(src, format, None, buffer_size)
File "/usr/local/lib/python3.10/dist-packages/torio/io/_streaming_media_decoder.py", line 526, in init
self._be = ffmpeg_ext.StreamingMediaDecoder(os.path.normpath(src), format, option)
RuntimeError: Failed to open the input "debug/mix/2803-161169-0001_7976-110523-0004.wav" (No such file or directory).
Exception raised from get_input_format_context at /__w/audio/audio/pytorch/audio/src/libtorio/ffmpeg/stream_reader/stream_reader.cpp:42 (most recent call first):
frame #0: c10::Error::Error(c10::SourceLocation, std::string) + 0x96 (0x787df5aa0f86 in /usr/local/lib/python3.10/dist-packages/torch/lib/libc10.so)
frame #1: c10::detail::torchCheckFail(char const, char const, unsigned int, std::string const&) + 0x64 (0x787df5a4fd10 in /usr/local/lib/python3.10/dist-packages/torch/lib/libc10.so)
frame #2: + 0x41ff4 (0x787dc12faff4 in /usr/local/lib/python3.10/dist-packages/torio/lib/libtorio_ffmpeg4.so)
frame #3: torio::io::StreamingMediaDecoder::StreamingMediaDecoder(std::string const&, std::optional const&, std::optional<std::map<std::string, std::string, std::less, std::allocator<std::pair<std::string const, std::string> > > > const&) + 0x14 (0x787dc12fd9f4 in /usr/local/lib/python3.10/dist-packages/torio/lib/libtorio_ffmpeg4.so)
frame #4: + 0x3aa7e (0x787daab42a7e in /usr/local/lib/python3.10/dist-packages/torio/lib/_torio_ffmpeg4.so)
frame #5: + 0x32647 (0x787daab3a647 in /usr/local/lib/python3.10/dist-packages/torio/lib/_torio_ffmpeg4.so)