Great work!
I have been testing your software the last two days and it is great work!
Few things came to my mind:
- Could you explain in more detail how the calibration factor works? Through trial and error I figured that my standard calibration 1 Pa = 94 dBSPL = -23 dBFS is somehow 20.2. Bot why, I do not understand it.
- Could you describe the properties of the supported wav files? I found out it must be mono and 48 kHz works best.
- Is it possible to fetch the output data as a table? For some analysis I would like to plot it myself
- The signal.wav (woodpecker) is not available on Git anymore
- In some tutorials, the warnings of the console output have been copied into the tutorial
- When will tonality be included? I could not get it to work
If you need help or a tester... Let me know. Awesome work!
Hi!could you share us the method of getting standard calibration?thanks a lot!
Sure. I have created a 1kHz sine wave with peak level of 0 dBFS of 2 secs of length. Then I have plotted the SPL with this code:
import sys
sys.path.append('..')
from mosqito import COLORS
from mosqito.classes.Audio import Audio
analysisSignal = Audio(
"...",
calib=1,
)
analysisSignal.compute_level(nb_points=1000,start=0.0,stop=1)
analysisSignal.level.plot_2D_Data(
"time",
type_plot="curve",
color_list=COLORS,
)
I have increased the cal factor and found out that the following cal factors create these dBSPLs
1.0 = 91 dBSPL = 1kHz 0 dBFS 2.0 = 96.97 dBSPL = 1kHz 0 dBFS 3.0 = 100.5 dBSPL = 1kHz 0 dBFS 4.0 = 102.9 dBSPL = 1kHz 0 dBFS 5.0 = 104.97 dBSPL = 1kHz 0 dBFS 6.0 = 106.5 dBSPL = 1kHz 0 dBFS 7.0 = 107.83 dBSPL = 1kHz 0 dBFS 8.0 = 109 dBSPL = 1kHz 0 dBFS 9.0 = 110 dBSPL = 1kHz 0 dBFS 10.0 = 111 dBSPL = 1kHz 0 dBFS 11.0 = 111.8 dBSPL = 1kHz 0 dBFS 12.0 = 112.57 dBSPL = 1kHz 0 dBFS
Haven't really figured the function behind the cal factors, but it works for me.
Awesome!my dude!Appreciate for your help!
Happy to help
Hi, sorry for this shamefully late reply.
- [x] Concerning the calib factor. The data stored in a .wav signal are limited to values in the range [-1 : 1]. If you record a calibrated signal with a maximal amplitude of let say 3 Pascal, you're recording device will divide the signal by 3 to make it "fit" in the .wav format. When importing the signal in Mosqito, you will have to use calib = 3 to get a signal in Pascal rather then a signal between -1 and 1. If you are importing an acoustic signal in Pascal in .mat or .uff format, you can leave calib=1.
- [x] Normally any .wav file should work. It will be resampled to 48 kHz as requested by the ISO standard for loudness. There is currently a bug that cause trouble when loading stereo files, but it wll be resolved in a coming realease.
- [x] If you use the functions in the mosqito/functions folder, you can get the output as arrays to be able to plot them by yourself. You can check the "Mosqito as a function library" sections in the different tutorials.
- [x] Concerning the tutorials, I've made some architecture modification recently and have probably broken some links. I'll try to fix this soon.
- [ ] Tonality is a long story... we currently have an implementation of ECMA-74 appendix D but it is not fully validated. We plan to implement the smartest ECMA-418 psychoacoustic tonality, but we are lacking ressources. TO be honnest I cannot really give you a planing for this feature.
Sorry again for the delay. Any feedback is highly valuable for us !
Hello, I've just updated the code to propose a better description of the "calib" input parameter
- in the load function description
- in the signal basic operations tutorial
Hello Martin, thanks for your reply!
I think it is best to describe the calibration factor as "Pa/FS" (Pascal per full scale). This lets everyone recalibrate their thinking best, I suppose.
To give more exposure I decided to write a tutorial which can be found here: https://www.minidsp.com/applications/acoustic-measurements/psychoacoustic-measurements-with-mosqito
Will check the array functions for custom plotting!
Hello, I like the idea of having the calibration factor defined as "Pa/FS". I'll try to modify that in the next release.
Thanks for the tutorial, I hope that Mosqito can be usefull. Maybe you should wait just a little to check the custom plotting. I'm currently making a modification of the architecture of the project to make it easyer to understand. It will remove the Audio class. I'll keep you updated.
Hello, We have just made a new release that introduce a deep architecture rework. We hope it will simplify the use and contribution to the project. Unfortunately, i'm afraid that it has an impact on the tutorial you have published. Sorry for the inconvenience.
No worries. Will look into it in the next week.
hello,can we calculate the a-weight sound pressure now?
Hi Martin, I also wanted to point out that you are doing great work. As I read the question about tonality here: Do you have any new information about including psychoacoustic tonality?
Keep going and best wishes!
hello,can we calculate the a-weight sound pressure now?
Except the third octave band spectrum, there are no sound level meter functions available at this time.
Hi Martin, I also wanted to point out that you are doing great work. As I read the question about tonality here: Do you have any new information about including psychoacoustic tonality?
Keep going and best wishes!
Hi @An1712, Concerning the tonality, the Hearing model from ECMA 418-2 is now available and validated in MOSQITO. But the implementation of the ECMA 418-2 tonality itself is still to be done.