introlab / odas

ODAS: Open embeddeD Audition System
MIT License
802 stars 254 forks source link

strange audio recordings #112

Closed kimchi88 closed 5 years ago

kimchi88 commented 6 years ago

Dear Odas team, I am playig around with your tool using a virtual machine running Ubuntu 18 and the last available version in GitHub of Odas and Odas-web. My Microphone is a ReSpeaker Mic Array v2.0. Firmware is the 6 channel one. My experiment is set up with the Respeaker in the middle and two persons talking independently from the opposite sides of the ReSpeaker at a distance of about 2 meters from the microphone (about 4 meters distance between the two people). The recording is pretty strange. here in attached you can find the recordings + my configuration file. Any suggestion to improve?

Thanks for your help!

odasmy.zip ODAS_test.zip

FrancoisGrondin commented 6 years ago

Hi,

I listened to your samples. This is indeed quite strange. Have you listen to the raw audio recorded by each channel? Can you tell me if you get the same distortion?

kimchi88 commented 6 years ago

Hi, Using Audacity it seems ok. Here in attached a six channels record. 6ChRecTest.zip

Maybe I am doing something wrong since I don't know exactly how to tune the recording in Odas-web. Could you give me more info about how the recording GUI works? Like when it actually starts to record? how it decides when to start and stop a single file? what does the "determine if separated audio is recorded" check-button does? Any help is appreciated. I really like your project and I would like to going on testing and using it.

Thanks!

FrancoisGrondin commented 6 years ago

Hi,

Let me have @GodCed here for the GUI part. The RAW files seem indeed ok. Please try the following config for the separation and tell me if you still have the same artifacts:

mode_sep = "dds";

Thanks

GodCed commented 6 years ago

@kimchi88 I suggest you take a look at this part of the ODAS Studio documentation for more information about the recording GUI.

Like when it actually starts to record? how it decides when to start and stop a single file? It starts and stops according to ODAS tracking. When a tracked source appears, recording starts. When it disappears, recording stops. A file is created for each tracked sources, named after the timestamp, the ODAS source ID and the audio stream (postfiltered _pf or separated _sp).

what does the "determine if separated audio is recorded" check-button does? It enables recording. When checked, recording starts when a source appears. Existing sources at the time of checking are not recorded. When unchecked, current recordings are stopped and no new one will start.

GodCed commented 6 years ago

For easier debugging, I suggest you use ODAS to record directly your results to WAV files instead of trough ODAS Studio to help identify wether the issue comes from ODAS or ODAS Studio.

kimchi88 commented 6 years ago

@FrancoisGrondin using the setting you suggested the recording seems to be improved. Still, many pieces of record are distorted. Could this be related to the massive amount of CPU usage required by ODAS-Web? It is always close to 100%.

@GodCed if I use odas from the command line without have odas-web opened, I get the following error:

./odaslive -v -c /home/fse/usb_4_mic_array/odasmy.cfg +--------------------------------------------+ | ODAS (Open embeddeD Audition System) | +--------------------------------------------+ | Author: Francois Grondin | | Email: francois.grondin2@usherbrooke.ca | | Website: introlab.3it.usherbrooke.ca | | Version: 1.0 | +--------------------------------------------+ | + Initializing configurations...... [Done] | | + Initializing objects............. [Done] | | + Launch threads................... Sink pots: Cannot connect to server Sink tracks: Cannot connect to server

If I try to launch the script ./odasserver doesn't do anything. Is there any other way to launch odas without odas-web?

Thanks for the help

GodCed commented 6 years ago

@kimchi88 you need to adjust the interfaces in the ODAS configuration file. I suggest you use:

ssl format = "undefined" type = "blackhole"

sst format = "json" type = "terminal"

separated type = "file" path = "separated.raw"

post-filtered type = "file" path = "postfiltered.raw"

This should give you tracked source display in the terminal, while saving the processed audio. You'll be able to import the raw PCM audio in audacity and listen to each channel (separated source).

kimchi88 commented 6 years ago

Hi, I attach here my recordings together with the compiled odas and the configuration file. They are pretty bad. I've noticed that if I open them in audacity using the dame settings of the odas configuration file (16 bit and 16000Hz) it sounds like the frequency is too high.

bin.zip

Any other suggestions?

Thanks

GodCed commented 6 years ago

Hi, I imported your raw output in audacity and it sounds allright. I used those settings:

image

Did you specify 4 channels (one per tracked source)? That would be my guess.

gloriafer18 commented 5 years ago

Hi, I configured ODAS (Core and web). I was able to see the visualisation (remotely). I was working with a Matrix-voice (8 microphone array) and a Raspberry 2. After trying to configure so many times I still have a strange effect in the recorded files, when I open them by using Audacity or other software (Switch) to open RAW data, the audio sound very fast. Most of the information on internet suggest to configure the same Frequency when recording to open the file, but I can not make it work. I attached my configuration file. Might be you could tell me what is wrong with it? I also attached the audio I recorded by using ODAS.

FilesODASMatrixVoice.zip

Any comment could be very helpful. Thanks

I want to do something similar like @chad1023 Did you succeed in doing it?

GodCed commented 5 years ago

Using those settings in Audacity, which are the same as in my previous answer, it sounds alright.

image

You'll want:

gloriafer18 commented 5 years ago

Thanks! sorry, I was setting 8 channels each time I open the file. But, by using 4 channels it works properly. :)

GodCed commented 5 years ago

Glad it's solved!