Comments (12)
one big provider (or two, depending on how you count it) I see missing is YouTube/YouTube Music. I feel like it might be right to kinda treat them seperately (as a user, not a developer)
the main things I know to look out for on YouTube
- metadata in the description is not at all standardized, perhaps save for distributed content (i.e. from distributors like DistroKid)
- a single video can have different titles, descriptions, and possibly different audio tracks per region
- often an album will be released as a single video with chapter markers for each track
- video titles are not standardized, sometimes containing the artist name or [official video] or other nonsense, which maybe should or shouldn't be removed from MusicBrainz submissions
I can make a ticket or two for this pair if you'd like~
from harmony.
My free time has been scarce these past few months. I like it, but I'll likely hold off on using it often until Spotify is included. It's puzzling why Spotify now limits visibility to only see releases in one's own country, but thankfully, a-tisket remains reliable for those releases if you know the URL. With some luck, I'll have the opportunity to explore it further.
from harmony.
Would be interesting to see some kind of Yandex Music implantation is such service.
Example of an album: https://music.yandex.ru/album/12353342
Open JSON API: https://api.music.yandex.net/albums/12353342/ (or https://api.music.yandex.net/albums/12353342/with-tracks for additional info on tracks from album, such as the distributor of release). You might need VPN to open those, but here's a mirror for the "with-tracks" response: https://www.jsonkeeper.com/b/YKSE
The API does not support neither GTAN nor ISRC. Also the "label" section of response takes the info from the P-line of release and in most cases would remove words "Productions", "Music", "Publishing" and etc., as well as split one label onto multiple ones if there's a slash in its name (like here).
They also support showing whether it's an album, single, podcast or an audiobook (since they all have a link of https://music.yandex.ru/album/album_id).
There's also an unofficial implantation of an API at https://github.com/MarshalX/yandex-music-api/releases
from harmony.
7digital.com has API docs at https://docs.7digital.com .
from harmony.
YouTube.js support youtube music api, no token required and GTIN search works.
Also support deno.
from harmony.
@wileyfoxyx Thank you for the detailed request, this is enough to warrant a separate ticket. Can you please make one? (I will then leave my comments over there.)
@UltimateRiff One YouTube ticket should be enough for the start, we can always create a new ticket if it turns out there will be multiple providers and only one of them is implemented initially.
And the library suggested by @c0b41 should also be linked from there. Although I am not sure whether we will just have our own simple implementation inspired by the library, since we need to make requests in a way which is compatible with Harmony's caching.
If I am being honest, even a request with just a link to a good API documentation is enough for a separate issue. Can you please make one @reubot? I will clarify that in the description of this issue.
from harmony.
PR #11 adds initial support for Tidal
from harmony.
@UltimateRiff, I'd either would and would not count YouTube and YouTube Music as separate, mostly because of the so-called Art Tracks (that look like ordinary track in any music service on YTM yet as an ordinary video with "Provided to YouTube by..." line in the description on YT)
from harmony.
I was about to suggest Amazon as a metadata provider, but they don't support GTINs for albums.
So right now, Amazon could only work as a standalone provider like Bandcamp.
They have a restricted JSON API that is in Beta that seems quite good, but for authentication, you need to contact the Amazon Business Development representative to get access to the API beta.
from harmony.
boomplay has an api that includes getting albums by UPC and songs by ISRC.
However, you need to register an application and get an access token, and there doesn't seem to be any documentation on how to register an application.
https://developer.boomplay.com/openApi/track/GetTrackByIsrc.html
from harmony.
im just looking up random music streaming platforms at this point...
KKBOX is a Music Streaming Platform from Taiwan that is only available in Hong Kong, Japan, Macau, Malaysia, Singapore and Taiwan.
They have a restricted JSON api, that, similar to spotify, requires registering an application, which is free (as in gratis) and fairly easy.
While all the registering has to be done from an IP Address in one of the above countries (I managed to do that through a VPN) the API itself has no geo restrictions.
They also have good documentation https://docs-en.kkbox.codes/docs, however, they don't seem to have GTINs in their metadata.
You can use my access token for testing until it expires: _oMkgQA5yo5GiY5IUvKJ6Q==
.
The access tokens seem to be valid for one month.
from harmony.
QQ Music has an api that doesn't include GTINs and ISRCs.
The Documentation is completely in Chinese and getting an access token requires creating an account and asking them for authentication. So probably not worth it.
from harmony.
Related Issues (20)
- OTOTOY HOT 3
- SoundCloud
- No support for geo.music.apple.com links HOT 5
- seed track URLs to MusicBrainz recordings HOT 2
- Preview resolution of covers and show highest resolution in another color HOT 3
- better handling of feat. artists HOT 3
- Some digital releases reuse the physical release's GTIN HOT 1
- doesn't add "purchase for download" Bandcamp links? HOT 4
- Deezer's API returns alternative release with different GTIN and availability HOT 5
- Beatport: Warn about catalog numbers which look like GTINs
- SyntaxError: Unexpected end of JSON input
- Add an `.env.example` file
- MusicBrainz provider HOT 1
- Copy to clipboard buttons
- Optimize SQLite DB to improve cache performance HOT 1
- Improve artist matching and combining
- avoid using Various Artists when not all providers use it HOT 1
- Add support for d.ontun.es to submit ISRCs HOT 1
- Apple Music API lookup broken HOT 3
- deezer api returns upload date instead of release date
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from harmony.