News for hackers. Stuff that matters.
Re:Show HN: A guitar tab viewer that listens by rodw on Tuesday December 10, 2019 @07:58AM (#21751989)
Hi everyone. I'd like to introduce you to a side project I've been working on for a little while now.

FATpick (https://www.fatpick.com/) is a practice tool for guitar (and bass) that helps you learn to play new songs, improve your skills and stay motivated to keep playing. It's an auto-scrolling tablature viewer, synchronized with backing tracks, that listens as you play along with any guitar, providing immediate feedback on your accuracy and timing.

FATpick will eventually be much more than that - there are a lot of directions to take this in - but even with this more modest scope this M(+)VP release is useful, cohesive and hopefully compelling in and of itself.

A couple of things that might be interesting to HN: (1) So far this has been a bootstrapped, solo effort; but it won't necessarily stay that way. (2) The current Windows and Mac apps are built with Electron; but they won't necessarily stay that way either. I'd be happy to discuss any of that if you are interested.

A direct link to the downloads page is here: https://www.fatpick.com/support/downloads#get-fatpick

You can find a brief (and silent) video of the app in action on either of the pages linked above.

I'd love your feedback on any part of this, but I'd especially appreciate it if you can give the app a try.

Re:Show HN: A guitar tab viewer that listens by jfk13 on Tuesday December 10, 2019 @05:06PM (#21757383)
I spent a while trying to figure out if this was free (not just to download, but to use fully) or would require some kind of paid account. Maybe you could make that clearer?
Re:Show HN: A guitar tab viewer that listens by rodw on Tuesday December 10, 2019 @05:27PM (#21757563)
That's great feedback, thanks.

To clarify: it is totally free to download and use right now and will continue to be for at least several months. Eventually payment will be required, probably in the form of a subscription plan.

Re:Show HN: A guitar tab viewer that listens by exDM69 on Wednesday December 11, 2019 @05:13AM (#21761104)
If your business model is a subscription plan, you're putting yourself in a market with established competitors that have much higher quality (right now) software and content.

You really oughta do the math, consider how many subscribers you might be able to attain and how much to charge and whether that makes your ends meet.

You've probably already considered the licensing fees of the sheet music and/or background audio. Just getting into a discussion with the copyright holders is going to be an uphill battle when you're not the first mover in the field.

All the best to your project, I might give it a try later.

Re:Show HN: A guitar tab viewer that listens by scoutt on Wednesday December 11, 2019 @03:10AM (#21760543)
> subscription plan

Please reconsider this. If this is a local app, then I see no reason for adopting a subscription plan.

I am interested, but right now guitar is a hobby I can afford only a couple of times a week. Paying a subscription would have a different impact on, who like me, is an occasional player.

Otherwise I can stick with Guitar Pro for eternity.

Re:Show HN: A guitar tab viewer that listens by rodw on Wednesday December 11, 2019 @04:25AM (#21760898)
Guitar Pro's list price is more than the likely cost of an annual subscription to FATpick.
Re:Show HN: A guitar tab viewer that listens by jeswin on Wednesday December 11, 2019 @04:40AM (#21760963)
I do all my graphics editing with a Fireworks CS4, bought ten years back. I use it rarely, so the one time payment worked wonders. In almost every way I prefer apps that I completely own - especially if it's locally installed. And I'd be willing to pay a higher price upfront if there was such an option.

Note: I am not saying that your annual plan would be overpriced or unaffordable.

Re:Show HN: A guitar tab viewer that listens by rodw on Wednesday December 11, 2019 @05:13AM (#21761107)
I appreciate your input. It's worth some thought.

Just to be clear FATpick is not strictly a local app. It's more like a fat client - a local app that depends on part on services in the cloud.

Re:Show HN: A guitar tab viewer that listens by scoutt on Wednesday December 11, 2019 @08:15AM (#21762034)
I didn't check the current price, bit since I purchased it in (I believe) ~2008 it's been well amortized.
Re:Show HN: A guitar tab viewer that listens by ssttoo on Tuesday December 10, 2019 @11:23AM (#21753875)
Electron - does that mean it’s built with JavaScript and webaudio API?

Congrats on the launch!

Re:Show HN: A guitar tab viewer that listens by rodw on Tuesday December 10, 2019 @11:52AM (#21754181)
Essentially yes, and thank you.

Being able to leverage WebAudio was a major factor in the decision to use Electron.

To be honest at first I was thinking of Electron/WebAudio as a prototyping tool that I would only use for a proof-of-concept, but I've been pleasantly surprised by its performance and capabilities. So far I haven't found a compelling reason to change. When you don't need to worry about cross-browser compatibility the modern HTML5 toolset is really pretty powerful.

Re:Show HN: A guitar tab viewer that listens by ssttoo on Tuesday December 10, 2019 @12:07PM (#21754325)
Awesome, thanks! I’ve seen proof-of-concept pitch detection in webaudio but it’s great to learn it’s production-worthy, not just a demo. I’ll try fatpick (love the name, btw) when I get to a guitar and report back.

Also curious what did you use for painting the tabs. DIY in Canvas? Or vexflow?

Btw there’s a nice talk from Adrian Holovaty on perf challenges with soundslice and its drawing/updating of notation (standard and tabs)

Re:Show HN: A guitar tab viewer that listens by rodw on Tuesday December 10, 2019 @01:54PM (#21755614)
The graphics are directly rendered on an HTML Canvas. It took a little bit of optimization (and a performance-conscious design to begin with) to get there but it seems to consistently get 60 FPS even with all of the graphics, audio streaming and signal processing.

Actually the graphics are the easy part, the bulk of the time in the "inner loop" is in the audio analysis. Not to give away any secret sauce but in my experience naively using `AnalyserNode.getFloatFrequencyData` does not provide adequate performance or even accuracy when under "noisy" conditions. FATpick uses a "proprietary" (custom) pitch detection algorithm, but, other than a few domain-specific insights maybe, there's nothing particularly groundbreaking about it -- it's doing the same kind of things you'll find in academic literature on the topic, just judiciously selected and tuned by endless (and ongoing) lab-testing.

Re:Show HN: A guitar tab viewer that listens by rodw on Tuesday December 10, 2019 @01:39PM (#21755401)
Lol, I've never even seen at VexFlow before, or if I have I've forgotten about it.

But from a quick scan I think FATpick's tablature view is a little different what VexFlow does. FATpick's view is like a "piano-roll" - the x-axis maps directly to time such that the notes scroll from right to left at a constant rate, with the width of each "bubble" directly corresponding to the duration of that note. VexFlow does "traditional" tablature (and stave) notation, like the sheet music most people are familiar with, in which all notes are more-or-less the same width on the score, independent of duration.

That said, adding conventional (stave) notation to the player view (instead of or in addition to tabs) is on the roadmap, and VexFlow seems like it be very useful for that.

Re:Show HN: A guitar tab viewer that listens by mrkstu on Tuesday December 10, 2019 @04:03PM (#21756831)
I think stave+tab would be ideal. What little guitar I've picked up has actually been stave notation, but I've got a lot of missing chords in my knowledge base- having the tab right there by the notes/chords would help me master new chords...
Re:Show HN: A guitar tab viewer that listens by rodw on Tuesday December 10, 2019 @05:04PM (#21757352)
Actually, as you probably already know, there's a third notation that is commonly used for chords, like these things - https://duckduckgo.com/?q=chord+box&iax=images&ia=images

That's also on the roadmap. Right now FATpick renders chords just like any other set of notes in tablature, which is less than ideal once you have much experience with playing chords at all.

Re:Show HN: A guitar tab viewer that listens by aleatorisch on Tuesday December 10, 2019 @04:47PM (#21757215)
Cool project, wish I could try it!

Given that it's Electron, is there a reason you don't have a Linux version?

Re:Show HN: A guitar tab viewer that listens by rodw on Tuesday December 10, 2019 @05:43PM (#21757688)
Mostly the opportunity cost relative to other things to spend time on. But you're right. It should just work on Linux too.

There may be some platform-specific quirks to work out, but you are not the first person to ask for this. If you contact me at rod@<the domain above> or via the form on the website I would be happy to hook you up with a Linux build to try out.

If nothing else I could probably offer a not-officially-supported Linux version if enough people are interested in that.

Re:Show HN: A guitar tab viewer that listens by rodw on Friday December 13, 2019 @06:39PM (#21786662)
Just for future reference for people that come across this thread and would also like a Linux build, there is now a "hidden" and unsupported Linux download available. See https://www.fatpick.com/blog/release-notes-fatpick-v1-4-2-li...
Re:Show HN: A guitar tab viewer that listens by Nerdfest on Tuesday December 10, 2019 @06:06PM (#21757838)
I'm guessing that a few of us would be interested if you could build one. This sounds great.
Re:Show HN: A guitar tab viewer that listens by aleatorisch on Tuesday December 10, 2019 @06:30PM (#21757973)
Sweet, thanks! Email sent
Re:Show HN: A guitar tab viewer that listens by nsxwolf on Tuesday December 10, 2019 @11:32PM (#21759619)
The video won't play for me, shows the play icon with a slash through it, on Safari on High Safari. Any alternate link?
Re:Show HN: A guitar tab viewer that listens by obituary_latte on Wednesday December 11, 2019 @05:23AM (#21761155)
Looks like it’s webm which doesn’t work on ios safari. I couldn’t find a link to an alternative version in the source unfortunately.
Re:Show HN: A guitar tab viewer that listens by u02sgb on Wednesday December 11, 2019 @05:25AM (#21761168)
You talk about "community"is there likely to be any messaging between users? This would be great for my nephew (12) but his parents obviously aren't keen on him getting any internet messaging.
Re:Show HN: A guitar tab viewer that listens by rodw on Wednesday December 11, 2019 @08:53AM (#21762280)
At this stage there is no meaningful interaction between users at all, aside from being able to see songs that other users have shared (after a manual curation/moderation step), and even those are anonymous.

Obviously there are some "social" features that are planned. Messaging might be one of them, but it's certainly not at the top of the list.

When the time comes it might make sense to allow users (account holders) to disable that feature, maybe as part of a family plan, but for now I don't want to encourage minors to sign up. In fact it violates the ToS. Not that I have any particular issues with it nor that I expect any problems with inappropriate content, but for liability reasons regardless.

Re:Show HN: A guitar tab viewer that listens by u02sgb on Wednesday December 11, 2019 @02:39PM (#21765955)
Thanks
Re:Show HN: A guitar tab viewer that listens by vectorEQ on Wednesday December 11, 2019 @09:36AM (#21762700)
cool stuff - i used to play guitar a lot and used powertab and guitar pro, but in both there is no feedback, this sounds super nice to me, even though admittedly these days I won't get around to testing it for you anymore as i don't have a guitar anymore. I see you have an import for popular tab formats. not sure whats popular, perhaps others share that sentiment. Would this include things from for example powertab / guitar pro to be imported?
Re:Show HN: A guitar tab viewer that listens by rodw on Wednesday December 11, 2019 @10:23AM (#21763211)
Currently you can import GuitarPro (gp3, gp4, gp5) files directly.

You can use free software like TuxGuitar to easily convert other formats to GuitarPro, but for now that's something you would need to do manually before importing into FATpick.

Re:Show HN: A guitar tab viewer that listens by MikeSchurman on Tuesday December 10, 2019 @09:02PM (#21758897)
The account creation doesn't ask for a user name. But the log in does? I created an account but I don't know my user name.
Re:Show HN: A guitar tab viewer that listens by rodw on Tuesday December 10, 2019 @09:18PM (#21758973)
Username means email address.

Actually there is a generated username that you can change from your user profile page that also works, but you should be able to log in using your email address (and password).

Re:Show HN: A guitar tab viewer that listens by MikeSchurman on Tuesday December 10, 2019 @09:21PM (#21758993)
I tried my email but it didn't work. I suspect I typed it wrong as another try worked. Thanks
Re:Show HN: A guitar tab viewer that listens by pgt on Wednesday December 11, 2019 @04:09AM (#21760804)
I can't get the sound to work on the demo video, and there is no link to the Vimeo hosting.
Re:Show HN: A guitar tab viewer that listens by ragazzina on Wednesday December 11, 2019 @03:54AM (#21760730)
Have you considered supporting ukulele tabs?
Re:Show HN: A guitar tab viewer that listens by rodw on Wednesday December 11, 2019 @04:21AM (#21760879)
There's actually nothing stopping you from importing and playing uke tabs right now.