10 ms·
Show HN: Get the guitar chords from your Spotify playlists
- xnzakg 5y agoWish there was some kind of example of what it looks like before I log in with my spotify account.
- Y_Y 5y agoAgainst my better judgement I actually logged in with Spotify, only to find that it just didn't work. I'm not really sure what I was expecting anyway. There used to be a great trade in guitar chords online, but then lots of small sites got taken down and ultimategyitar tried to put a big shitty paywall around years and years of high quality content made by volunteers and often scraped from other sites.
- jaywalk 5y agoLooking at the JavaScript of the site, it looks like all it does it scrape the search results from ultimate-guitar.com for the songs in your playlist.
- jamespwilliams 5y agoIf anyone knows of a free and open-source guitar tab sharing site, I'd be interested. I wrote some tabs recently and ended up just putting them on my personal website. Hopefully people will search via Google and find them.
- rodw 5y agoI don't know of any "open-source" tab sharing sites (i.e., sites specifically dedicated to CC or other permissively-/share-alike-licensed transcriptions) but for what it's worth there are a large number of "free" (as in beer) guitar tab repositories, or at least a large number of places that include freely-available, user-contributed content within a broader freemium or ad-supported service. Beyond the usual web-based suspects (some of which have been named elsewhere in this thread) there are also a number of other tab sharing "communities", including some relevant subreddits that might be the easiest way to spread the word if you're not comfortable uploading to a more directly for-profit service (not that Reddit isn't for-profit too, but guitar tabs certainly aren't their business model and you'd largely be linking to files stored elsewhere rather than uploading them directly). But a lot of people seem to do what you did also. I suspect it's not super-effective as a distribution model, but if you dig a little it's not hard to find smaller/specialized tab collections on personal websites or general-purpose file hosting services like Google Drive/Dropbox or even at places like Github. I don't think Google's `filetype:` operator respects guitar-tab-related extensions like `gpx` or `gp5` or `tab` or whatever but using the `inurl:` operator (or just including the tab-specific file extension) combined with the song title or artist name is a good way to find some of these less-centrally located tabs. Also there are several massive collections available via torrent and on some of those more gray-hat-ish anonymous/one-off file-sharing services. Arguably these may have a more questionable provenance but I suspect the plurality if not the majority of the guitar tabs you'll find shared anywhere online could be traced back to old-school usenet or the first generation of tab-sharing websites that grew out those communities. Ultimate-Guitar for example self-reports as having "chords and tabs to over 1,100,000 songs", and likes to highlight their "official" (licensed) transcriptions (and to be fair they are nothing to sneeze at), but it's probably no coincidence that they don't seem to report the ratio of "official" to "community-provided" transcriptions. EDIT: Just out of curiosity I checked the file-count reported at the bottom of UG's search page when filtered by file type, I see: * 18,688 "official" tabs (AFAIK these are the only actually licensed transcriptions) * 212,408 "Guitar Pro" (.gpx/.gp5/.gp4/.gp3) files; user-generated and many of which probably weren't originally uploaded to UG * 1,115,129 plain-text transcriptions (801,597 "chords", 313,532 "tabs") that almost certainly date back to Usenet-era communities The ~20K of licensed/official transcriptions are impressive (both individually and collectively) but represents less than 2% of the overall song catalog (and much less than 2% by file count).
- dsizzle 5y agoOne of my first tastes of the web was finding tabs on ftp servers!
- boringg 5y agoSeriously ultimate guitar just effed over so many people who put time and effort into spreading guitar chords. That and their site is covered in so much ad content.
- deleted 5y ago[deleted]
- tokamak-teapot 5y agoI have contributed many tabs to guitar archives over the years. Some are available via Ultimate Guitar. How am I being ‘effed over’? I might be, but I haven’t spotted how.
- olivermarks 5y agoIt's classic tragedy of the commons - most of ultimateguitar and other sites have just scraped 'content' off the good old spirit of the early web all the way back to newsgroups then put a paywall and ads all over it. still beats pre internet though when you'd buy an expensive book of sheet music with first position camp fire chord diagrams and a piano arrangement written out by someone who appeared to have little feel for the actual recorded music. Without inversions, suspended chords, added base notes etc most chord naming isn't much use, tabbed out diagrams for guitar and keyboard are really helpful along with all the wonderful youtube content from jamesjames, late night lessons etc
- saevarom 5y agoI actually run a guitar chord website, www.guitarparty.com, that provides chords for songs, but also some additional functionality such as PDF books, transposing songs etc for subscribers. But the content is free although you have to tolerate a few Google ads. We're mostly local to Iceland but there are always some users and subscribers from around the world. We once attempted to go the legal route globally and make a deal with Harry Fox Agency (the agency that took down OLGA), we had a contract ready but it would have been quite expensive and risky for us. That being said, we pay royalties to our local copyright agency based on usage.
- fenderbluesjr 5y agoDoes your site or any other allow a user to click notes on a fretboard and have the app deduce the chord from the positions? I know a lot of chords the names of which I have forgotten, and don't have the theory chops to work it out myself
- cyberbanjo 5y agoHeres one https://jguitar.com/chordname https://jguitar.com/chordname
- Y_Y 5y agoAmazing! Search for finger pattern = {5 4 3 4 1 1}: 16 results found. A+add9add#9 A Augmented Add 9th Add Sharp 9th C#+7add7/A C#/A Augmented 7th Add Major 7th F5addb5addb11addb13/A F/A 5th Add Flat 5th Add Flat 11th Add Flat 13th ...
- rodw 5y agoI can't quite figure out if your response is meant to be sarcastic or not - i.e., if you're "amazed" at the completeness here or maybe mocking the specialized/exotic chords it came up with in this case. I apologize if this is obvious or well known to you, but for anyone not already familiar with it recognize that much like (and not wholly independent of) musical scales, chords are essentially defined by a predictable "formula". E.g., every major chord is described by interval pattern 0-4-7: starting at any note, take the root, major-third (4 semi-tones above the root) and perfect-fifth (7 semi-tones above the root) and you have the major chord. For the root note C that yields C-E-G. Rotate that pattern so that the root note is pitched above the major-third and perfect-fifth (e.g. something like 4-7-12) and you have an "inversion" of the major chord. For the root note C that's E-G-C (known as "C/E") or G-C-E (known as C/G). Based on these interval patterns it's not hard to generate an exhaustive list of chord "families" (with members like "Major" or "Dom13Aug5" or whatever) - there are at most 4096 (=2**12) of these interval patterns in a single octave, and many of those are relatively uninteresting due to symmetry, degenerate cases or just plain dissonance. (To be fair many common chords span more than one octave.) A given collection of notes (fret/string combos on a 6-string guitar for example) is usually going to map to some variation of one of those interval patterns, possibly with a stray interval added, dropped or repeated. (E.g., the typical X32010 fingering of C Major on guitar corresponds to C-E-G-C-E rather that "simply" C-E-G.) So it might seem like mapping an arbitrary fingering to the corresponding chord name requires a lot of information, but it's just matching notes (or pitch classes) to a moderately small number of named interval patterns. And it might seem like "F5addb5addb11addb13/A" is a ridiculously over-specified chord name, but that's a function of applying a set of conventional "modifiers" to a simpler/better-known/more-common chord. (In this case, `F5addb5addb11addb13` = `F5 + add(b5) + add(b11) + add(b13)`, i.e., F5 (F + C) with a diminished-5th (C), diminished-11th (B) and diminished-13th (C#) added.) You could argue that the pattern matching is trying too hard in this case, but if you're dedicated to assigning a "conventional" chord name to an arbitrary collection of notes, there's algorithmic way to do that. Again, apologies if this is obvious to you (user Y_Y), I just thought I'd try to de-mystify it a bit for anyone to whom this seems like alchemy. Music theory has a bunch of semi-arbitrary naming conventions that make it sound really complicated to the uninitiated, but in the abstract the chord names are basically just bit-masks that specify interval offsets from a given root note.
- scarecrowbob 5y agoI learned to play guitar back in the 90s when the OLGA was still a thing. UG sucks for precisely the reasons you mention. I suppose the trade-off is that now all the great folks who were making nice tab content are on YT, but still, if you'r business model is making money off aggregating a bunch of content people created in the early 00s because the love of it, then that's hyper lame. I still use UG if I am in a hurry and want a quick idea of other folks' take on the structure of a song, but I'm thankful I outgrew the need for other folks' transcriptions.
- phasersout 5y agoI disagree.. I learned guitar in the late 80s and getting tabs back then meant to get on the train, drive an hour into the city pay like 20 to 30 bucks for - one album worth of tabs - lets say "Appetite for Destruction" and drive home another hour... and then a lot of this "official tabs" were complete rubbish... So Ultimate Guitar is a steal really. I got a lifetime subscription a couple of years ago but I would also sign up for a monthly plan gladly.
- soylentcola 5y agoHeh...a guy I knew in college got a meeting with admin when he thought it would be cool to host an OLGA mirror on his university web storage around 1995 or 1996.
- rtsil 5y agoOLGA was the Eldorado for my teen self. Its demise was a disaster. I still have a full copy of its archives somewhere collecting dust in my old hard drives.
- heuermh 5y agoI do too, let me know if you know/think of a good place to host these. UG must be one of the most user hostile resources I've ever attempted to use.
- vitorbaptistaa 5y agoAs an alternative, I use cifraclub.com.br for many years, and enjoy the interface and the overall quality of the chords (not affiliated with them). It's not in English, but you should be able to figure out where's the search bar and use it without much effort.
- lucaaa 5y agoHello, I am the creator of the website. The main goal is not having to search on UltimateGuitar for the chords of the songs you want to play, but instead get a direct link to the song on UG. I made it because I was tired of checking my Spotify playlists for songs of which I didn't remember the title but I wanted to play and then go on UG and type the title in the search field. It's more of a "I'm lazy" tool than an actual tab website.
- michaeljgerace 5y agoHi! In terms of your credential flow - did you get a quote extension from Spotify for your use-case? I know that this kind of log in flow is really restricted without requested (at least in my experience working with the API).
- lucaaa 5y agoHi, I didn't get a quote extension, I never actually looked at the quote limitation because I was only using it myself. Edit: I checked on the Spotify developer dashboard and it says "App Status: Granted quota extension"
- simonebrunozzi 5y agoSomeone from Spotify should have read this on HN and decided to give you a present :)
- omarhaneef 5y agoYou would think getting the notes and converting them to chords, and tablature, would be one of those "exactly suited for neural nets" type of problem. If you want the chords to "Here comes the sun," you can find dozens of hits, but try something slightly obscure and they are hard to come by. (People with great ears have no idea what I am talking about.)
- cnity 5y agoI've worked on this problem for some time on a personal project, and I'm pretty convinced you can basically solve this problem without deep learning or AI techniques, and instead use non-negative matrix factorization[0] as a bank of note templates (from their spectrograms). I have a fairly well working proof of concept and the approach is supported by the literature. [0]: https://en.wikipedia.org/wiki/Non-negative_matrix_factorization https://en.wikipedia.org/wiki/Non-negative_matrix_factorizat... _edit_ That said, you'd probably need something more hard-core for extraction from an actual track, so you're probably right.
- anonymouse008 5y agoThis is the right approach for song recommendation too — try your approach there and see what happens. If you want help on the business side, reach out.
- cnity 5y agoThat is very kind of you to offer. I don't know if I'd be able to find the time to dedicate to having this function as an actual product though!
- anonymouse008 5y agoYou're already leaps and bounds into a good partnership - realistic expectations. Consider it again when you get downtime, no rush over here, more fun.
- rodw 5y ago
- zwily 5y agoTangentially, if you want to get chords from a song (and can't find them already written online), Capo does a pretty great job at it and is very easy to use. Mac/iOS only, but the best I've seen. https://supermegaultragroovy.com/products/capo/ https://supermegaultragroovy.com/products/capo/
- tinyhouse 5y agoOh so this is not what I thought it is. I thought it actually figures out the chords for any given song.
- Malp 5y agoThis is great, I was thinking of a similar idea recently- thank you for making this! If you haven't already, I would suggest sharing it on reddit too- I think /r/guitar and some others would love it :)
- weystrom 5y agoUltimateGuitar is so pushy with their ads and subscriptions, it's a crime. Neat shortcut though. Thanks for the effort.
- JulianWasTaken 5y agouBlock + some extra style blocks works pretty well to make it go away IME. The extra style blocks will remove the fake overlays with videos that they add, or the tight padding, etc.
- driekwartappel 5y agoIn the good old days of Winamp (15 years ago...) I created a plugin that scraped the web and showed the chord in Winamp as you played a song. The code was dead easy to implement as it was just an embedded site within Winamp (HTML & Javascript & Winamp JS SDK). And surprisingly the site is still running! Not sure if the scraping still works though http://pikkipowpow.davidsmit.za.net/Home.aspx http://pikkipowpow.davidsmit.za.net/Home.aspx So yes there are definitely a use case for all the new media players to show chords
- standard09 5y agoThis is really great product. Keep it up!
- CountDrewku 5y agoThis just searches ultimate-guitar.com for you. Why do I need your app for that? I'll just go to the source.
- japers 5y agoI built something similar for personal use. It's a Mac app that uses AppleScript to poll Spotify for the track that is currently playing. It then looks for chords on Ultimate Guitar through a small NodeJS API that uses Puppeteer to scrape the site. I'll usually just put my guitar playlist on shuffle and have this app open alongside it.
- costcopizza 5y agoLearn them by ear, no tabs, YT vids, or anything else. Much more gratifying, you'll thank me later and become a better player.
- Spivak 5y agoGood advice for someone experienced, terrible advice for a beginner. If you want to kill someone's love for playing and have them hate their favorite songs, make them use their completely untrained ear to listen for chords they don't even know through layers of amp effects, pedals, and editing.
- the_arun 5y agoIs there a way to demo how it works, before I sign in with my Spotify account & share my data?
- dvsfish 5y agoHah! I made a similar thing where I have a button in my extension bar on chrome that I click to perform a google search of [song I'm listening to on spotify] + " chords". Waiting for firefox manifest v3 update to add final touches.
- giantg2 5y agoAnything for bass lines? I wanted to build somestuck. As a project, but I suck.