Looking forward to seeing you tackle this project! I'm using a Jamstik MIDI guitar mostly atm but always interested in other approaches =D
@tarnavbhasin11368 ай бұрын
Bro this is really cool. Please release the code for this
@antonijankowski33793 жыл бұрын
So this is my take on onset detection. My goal was to find onsets generated with staccato technique and.. I think I made it! What do you think? Do you have any solutions for this problem? And yes, I know I butchered the ending, but it was too late already when I saw how awful it was :(
@thebigVLOG3 жыл бұрын
Great video! Could you please provide the reference paper/book you used to generate the amplitude envelope?
@antonijankowski33793 жыл бұрын
Hi! I think I actually came up with the method mostly myself. I used the information about sound frequency extracted from enhanced auto correlation (EAC) - simple algorithm by Terro Tolonen and Matti Karjalainen. Look for "A Computationally Efficient Multipitch Analysis Model". This part helped me find the highest peak in given set of samples. Knowing the frequency I could specify the length of window of interest. That's about it. I don't think that's the best possible way to create amplitude envelope and still plan to enhance this part in the future. I bet there are more clever people than me that have this already figured out.
@thebigVLOG3 жыл бұрын
@@antonijankowski3379 Thanks for the swift response, I plan on reading that paper tomorrow, hopefully I get something similar working. I look forward to your future projects, subscribed.
@kamilsliw199413 жыл бұрын
Funny, I'm about to start learning Python myself. The algorithm seems to be working well! How would you account for differences in gain? Most interfaces, recorders, etc. have a good noise floor, but what would be an optimal gain stage range? I'm sure that if this were eventually made into a sellable product, some newb would clip the gain going in and destroy any transient/attack in the process. What would be the best way to expand on the algorithm to improve on transient recognition with an audio source that has none? Would you sample clipped audio and just tell it that it's a matter of an amplitude difference? Is this where the frequency analysis would come in more handy (to recognize frequencies that occur during pick attack)?
@antonijankowski33793 жыл бұрын
These are good questions! I think it's beneficial for all signal transcription systems to start with a high quality input. If not, than I suppose the frequency domain based methods could save the day, although I guess not entirely. I'm not yet an expert in this field, I'll tell you more when I find out more. As mentioned in the video I think implementing frequency domain based methods alongside the time domain ones is the golden solution that could recognize the staccato technique as well as legato and slides. So to rely on only one of these is a huge decrease of the system functionality and quality of its output from the start.
@MatthewKanwisher2 жыл бұрын
You going to release any of this code ?
@antonijankowski33792 жыл бұрын
I was going to, unfortunately over the last year I haven’t progressed much. The project is on hold for now, I’m planning to go back to it one day, maybe in a bit of a different form - DSP with a flavor of machine learning.
@ArielAr3 жыл бұрын
"I'll just move on to another project" -> what do you mean with that ?
@antonijankowski33793 жыл бұрын
I meant another part of this Guitar 2 MIDI Converter project. Don’t worry, I’m not going anywhere, it’s just that each of these steps is a project of its own - that’s what I had on my mind. And in the next one I’ll probably talk about frequency spectrum based onset detection methods. Btw, thanks for watching! If you don’t mind please share this Video, it means a lot!
@antonijankowski33793 жыл бұрын
Ariel for some reason I can’t see your comments. I get updates that you commented on my video but can’t see the comment itself. Anyway, I’m reading the “Fast and Efficient Pitch Detection: Power of Two” article right now, thanks for letting me know about that one, this seems to be very helpful.