Pretty cool. It’s nice that computing the good fingerings takes a while, makes my brain feel less ‘out of a job’ that it can do that nearly real-time. Would be good to see some harmony and how the solver would deal with multiple notes at once. If you’re seriously writing out tabs and need some software, I’ve been using Dorico and it’s pretty damn good. It gives you a medium grade solve and then you hit a few keys to…
I think I understand what you mean. A trained guitar player would not need such a tool, and a beginner should probably avoid using it :). My original idea was to explore how I could rapidly get playable tablatures of jazz solos from available sheet music that I still cannot read fluently. > It’s nice that computing the good fingerings takes a while Actually, a few tweaks and the use of optimization options allowed to…
Show HN: Generate guitar tablature using a constraint solver
21–28 of 28 posts
Re: Show HN: Generate guitar tablature using a constraint solver
#22Which is to say: this sounds fun, but the expressivity of a guitar is rarely captured by a MIDI file, which makes it hard to get this “right”.
Re: Show HN: Generate guitar tablature using a constraint solver
#23Earlier quoted context omitted.
How did you learn this. Math undergrad? Comp sci? Something else?
You would definitely cover some graph and dynamic programming algorithms in a good introductory algorithms course.
Re: Show HN: Generate guitar tablature using a constraint solver
#24If you’re looking for a more practical algorithm: this problem can be formulated as a shortest path problem on the graph whose vertices are (n, fret, finger, string) tuples. A simple dynamic programming solution is to fill out a distance table whose entry distance[n, fret, finger, string] is the optimal cost of the prefix of the melody ending at note n, which can be computed as 0 if n = 1, or in terms of the entries…
How did you learn this. Math undergrad? Comp sci? Something else?
Re: Show HN: Generate guitar tablature using a constraint solver
#25A story. Many years ago, my guitar teacher set me a challenge to learn the guitar solo to “Time” by Pink Floyd. At one point, he pointed out that what I was playing was much more easily played with a more efficient fingering. I responded by saying “But that’s not the fingering he’s using, take another listen.” Which is to say: this sounds fun, but the expressivity of a guitar is rarely captured by a MIDI file, which…
E---1
B-1--
G----
D----
A----
E----
But there are TONS of people in the comments saying it should be: E----
B---6
G-5--
D----
A----
E----
Both are going to play C F, but there's so much fighting over which one is correct, and while I know due to the different thickness of the strings, there's going to be a very subtle difference between them, but I bet most untrained ears won't be able to tell, especially without having the two of them played back-to-back.As a guitar noob, I know I'd be more inclined to play the 1-1 version over the 5-6 version. It's going to be a lot easier to finger.
[0] https://youtu.be/hTWKbfoikeg?t=17
[1] https://tabs.ultimate-guitar.com/tab/nirvana/smells-like-tee...
Re: Show HN: Generate guitar tablature using a constraint solver
#26If you’re looking for a more practical algorithm: this problem can be formulated as a shortest path problem on the graph whose vertices are (n, fret, finger, string) tuples. A simple dynamic programming solution is to fill out a distance table whose entry distance[n, fret, finger, string] is the optimal cost of the prefix of the melody ending at note n, which can be computed as 0 if n = 1, or in terms of the entries…
How did you learn this. Math undergrad? Comp sci? Something else?
Re: Show HN: Generate guitar tablature using a constraint solver
#27A story. Many years ago, my guitar teacher set me a challenge to learn the guitar solo to “Time” by Pink Floyd. At one point, he pointed out that what I was playing was much more easily played with a more efficient fingering. I responded by saying “But that’s not the fingering he’s using, take another listen.” Which is to say: this sounds fun, but the expressivity of a guitar is rarely captured by a MIDI file, which…
Yeah, I've seen a lot of bickering over what the "correct" fingering is for some songs that produce the same notes. For example, the repeated two-note riff at 0:17 in Nirvana - Smells Like Teen Spirit [0]. In the top tab for it on UG [1], it's tabbed as: E---1 B-1-- G---- D---- A---- E---- But there are TONS of people in the comments saying it should be: E---- B---6 G-5-- D---- A---- E---- Both are going to play C F,…
I suspect an experienced guitarist would probably opt for 56, though for the exact same reason: it fits your hand shape. Sometimes what’s easy changes with experience. :)
Re: Show HN: Generate guitar tablature using a constraint solver
#28Earlier quoted context omitted.
Yeah, I've seen a lot of bickering over what the "correct" fingering is for some songs that produce the same notes. For example, the repeated two-note riff at 0:17 in Nirvana - Smells Like Teen Spirit [0]. In the top tab for it on UG [1], it's tabbed as: E---1 B-1-- G---- D---- A---- E---- But there are TONS of people in the comments saying it should be: E---- B---6 G-5-- D---- A---- E---- Both are going to play C F,…
In my case, it was a lot easier to work out, since you needed to accommodate note-sliding. But there’s a lot the difference in strings as well. I suspect an experienced guitarist would probably opt for 56, though for the exact same reason: it fits your hand shape. Sometimes what’s easy changes with experience. :)
I need to play more Rocksmith. I want to know how to play, but learning just feels so tedious.