Comments (7)
Hello and thanks for the question. Can you check that the dataset was able to find the rirs? Please run the code below and let me know the result. I've pasted the output when I run it on my machine.
import zoo.aec.aec as aec
dset = aec.MSFTAECDataset_RIR(mode="test", double_talk=False, scene_change=False)
print(f"Num. RIRs Found:{len(dset.rirs)} -- First RIR {dset.rirs[0]} -- Last RIR {dset.rirs[-1]}")
# The output
# Num. RIRs Found:500 -- First RIR /mnt/data/AEC/RIRS_NOISES/simulated_rirs/mediumroom/Room040/Room040-00054.wav -- Last RIR /mnt/data/AEC/RIRS_NOISES/simulated_rirs/largeroom/Room118/Room118-00017.wav
from metaaf.
hi @jmcasebeer thanks for responding.
Python 3.7.16 (default, Jan 17 2023, 22:20:44)
[GCC 11.2.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import zoo.aec.aec as aec
>>> dset = aec.MSFTAECDataset_RIR(mode="test", double_talk=False, scene_change=False)
>>> print(f"Num. RIRs Found:{len(dset.rirs)} -- First RIR {dset.rirs[0]} -- Last RIR {dset.rirs[-1]}")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list index out of range
>>> dset.rirs
[]
>>> dset.__dict__
{'farend_speech_dir': '/home/username/personal/dataset/AEC-Challenge/datasets/synthetic/farend_speech', 'nearend_speech_dir': '/home/username/personal/dataset/AEC-Challenge/datasets/synthetic/nearend_speech', 'double_talk': False, 'scene_change': False, 'random_roll': False, 'max_len': 160000, 'rir_len': None, 'rirs': [], 'mode': 'test', 'offset': 0}
from metaaf.
Looks like the dataset isn't finding the RIRs. Can you check that they're unzipped and inside /home/username/personal/rirs_noises/RIRS_NOISES/
?
The dataset grabs all the file names via:
import os
import glob2
RIR_DATA_DIR = "/home/username/personal/rirs_noises/RIRS_NOISES/"
rir_dir = os.path.join(RIR_DATA_DIR, "simulated_rirs/")
rirs = glob2.glob(rir_dir + "/**/*.wav")
from metaaf.
Python 3.7.16 (default, Jan 17 2023, 22:20:44)
[GCC 11.2.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> import glob2
>>> RIR_DATA_DIR = "/home/username/personal/dataset/rirs_noises/RIRS_NOISES/"
>>> rir_dir = os.path.join(RIR_DATA_DIR, "simulated_rirs/")
>>> rirs = glob2.glob(rir_dir + "/**/*.wav")
>>> rirs
['/home/username/personal/dataset/rirs_noises/RIRS_NOISES/simulated_rirs/largeroom/Room030/Room030-00032.wav', '/home/username/personal/dataset/rirs_noises/RIRS_NOISES/simulated_rirs/largeroom/Room030/Room030-00088.wav',
.
.
]
from metaaf.
Could you check that the path was correctly set in the config file? Looks like your data is setup right. You could also try manually passing in the RIR_DATA_DIR directly to the dataset.
from zoo.__config__ import RIR_DATA_DIR
print(RIR_DATA_DIR)
import zoo.aec.aec as aec
dset = aec.MSFTAECDataset_RIR(rir_dir="/home/username/personal/dataset/rirs_noises/RIRS_NOISES/", mode="test", double_talk=False, scene_change=False)
print(f"Num. RIRs Found:{len(dset.rirs)} -- First RIR {dset.rirs[0]} -- Last RIR {dset.rirs[-1]}")
from metaaf.
Python 3.7.16 (default, Jan 17 2023, 22:20:44)
[GCC 11.2.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import zoo.aec.aec as aec
>>> from zoo.__config__ import RIR_DATA_DIR
>>> print(RIR_DATA_DIR)
/home/username/personal/dataset/rirs_noises/RIRS_NOISES/
>>> dset = aec.MSFTAECDataset_RIR(rir_dir="/home/username/personal/dataset/rirs_noises/RIRS_NOISES/", mode="test", double_talk=False, scene_change=False)
>>> print(f"Num. RIRs Found:{len(dset.rirs)} -- First RIR {dset.rirs[0]} -- Last RIR {dset.rirs[-1]}")
Num. RIRs Found:500 -- First RIR /home/username/personal/dataset/rirs_noises/RIRS_NOISES/simulated_rirs/largeroom/Room198/Room198-00030.wav -- Last RIR /home/username/personal/dataset/rirs_noises/RIRS_NOISES/simulated_rirs/smallroom/Room116/Room116-00081.wav
not sure why it's not populated properly when running the aec_eval.py
but I right now manually put the rir_dir
as the keyword when it instantiate the dataset object. And it works. thanks
aec.MSFTAECDataset_RIR(
rir_dir="/home/username/personal/dataset/rirs_noises/RIRS_NOISES/",
mode="test",
double_talk=False,
scene_change=False,
random_roll=kwargs["random_roll"],
rir_len=eval_kwargs["true_rir_len"],
)
from metaaf.
Glad it works. You may also want to try the 1.0.1 models -- they should be better.
from metaaf.
Related Issues (13)
- when running system.infer in AEC task, shows ValueError: 'TimeChanCoupledGRU ...' HOT 3
- You must pass a non-None PRNGKey to init and/or apply if you make use of random numbers when running hoaec_eval.py HOT 1
- some module l can't find ,help me HOT 2
- This module was my last hurdle, I searched for a long time without finding it, and when I ran core.py. HOT 1
- I've got a few ideas. HOT 3
- Inference question HOT 1
- Why not use nearend speech s to be the target ? HOT 2
- Compatibility with x64 CPU HOT 2
- with retrieved shape (4, 32) does not match shape=[5, 32] dtype=dtype('complex64') HOT 5
- About the pre-trained models. HOT 1
- Could not get the same AEC results shown on the demo page with the provided pretrained models HOT 8
- AEC Data Setup Issues HOT 9
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from metaaf.