A multi‐source seeder for digital releases

Tags: #<Tag:0x00007f41a79fa908> #<Tag:0x00007f41a79fa660> #<Tag:0x00007f41a79fa520> #<Tag:0x00007f41a79f9cb0>

Wow, awesome tip! They do have a freely available (not sure if there’s a cap to requests or if it’s good faith) API. They even credits in the format of which tracks a credit+person contributed to, so I won’t have to compile that data myself.

The tricky part, is they don’t have links to the artist/performer per credit, so autofill of artist from MB wouldn’t be possible…In the unlikely event MB adds relationship seeding :sweat_smile: I’ll do some more digging into Jaxsta and come back or start a new thread when I get things usable :slightly_smiling_face:

EDIT: their API is wide open. Can see myself writing a search function that returns anything we could want :smiling_imp:

4 Likes

I just deployed a small update so that Apple Music URLs are submitted with releases now instead of the deprecated iTunes URLs that now redirect to Apple Music anyway. The type for the URL relationship is set to “streaming page”.

7 Likes

Unfortunately he code is not easy to extend. As previously mentioned it’s in maintenance mode only as it would need a huge refactoring or probably just a ground up rewrite to make it extendable and maintainable.

I actually implemented a Ruby client with support for querying MB, Spotify, Deezer and Bandcamp earlier in the year but unfortunately real life stuff took over and I haven’t had the time or inclination to work it on any further. I even got to the stage of hooking it up to a simple Ruby on Rails app to test some design ideas (this release had a massive description which screwed up the column alignment):

I managed to get the audio player fully working, which I think would be a nice feature given that most of the services provide preview links in their API responses.

I doubt I will have time to work further on it until later this year, so it sounds like @Chilkara might have a suitable replacement ready before I do.

7 Likes

You might be able to get relationship seeding working via a userscript. It’s not ideal but would be better than nothing. I managed to a implement a userscript for seeding artist links via URL parameters. Dealing with the relationship editor would be more complex but I’m sure @ROpdebee could work his JS magic!

This actually looks very clean. The description would probably be a simple ellipses cut after a certain length.

I’m always open to collab, especially since I know RoR already.

My Jaxsta project, I got everything parsing and displaying nicely. Need to pick it back up and finish it

6 Likes

I made a topic for my track relationships tool if anyone wants to give feedback: Mirmir: A project that aims to simplify adding track relationships

3 Likes

Is anyone having issues with apple music? When I paste a link in to the seeder it loads to a blank page.

On the original (MarlonOB), it will do that sometimes if you don’t also have the barcode there. Try the mirror, it should work there. You can find the barcode by right clicking on the Apple Music page going to “view page source” and searching for UPC.

3 Likes

thanks tigerman325, I had no idea there was a mirror we could use, using the mirror let me import that link that wasn’t working!

2 Likes

When using these seeders, sometimes I find out a release only excludes one or two countries from the list and it creates a release event for 200+ countries.
Is this the intended way of using it? Or should I set it as Worldwide and use an annotation to list the two excluded countries?

1 Like

Only mark Worldwide, if it exempts British Indian Ocean Territory. That is not really a country and it has zero permanent residents that live there. I’d double check with Jaxsta because, especially Sony Music Entertainment releases, has the release Worldwide, but doesn’t put it on the 3 (Apple Music, Spotify & Deezer) services in a certain group of islands. You start to recognize the patterns the more edits you do. But on almost every release that Jaxsta has shows it as Worldwide. But if you don’t get verification from Jaxsta, I’d go with what a-tisket returns. Jaxsta gets their country distribution list directly from the distribution labels.

2 Likes

Thanks!
I’ll keep the long country list then!
I was wondering because I found a release where the only excluded country was Curaçao and I was quite puzzled.

1 Like

I remember someone upthread (@tigerman325, was it you?) mentioned that Curaçao is listed as excluded due to an API error on Deezer’s end, and that their service is not actually available there.

1 Like

Yes, the mirror isn’t always right. I only use it for iTunes & Spotify, but it’s wrong on Deezer. There are many instances where China & Curacao show up as excluded, but if you run it on the original, it doesn’t show this. This is because it removes countries that the Deezer API shows as having the release, but Deezer says they don’t support. Long story short, if Deezer has the release, run it on the original because it’ll give you a Worldwide result more often than the mirror will. Spotify isn’t in China, so it can’t override the removal from Deezer’s list. And Curacao was an addition in 2020, so many releases before that aren’t in Curacao on Spotify, even though they are in Deezer, and the mirror removes that positive result. Also, between 20-30 countries more show up on most releases that are on Deezer.

2 Likes

Thanks!
I’ll edit that later then!

Does a-tisket have a bug with video tracks on Apple Music/iTunes releases? The video at track 12 isn’t present on Pressure Machine by The Killers | a‐tisket: A multi‐source seeder for MusicBrainz and Imploding the Mirage (Apple Music Film Edition) by The Killers | a‐tisket: A multi‐source seeder for MusicBrainz doesn’t return a tracklist at all.

It looks like the code excludes tracks which are not marked as “song” from iTunes API responses on purpose (e.g. videos, booklets).
I did run a test with your first example release where I allowed tracks which are marked as “music-video” and it kind of worked in this case:

Not sure why the video is displayed first although its the last track with the highest track number in the API response and there is no reordering done on a-tisket’s side.
While it would be easy to simply sort the results by track number if that is the only thing which is necessary, I wanted to try another example first and found one which used to entirely break a-tisket because the video tracks were the first items in the iTunes API response (even before the album item itself).

This example perfectly shows why iTunes video tracks are currently excluded: Deezer and Spotify might have the same barcode but they do not have these video bonus tracks. And if you do not exclude the videos a-tisket fails (and shows garbage) because the releases do not have the same track number for all vendors and video tracks do not fulfill some of the tools assumptions:

The second example definitely is a bug but I don’t have the time to also have look at this now, maybe later :sweat_smile:
Edit: Scratch that, the second example seems to be an Apple Music exclusive release for which the iTunes API does not return any tracks (only the album item), so unfortunately this is a “won’t fix” :confounded:

5 Likes

It doesn’t recognize videos. Always be looking at the Apple Music page while editing and don’t rely solely on a-tisket. The iTunes importer many times also misses videos, so it’s something to do with the way the iTunes API is set-up. Also, if a-tisket says it found the release but couldn’t find a tracklist that means that the release is not on iTunes, but only Apple Music. a-tisket does not have access to the Apple Music API, only the iTunes API.

2 Likes

I’ve never seen a release that has the same barcode be the same as one with videos on iTunes. I just clicked your link in this example and the Apple Music release doesn’t have any videos. I’ve noticed that in the iTunes API they show the promo videos they link at the bottom in the music video section. This is not part of the release, just links to other videos. But many releases, such as The Killers shown above as an example actually has videos in the track listing.

Note: Do you have access to make changes on the page??

1 Like

Well, that would explain it. I thought I did not see them because I don’t have a subscription/account for Apple Music. Maybe this makes it more reasonable to include video tracks which have track numbers and are part of the regular tracklist (on Apple exclusive releases, so there are no differences to Deezer/Spotify). I can’t really make a statement here since I haven’t really seen much releases with videos besides the examples reported in this thread.

I have access to the code, but not to the server where the mirror is running. Maybe I should have mentioned in my above post that I did not make these tests on the public server, but in my development environment where I temporarily changed the code to see what it will do when I do not exclude the video tracks from the API response…

We should probably add an error message which explains this behavior. Have you ever seen a case where iTunes did not return a tracklist for a different reason, or can we just use your explanation as is?