[HN Gopher] Show HN: A piano chord reference tool ___________________________________________________________________ Show HN: A piano chord reference tool Author : jnkkkk Score : 86 points Date : 2022-08-27 19:53 UTC (3 hours ago) (HTM) web link (pianochord.io) (TXT) w3m dump (pianochord.io) | boredemployee wrote: | Nice. Would love to see inversions as well. I struggle a lot with | rootless inversions :| | jnkkkk wrote: | Thanks! Yes, inversions will be there in the near future. | kampsduac wrote: | One of my first personal projects when learning how to program | was generating sheet music for scales. Maybe I'll try to adapt | some of the logic here to do that, someday. | | I love the spirit of this. Simple reference tools for mobile | devices or tablets, maybe with the ability to print things, could | be leveraged more in the world. | | Share any tools if you know of them! | jacquesm wrote: | Hah cool! That is how I more or less discovered 'structured | programming'. I had already made three tries at that and failed | miserably. Then 'functions' came along and suddenly I was able | to write code in the 1000's of lines and not get lost. (Before | then it was all GOSUB 3300 etc.) | | The BBC Micro (the machine I was working on at the time) had a | version of Basic that allowed for procedures (something that | doesn't return a value) and functions to be defined with a name | attached. It's incredible if you think about it from a present | day perspective that in that sense the original BASIC was even | worse than assembler, which at least allowed you to attach a | label to an address. | S_A_P wrote: | Love it- was just digging out my old laminated chord chart to re- | learn them. This is way more convenient! Would love to see this | expand to scales and modes too! | jnkkkk wrote: | Thanks! Yeah, my next step would be adding scales and modes to | it. | randyrand wrote: | How are you rendering the pianos images? Can you show the code | for it? | jnkkkk wrote: | The code is open sourced on Github. | https://github.com/JNKKKK/pianochord.io | marvin wrote: | This is a great reference tool. Something like this must have | existed already, but I couldn't find it for the life of me. | | Something as simple as wanting to play simple guitar pieces based | on chords, but struggling to figure out simple bar chord patterns | for each of the less common chord families, and being unable to | construct them on my own since I don't know enough of the theory | to do it from the ground up. Thanks! | mkl wrote: | Searching [guitar chords] brings up some like this, e.g. | https://www.all-guitar-chords.com/ which is quite similar but | shows fingerings too. | | For piano, https://www.pianochord.org/ has been around a while | I think, but doesn't seem to play the chord so you can hear it. | jnkkkk wrote: | Totally agree. I sometime also feel struggling to construct | chords in my mind. Then I realize the importance of having such | tool. | Stenzel wrote: | OK for beginners, but there are lots of nice voicings missing, | also those where the root note is not played at all. | jacquesm wrote: | It looks like it is just out of the oven, and it's a pretty | good starting point to flesh it out, the hard work has been | done. | poisonarena wrote: | This is very cool but geting lots of clicking/artifacts on | firefox | jnkkkk wrote: | Thanks! It's just out of the oven so I didn't have chance to | test on all major browsers. Will improve on browser | compatibility in the future. | mkl wrote: | For me it sounds fine on Firefox on Android and Firefox on | Linux. | Apfel wrote: | Can't believe how useful this is. I've been working my way back | in to learning piano during the pandemic and have been learning | songs I like mostly through guitar chords websites and playing | the right hand by ear as my sight-reading is atrocious. This will | really help my progress with this method for the more complex | chords. | chaosprint wrote: | very nice. | | pay attention to the chord that has 4 tones. it seems that you | simply add up the amplitude so we always get some distortion. | jnkkkk wrote: | Nice catch. Thanks for the advice! Really appreciate it. | jrm4 wrote: | Awesome. I'm trying to pick it back up and go further, and I | realized that sheet music bores me and I want to try just finding | chords of songs and banging them out. | | Relatedly, I ended up making a very kludgey tool (in bash, ASCII | graphics) that would let me enter a few chords and would cycle | through them with on the same screen-piano-keyboard (e.g. to | better see the "transitions.") | | I'm kind of surprised I've never seen anything like that out | there done more formally? | jnkkkk wrote: | Interesting! The idea to visualize the "transitions" sounds | very useful. | moosedev wrote: | Nice! Couple of minor (haha) issues: | | * The label "Rising octave" on the octave-up button doesn't make | sense. Maybe you meant "Higher octave", assuming the "Lower" in | the "Lower octave" button is the adjective form of "lower". If | "Lower" is acting as a verb, however, then "Raise octave" would | be consistent, but I don't think it sounds very natural. "Octave | up" and "Octave down" might be more natural based on my | recollection of music software and hardware I've used. | | * As another poster noted, the (FM?) synthesizer is clipping | badly when it plays chords. It's noticeable on basic 3-note | triads, but it's much worse on chords with many extension tones, | like a C13. | | Thanks for sharing. | jnkkkk wrote: | Thanks for the advice! I totally agree with it. "Octave up" and | "Octave down" also sound more natural to me. | | And nice catch! Yes, the synthesizer does have some issue in | browsers other than Chrome. I'm working on that. | | Thanks again! I really appreciate it! | moosedev wrote: | Sure thing! BTW I am using Chrome on Windows 10. | moefh wrote: | Really good stuff! | | If I can give another suggestion: I think it would be much | more useful for beginners to see the common alias of the | chord in the main table (maybe below the name that already | exists?). | | (This is wrong, see the reply below:) For example, a beginner | may see "G7" in the wild and not know it's a G minor 7 (and | not a G major 7). They'd have to click the chords and search | the alias list. If "G7" was written below "G minor 7", it | would make things much easier. | | Also, I think it would look better if the names in the main | table were a bit more consistent. For exmaple, you have "G | major ninth" but "Gmaj13". I think it would be better to have | them as "Gmaj9"/"Gmaj13" or "G major ninth"/"G major | thirteenth". | moosedev wrote: | Nit: G7 denotes a G dominant 7 (i.e. natural 3rd, flat | 7th), not a G minor 7. G minor 7 (flat 3rd, flat 7th) is | abbreviated Gm7 or G-7. (In my experience, the "Gm7" form | is common in "official" printed guitar & piano songbooks, | while G-7 is common in jazz lead sheets and fakebooks.) | moefh wrote: | Right, total brain fart on my part! (And I actually had | never seen the "G-7" notation) | | Still, I think it would be much more useful to | consistently have the chord abbreviations in the main | table. | moosedev wrote: | I still stumble over the "-7" version sometimes. I grew | up on "Gm7" :) | | Example from Google image search: | https://www.musikalessons.com/blog/wp- | content/uploads/2017/0... . At least this one uses maj7 | for major 7, rather than M7 or ^7 :) | josephcsible wrote: | Sometimes when I hit the play button for a chord, the notes don't | all start at the same time. I can't figure out a pattern for when | this works and when it doesn't. | kzrdude wrote: | My favourite way of "chunking" chords (i.e how to think of them | to remember them) is to "decompose" them to think about them in a | different way. | | For example: Think of Bbmaj7 as just Dm with Bb as the bass. Bb + | Dm. It turns out that this pattern always works for the maj7 | chords. | | Another example: Cmaj7 "is" Em with C as the bass. Think of Cm7 | as Eb with C as the bass. C7 is Edim with C as the bass. | | These decompositions are just a different way to see the same | chords, maybe it helps some people to form | associations/connections about these shapes in some way. Of | course, once played enough, a chord is simply remembered as it | is, its own thing. | behnamoh wrote: | Every time such apps are shown on HN, I notice a lot of attention | by the community. It seems a lot of hackers also play music! | issa wrote: | I wish I had a better ear and could tell you what sounds funny to | me about the piano at the top. Can anyone explain why it sounds | off to me? | InCityDreams wrote: | Mixing sharps and flats? I chose c as root and db (d flat) is | in the image...but so is f# (f sharp). | | I have no problems explaining ie fb (f flat) or e# (e sharp) | etc, in certain circumstances, but I'm a great believer in: | don't mix the two (sharps and flats). | moosedev wrote: | Taking a guess at what you're noticing but might not have a | framework/vocabulary for... | | It sounds like FM synthesis[0] to me (so either an embedded FM | software synthesizer or simply replaying samples of FM | synthesis), so the timbre is quite unlike a "real" piano or PCM | samples of a real piano. Timbre is a kind of "color" of | "quality" of a sound - in my head it's similar to how different | materials feel different to the touch. A violin and a trumpet | can play the same "note" but their sounds have very different | timbres. An apple and a ball might both appear red but have | different surface textures. | | The "piano" in the app sounds like the piano patches (presets) | on FM-based synthesizers from the 1980s[1], where the designers | tried to approximate the timbre of a piano using the limited | (but fun!) possibilities of FM, while the transients and | harmonics produced by a real acoustic piano are more complex. | | The pitches and temperament sound OK to me, so I think what you | are are hearing is the timbre. That is, the app is playing the | "right" notes, but it's as if you're hearing a "different | instrument", albeit one that is an early digital approximation | of a piano sound. | | [0] | https://en.wikipedia.org/wiki/Frequency_modulation_synthesis | | [1] e.g. the Yamaha DX7; here's one of its "piano" sounds for | comparison: https://www.youtube.com/watch?v=F3rrjQtQe5A&t=214s | jacquesm wrote: | Very nice! Request permission to link to it from pianojacq.com in | the manual. | jnkkkk wrote: | Sure! I'm happy to hear that. | jacquesm wrote: | Ok, done! Let's hope I didn't break anything because I'm in | the middle of a huge refactoring job :) I really hope you | will be successful with this, I love browser based music | tools. | jnkkkk wrote: | Thanks! I like the idea of pianojacq.com. Good luck on your | refactoring job! | mkl wrote: | This is great! It would be really useful to be able to select and | deselect notes on the top piano to construct new chords based on | these ones (and it could detect when you've constructed one it | knows). | | Showing the sheet music of the chord in the top info box would | also be very helpful. | | A list of similar chords links in the chord info box would be | neat. | | An "automatically play chord" option would make it super easy to | find a chord you want by sound. | | Possibly out of scope, but it would great to be able to put in a | sequence of chords and see things about the transitions, e.g. | notes in common. | leetrout wrote: | On ios safari hitting play just causes a clicking noise. | NonNefarious wrote: | Playback doesn't work on desktop Safari either. | | <unhappy emoji> | jnkkkk wrote: | Thanks! Nice catach. It's just out of the oven so I didn't have | chance to test on all major browsers. Will improve on browser | compatibility in the future. | leetrout wrote: | Awesome. Thanks! | someweirdperson wrote: | Aliases seem to be incomplete in a certain sense. E.g., Gm#5 uses | the same notes as Eb major. ___________________________________________________________________ (page generated 2022-08-27 23:00 UTC)