Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add provider Bandcamp #296

Open
4www opened this issue Jan 9, 2019 · 1 comment
Open

Add provider Bandcamp #296

4www opened this issue Jan 9, 2019 · 1 comment

Comments

@4www
Copy link
Contributor

4www commented Jan 9, 2019

About the upcoming media providers for radio4000 videos/music, Bandcamp seems to be the one to integrate first (ex: https://buymusic.club).

Current Database design

Right now we have the track model with the following keys:

  • track.url -> the youtube media (video)
  • track.discogsUrl -> the discogs release corresponding to the trak.url.

Questions:

All in all, where/how should bandcamp integrate?

  • should a radio4000 track model be able to have a youtube url and a bandcamp url?
  • how are youtube, discogs, and bandcamp url different? How should they be stored on the track model? https://github.com/internet4000/radio4000-api#track
  • is bandcamp url different than an other provider, ex soundcloud? (track.bandcampUrl / track.soundCloudUrl)
  • should we link to bandcamp tracks, or bandcamp releases?
  • if we link a r4 track to a bandcamp release should the radio4000-player play all the music from the release?
  • can the track.url be a bandcamp link (and not youtube — probably will break r4 dl)
  • should the model key bey track.bandcampUrl? A bandcamp release or bandcamp track?

Many more questions, but Database design is now very important to solve.

@4www
Copy link
Contributor Author

4www commented Jan 14, 2019

edit: causes are probably because of royalities for artists (contract not negociated for this kind of stream), or/and cost of an open streaming/api infrastructure.

Bandcamp as a stream provider

I'm starting to be afraid that if we add Bandcamp it is going to be a mess to offer a similar experience than with Youtube, because Bandcamp ecosystem is closed, it has no API to communicate with. Neither for the player nor for the track information.

https://lesdisquesbongojoe.bandcamp.com/album/la-contra-ola
https://lesdisquesbongojoe.bandcamp.com/track/esplendor-geom-trico-mosc-est-helado

^ a Bandcamp album and track URLs

It seems a bit unreliable to get the track information.

(HTML page title cannot also be used, maybe <meta property="og:title" content="La Contra Ola, by Various Artists">).

Therefore it does not seem possible to fill in automatically the track.title in r4 at low cost. Maybe it is a fine downside for Bandcamp users?

Similarly, the player does not seem to be documented.
Not sure if it is possible/worth-it to listen to any events, track ended, loaded etc. to continue with the current radio4000-player features (continuous playing).

Therefore, not sure it is such a good idea to offer it as a provider.

Bandcamp as a download/buy endpoint

In any case, adding Bandcamp can still be seen though on the prism of a uniqueTrack.bandcampUrl.

So not as a media provider for streaming, but as an endpoint for users to buy the release where it's at.

In this case we have to think how the track model, or uniqueTrack (non-existing) could work.

track.bandcampUrl? What if it is an other platform, how should the model offer an infinite possibility of selling ones work.

If we decide to store this information not directly on the track model, but on the media, we could use a new model uniqueTrack to not have to repeat this information on all track models.

Also it could be used to offer suggestions on media associations to user adding a track, which media provider and id already has additional provider informations. Discogs, Bandcamp or other buy platform

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant