News for hackers. Stuff that matters.

dsmurrell

Fair point! I will consider optimising if this sees use.
> This is probably a bit outside your scope, but in the german song “An Tagen wie diesen, Die Toten Hosen” some (final) syllables get cut off, and sometimes the bars go down even though the melody goes up (or are the notes transposed an octave when they no longer fit within the scale?).

I've added language support to both the site and the app... German syllables are now counted by German rules.

I've added some language support both in app and on the site. See the latest version https://singonkey.app
As promised:

I'm asking people to test some Window and Linux previews that I have here: https://github.com/dsmurrell/onkey/issues/1#issuecomment-655...

I'm asking people to test some Window and Linux previews that I have here: https://github.com/dsmurrell/onkey/issues/1#issuecomment-655...

I'd be interested to see how it does on instruments. I've not had the bandwidth to try myself.

In case you missed the ping on GitHub, I'm asking people to test some Windows and Linux previews that I have here: https://github.com/dsmurrell/onkey/issues/1#issuecomment-655...

The more the merrier!

I've added a Beyond Pitch section to the site: https://singonkey.app/docs/beyond-pitch

Let me know what features could move the app towards a more rounded tool for singing training!

I've added links to these two in a new Beyond Pitch section of the site: https://singonkey.app/docs/beyond-pitch

Thanks for mentioning these!

0.2.0 is also out now https://singonkey.app/changelog

Looked into transposition and I think it's going to be challenging considering that OnKey doesn't play the music. I have built in a range finder in the new version which picks up your singing range based on your performance and then you can filter songs in your library by your range. Let me know what you think of it.

New version should install on a restart.

Just added some harsher scoring modes in 0.2.0 (if you restart you should get them), and I considered your comment here while adding this, so thanks!
Pushed a 0.2.0 version with a 'Relaxed' (current scoring mode), and a new 'Steady', and 'Pro' scoring modes which are harsher. Scoring is done in all three so switching them you see the score for the mode you've picked over all takes.
Just added this in 0.2.0 which a restart should install for you.

You do it on the take page (from the History tab) when the song is playing back so that next time you sing it it's not there. Let me know if it works for you.

In 0.2.0 (just pushed) I've added scoring modes 'Relaxed', 'Steady', and 'Pro' which you can change at any time and have all songs show the score for that mode.
Let me know if this is fixed in the new version I just released.
Building in a range finder now, and a filter for the songs in your range.

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.

OnKey already ignores octaves.
It handles some mild vibrato because it's quite lenient on scoring you and if you're off pitch a bit you get full score: https://singonkey.app/docs/scoring

I'll bear this in mind though when I add the harsher scoring modes.

Sure. I'll let you know when I make a start on that one, if you make a start first, let me know!
I have thought about this for my children who I find hard to understand sometimes :) I'm not sure what the right approach is here, I have some ideas but I'd have to test them to see if they work out.
I love that you love this!
Will do, check out https://github.com/dsmurrell/onkey/issues/1 to register your interest in other platforms. Need to test feasibility.
Thank you, I'll take a look.
Thank you.

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.

Thanks!

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.

The scoring is overly lenient at the moment. If I added a few new modes for how harshly someone is scored, I'd add harsher modes.

> 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.

Thanks, will check these out!
Makes sense! You can enable mini mode (top right) so that you can sing without the pitch track and program at the same time :D... then listen back to your take along with the original and see how you're tracking score wise.
The Mac only parts are in https://github.com/dsmurrell/onkey/tree/main/src-tauri/nativ.... I believe that Linux would need PipeWire and MPRIS in their place.

> 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.

Agreed, but if you're singing to the song, then you'd have to match the vocal pitch of the singer otherwise there would be a clash.

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.

Older »