Transposition is difficult if OnKey isn't playing the song itself... maybe if it allows you to play your own mp3s later, then it could be done.
275 karma · joined February 2, 2016
Transposition is difficult if OnKey isn't playing the song itself... maybe if it allows you to play your own mp3s later, then it could be done.
I'll bear this in mind though when I add the harsher scoring modes.
I suspected that extracting played notes out of songs might be more difficult than vocals, but my agent is telling me that it might be possible given its context around the models the app is currently using. I'll experiment with this.
It might only work for single note instruments.
OnKey only listens to what you play through your other apps, then it uses what it's heard to learn the notes and then discards the song and never saves it to disk.
This means that you need to let it listen to the song the first time it plays. You can sing to that song blind (no pitch track) and it will still score you at the end.
What I do is let it listen while a playlist plays through, then when I re-listen it lines up the pitch track with the music as it plays through my music source again.
IANAL, but I think that by listening to the music that people already have access to through their subscriptions, not distributing any music, lyrics, or learned melodies i.e. keeping everything for personal use only (see https://github.com/dsmurrell/onkey#using-onkey-fairly), rights aren't required.
I might do the ranking thing later but this brings some form of centralisation to the project which it currently doesn't have, and I haven't worked out how to stop people gaming that.
> and in a very monotone way
You should hear me speak, people start yawning :)
OnKey intentionally ignores octaves when scoring so that you can sing inside of your range without straining your voice.
> One of my methods for my pet projects is just to wait for someone else to do it, worked this time :)
Happy to be of service!
PRs welcome.
Some other singing apps allow you to transpose the entire song but it's easy for them because they play the music. In OnKey's case, it would have to silence the music from the player then replay it shifted up or down. So this might be possible, I'd have to do some experimentation.
Credits for the libs I used are here: https://singonkey.app/docs/credits
But find it hard to sing to as I don't speak Brazilian Portuguese so it's hard to match the words.
I will ask my friend if it works for him as he speaks the language.
> why is it using webview/tauri?
Using these makes it easier to port to the other platforms later if I choose to.
About 365 of the 420 MB is the AI models which I decided to bundle so that the app wouldn't have to download additional things after the install.
My agent tells me that writing in native Swift would save (estimate) about 100–170 MB, out of about 1.4 GB when the models are active. And then I'd have to maintain the interface in two or three ways if I decided to make versions for other platforms.
If it does grow though and there are a lot of Mac users, this might be worth it though as you suggest. But I have a lot of project that go precisely nowhere so I always keep this in mind :)
Got it! If anything, it's on beginner level right now and is very forgiving and I need to add maybe two levels above it with pro being at the top. Let me know if you think it needs something even more forgiving than how it works currently and I can try to build that in as a 4th level.
> I had somehow expected a large search bar in the app that I could use aside from the music suggestions to get started.
Yeah, the app relies on you finding the music in the way you normally do in your music players, I'll try and make this clearer. Once you have a few songs in your library however, then you can use that to navigate through them or search them up by difficulty and play them.
> Even though I hadn’t set up Spotify (it wasn’t even displayed), it was still enabled in the settings.
Thanks, will check that out.
> or are the notes transposed an octave when they no longer fit within the scale?
Do you mean this... Now and then a note bar is drawn an octave off its neighbours. The cause is the note model (GAME) choosing the wrong octave for that note. It happens most on pop with heavy backing, where a backing vocal or instrument sits an octave away. I've tried to fix, but the evals get worse so I've not managed to fix that issue yet.
There are definitely some issues I haven't been able to solve yet and it creates terrible pitch tracks for some songs. I have an eval set that I'm optimising through changes so hopefully it gets better over time. It might be at the limits of what's possible with the vocal separation, but I'm hoping that it can get better than it is right now with time and effort.
If you yourself sing an octave above or below, it will draw adjust and score you as on key.
> That's for now, I’ll keep an eye on the project and create issues if my observations become more consistent.
Thank you!
And you can track your scores over the takes you did of a sing in your history. So I think OnKey has you covered on these.
Let me know if it matches what you expect when you try it out.
It's got 3 thumbs up but no indication of which OS they're from... maybe I need two issues.
I'd definitely still let Shaquille O'Neal show me how to shoot threes. Dunking on the other hand could be an issue.
I'm terrible at detecting sarcasm usually, but this one was easy for me.
Yes, this was me. My confidence has improved through practise to a point where it only half killed me to post that demo video. My family still ask me to relocate when I'm doing this around them... so I think you can hit the pitches and still not sound amazing.
Unfortunately, the way it works, and to avoid any copyright issues, it can't really operate on phones because you can't listen to other apps on them. Maybe the only way is to share your learnt pitch tracks (trained on the laptop) with a mobile companion app.