0
13

[–] onegin 0 points 13 points (+13|-0) ago 

Good on you for documenting and giving concrete examples of the limitations of the software on the homepage. Looks like a valuable tool for some use-cases.

0
1

[–] AreWeHuman 0 points 1 points (+1|-0) ago 

I feel like a lot more developers/companies that sell software should be this honest. It's definitely a plus in my book.

0
1

[–] WhiteRonin 0 points 1 points (+1|-0) ago 

Agree. Too many companies sell you on pretty GUI and some functionality yet skip over cases where their software just doesn't perform as well or as well as the sales make it seem like it would.

0
4

[–] antiplebbitor 0 points 4 points (+4|-0) ago 

Awesome concept.

I've been wanting something similar to this for a long time.

Imagine a world in which even composition can be available to anyone, simply based on sound rather than theory. Decentralization of composition is at hand. Well done!

0
3

[–] atat 0 points 3 points (+3|-0) ago 

... what kind of magic is this ...

Man, this is absolutely amazing! I guess this is how (approx) Shazam and co works.

So, if each of these "notes" could be treated as entry in what used to be a .MOD or MIDI files, but I believe you would need to create a library of sounds for the latter. Hello old-new compression tech ?

0
2

[–] BB-3 0 points 2 points (+2|-0) ago 

This seems like it'd be particularly useful for songwriters, since you could just play the music and have the program write it down for you, to clean up and otherwise adjust later.

0
2

[–] jimmyrussel 0 points 2 points (+2|-0) ago  (edited ago)

I had been looking into music transcription a while back when toying with MATLAB back in the day, but simply didn't have the appropriate programming skills to use another language that would compile to something more user friendly.

What did you use to make this programs, what sort of libraries/extensions? Also, as far as algorithms go, what's the general flow of it? Read in the input and break it into the frequency domain and use visual tools to map them to the spectrograph? Feel free to not answer (or keep things simplified without detail) to protect your IP.

Finally, what's next for your project? Music transcription directly to music writing software like Sibelius or whatever composition programs people are using nowadays to make musical arrangements? Or are you looking to enter that space for yourself?

0
3

[–] AnthemScore [S] 0 points 3 points (+3|-0) ago  (edited ago)

I developed the algorithms in python, which is great for fast, iterative development. Then I re-wrote it all in C++, using Qt to decode audio, but I didn't use any 3rd party libraries on the algorithm side. The spectrogram is a variation on the Constant-Q transform (Brown, 1991), so instead of the Fourier transform, which has linearly spaced frequency bins, the frequencies are spaced exponentially, like the human ear. Finding the notes from the spectrogram is surprisingly challenging, given how easy it is to pick them out using your eyes and brain, and obviously there's still a lot of room for improvement on that side.

I tried to integrate it with MuseScore notation software. If the user has that installed on their machine, it will open the result in MuseScore. In the future I'd like to improve the accuracy of the note detection part. That's the area that could use the biggest improvement.

0
1

[–] iamrage 0 points 1 points (+1|-0) ago 

Just curious, would this work with SoundCloud? https://developers.soundcloud.com/docs/api/guide#playing

0
0

[–] jimmyrussel 0 points 0 points (+0|-0) ago 

Interesting, I have to say I'd never heard of the Constant-Q, I'll have to read up on it. I ran into similar issues trying to translate frequency to notes. It's definitely ambitious as a project and I'll be keeping tabs on it. Good luck.

0
1

[–] Wedge38 0 points 1 points (+1|-0) ago 

This is pretty sweet. I appreciate the work you put into this.

0
1

[–] meatspun 0 points 1 points (+1|-0) ago 

Can't wait to see the next version of this thing after you tweak it more. Cool knowing something like this is being made.

0
0

[–] vinay02 0 points 0 points (+0|-0) ago 

you are genius

load more comments ▼ (4 remaining)