MasterEars icon indicating copy to clipboard operation
MasterEars copied to clipboard

Ideas for MasterEars

Open wolfkidsounds opened this issue 4 years ago • 3 comments

Dear Chow, this is a very nice project idea, that I do find very helpful!

I have put some thoughts into it for more "tests".

Advanced EQ

  • Frequency, Gain, Q, Filter Type, Multiple Bands
  • Resonance finder

Task Description: One would also be able to set up the above parameters and match them to the original.

Task Descirption: Boosting the highest peaks above 200Hz in an audio file with higher Q factor and creating resonances, making the user find these resonances and deciding on the filter type to use and/or how much to cut this frequency so it is in balance again.

General EQ Section: I think it would be nicer to have a virtual interactable EQ that you could pick the frequency inside (with a specific amount of error range). When using additional features (Frequency + Gain + Q) the first left click would set the first parameter, drag up/down would increase/decrease the gain while draging left/right would decrease/increase the Q factor. right clicking would remove the last step (the last frequency point?) If one is done, hitting enter checks the input.


Stereofield

  • Test on how far Left/Right a sound is (or how far apart).
  • Also Mid/Side levels could be interesting too, however, I don't have a real idea on that so far.

Task Description: One would listen to an original and then a manipulated version and can then decide via a bar/stereo-triangle type slider how far the signal is on the left or the right.


Compression

  • How heavy a signal is compressed.
  • Compression settings too maybe (Attack, Release, Soft Knee)

Task Description: One listens to the original and then to a more compressed version. We can set up a very basic compressor (threshold) to choose how much compression was applied. In an advanced version, one could also dial in attack and release settings.

I have thought about the cytomic glue compressor here as a reference, since there are set amounts of attack and release.

The same concept could be applied to limiting/clipping.


Stems

  • Maybe an add-on of importing stems or using "spleeter" to create some (4-6stems should be enough)

Task Description: One listens to all stems at 0dB offset. After that, all stems will have a random offset and they need to get re-balanced to match the original. To avoid volume bias, this could happen in "relative" amounts to the original. So if you have the offsets correct, but all faders are 1dB of equally, it would still be correct, but quieter.


  • General dB Offsets

Task Description: One would listen to the original file and then to a version that is offset by a few dB, one would have to choose the offset amount.


Distortion and Saturation

  • Distortion (the type of distortion)
  • Distortion (amounts)

Task Description: One would listen to a distortion manipulated file and decide for the type and the amount of distortion and maybe dial it in by yourself. This could happen through a drop-down (for type) and simple slider/dial for the amount.


Even More Ideas

  • In general, I think a real-time A/B comparison would be nice (Original/Modified).
  • It would be cool to load multiple songs and then have the software randomly select one of the files as optional feature (or to choose a folder).
  • The different "Tests" could be seperated by using tabs in the ui and to have a folder/sound selection int he beginning with seperate folder selection for the stem files (or to have the software create stems from "spleeter").
  • A general randomization option to make the test have easier difficulty "easy, normal, hard" increasing the amount of paramaters and variation, and still have deeper customization using like an "advanced" button after this setting.
  • A pictured explanation of what each parameter does and "what to listen for" (Example would be Bitwig Studios help sections inside the software itself). Example: "Compressor Attack -> Increase this value lets the transient through (technical explanation), this can have the effect of sounds having more attack and being more clicky (non-technical explanation).
  • Button Labels, the "times to do the challenge button" is not really obvious.
  • Show results instantly after entering the test result for the current one.
  • Better scoring. If i select 500Hz while filter is at 8kHz I should get 0 points if 10 is the maximum. However if I would have selected 5kHz the score could be already at 5-6 points.

UI Improvements

  • Countdown after hitting start
  • Removing the "Play" Button and replacing it with a "mute" button next to the settings icon.
  • Replacing the "play" button with an A/B module and removing the "Filter Active" checkbox
  • Replacing the "waveform" with an interactive UI element for the "game/test" itself for every type of game.
  • moving the "quit" button to the bottom right and maybe use a "back" icon since it does not quit the application.
  • rename the "next" button to "start"

Otherwise thanks for this cool little software, this could be very usefull also for teaching students frequencies. 👍 Keep it up, also with your current plugins, ChowTape is really unique!

wolfkidsounds avatar Jan 15 '21 03:01 wolfkidsounds

Hi @wolfkidsounds, thanks for all the great ideas!

Unfortunately, I don't have a ton of time to work on this software these days, but I'll try to outline some thoughts on these ideas.

I think in general, I'd like to have tests with a few simple choices that the person has to make. This makes it easier to "score" the test results, and for the person to feel like they're making progress.

Advanced EQ

I like the idea of having resonances that the user has to find the frequencies of, and maybe choose the correct gain to "correct" the resonance. This is somewhat to the test that is already happening, but I guess in your idea the frequency would be a continuous value to choose?

I think having a multi-band parameteric EQ would be a really difficult test! I'm sure it's possible to create, but I feel like it might be too difficult of a test for me. Do you think more skilled engineers would be able to do this with some accuracy?

Stereo Field

I like this idea! I think that rather than a continuous slider, I'd like to have 9-10 discrete angles that the user can select from. I also would like to let the user choose a pan-law to use at the beginning of the test (for example, a constant-gain, or a constant-power pan law).

Compression

I think the best way to do this in a measureable way is to have the user guess the crest factor of the compressed signal. The main difficulty is that the amount of compression will depend alot on the audio file that the user chooses to use for the test.

Stems and dB Offset

I like these ideas, I just think it would be best to keep the gain values in increments of 2-3 dB. Spleeter would be a neat feature too, although it might be tricky to integrate.

Distortion

This is a great idea! Again, I think it might be best to have the distortion amount be a "stepped" slider to make life a little easier for the users.


Since I don't have much time to work on this project, is this something that you would be interested in contributing to? I'd be happy to help walk you through the code to get you started.

jatinchowdhury18 avatar Jan 17 '21 02:01 jatinchowdhury18

Hey @jatinchowdhury18

Yes these are some great starting points. In general I think most engineers are able to pick a general "area" of frequencies. Maybe not have a fully functional EQ but still the general overlay with areas "marked"? Like most of the frequency sheets have. - I would consider this with a basic "difficulty" feature too (in general for all tests).

With the dB offset/EQ I know some engineers being able to differentiate 0.5dB changes (maybe even higher). I for myself have found that 1-2dB is really the maximum difference I can hear.

I really like the rest of your ideas better, because it is still easy enough for beginners but still advanced enough so proper engineers could develop even further.

I would really like to help you, but I am not skilled at C++, like I haven't even touched it ever. However, I would like to learn the programming language to contribute, but I am not sure on how far I would come during this project. Since it involves some DSP too. - I am still very interested in learning C++ and code on this project with you. - If you have any resources I could gather knowledge from and learn C++ I would be really happy to know!

Thanks for still replying to this older repository. Keep it up! :)

wolfkidsounds avatar Jan 20 '21 16:01 wolfkidsounds

@wolfkidsounds,

Glad you like the ideas! I think this actually could be a neat project to work on to help learn C++. Would you be willing to chat about this over a call sometime? Feel free to email me at jatin_at_ccrma.stanford.edu, maybe we can work something out!

jatinchowdhury18 avatar Jan 22 '21 04:01 jatinchowdhury18