Open mixxxbot opened 2 years ago
Commented by: debayanbanerjee Date: 2018-05-11T14:57:08Z
Apart from Be, I think all are on the same page on this.
Spotify integration is important. Recording if not available is of no consequence (yet).
On Fri, 11 May 2018, 16:25 Sean M. Pappalardo, <email address hidden>
wrote:
Those are all good points. (But whether you fork or not is your decision alone. That's the beauty of open-source.) To the other followers of this bug: would you still be interested in this feature if Spotify support was not possible due to their terms of use? I.e. are there other services you would want to use, even if recording was not possible while using them?
-- You received this bug notification because you are subscribed to the bug report. https://bugs.launchpad.net/bugs/938180
Title: Stream Mix integration (youtube, spotify...)
Status in Mixxx: Confirmed
Bug description: It would be very useful if Mixxx could natively buffer songs on the fly from a stream service like youtube or spotify and then be able to play them like local tracks.
To manage notifications about this bug go to: https://bugs.launchpad.net/mixxx/+bug/938180/+subscriptions
Commented by: rob2192 Date: 2018-05-11T15:32:18Z
I think this is very important for the future, streaming is the way most people access music and DJs will go the same way once they trust it not to drop out during a gig.
As for preventing illegal recording of a stream, that should be the streaming plugins job. I would vote for implementing as: if recording is on, the stream won't play. It should be easy and avoids Mixxx restricting features. I would argue that you cannot stop a plugin from checking if recording is enabled as that restricts the freedom of the plugin developer and the streaming service to (at least try and prevent) breaches of the terms of service (which users freely accepted when they signed up).
Just a thought Deezer might be cooperative to pull users from spotify?
You never know a service for DJs which permits recording might even pop up.
Commented by: ferranpujolcamins Date: 2018-05-11T15:37:51Z
Sorry for keep the controversy going, but I stand with be in this issue. Opening the door for concessions to private for profit companies is dangerous.
On Fri, 11 May 2018, 17:15 Paradoxcy,
Apart from Be, I think all are on the same page on this.
Spotify integration is important. Recording if not available is of no consequence (yet).
On Fri, 11 May 2018, 16:25 Sean M. Pappalardo,
wrote: Those are all good points. (But whether you fork or not is your decision alone. That's the beauty of open-source.) To the other followers of this bug: would you still be interested in this feature if Spotify support was not possible due to their terms of use? I.e. are there other services you would want to use, even if recording was not possible while using them?
-- You received this bug notification because you are subscribed to the bug report. https://bugs.launchpad.net/bugs/938180
Title: Stream Mix integration (youtube, spotify...)
Status in Mixxx: Confirmed
Bug description: It would be very useful if Mixxx could natively buffer songs on the fly from a stream service like youtube or spotify and then be able to play them like local tracks.
To manage notifications about this bug go to: https://bugs.launchpad.net/mixxx/+bug/938180/+subscriptions
-- You received this bug notification because you are subscribed to the bug report. https://bugs.launchpad.net/bugs/938180
Title: Stream Mix integration (youtube, spotify...)
Status in Mixxx: Confirmed
Bug description: It would be very useful if Mixxx could natively buffer songs on the fly from a stream service like youtube or spotify and then be able to play them like local tracks.
To manage notifications about this bug go to: https://bugs.launchpad.net/mixxx/+bug/938180/+subscriptions
Commented by: rob2192 Date: 2018-05-11T15:50:54Z
Opening the door for concessions to private for profit companies is dangerous.
It's simple you use a streaming service and abide by the T&C OR you don't use it OR you get a invitation to court. Those ere the three options.
If you want a streaming service to allow you to record you need to fight them not the software that integrates their service. You need to fight for updates to the archaic laws that surround music and give all the power to the big labels.
This is the wrong place to argue for the right to record music.
Commented by: daschuer Date: 2018-05-11T16:26:43Z
Let's have a look to Youtube.
I think it suits to be implemented like this: https://www.mixxx.org/wiki/doku.php/downloaded_streamed_tracks_support
http://doc.qt.io/archives/qt-5.5/qtwebkitexamples-webkitqml-youtubeview-example.html
Probably there is a way to catch the audio stream using QAudioInput. If we pair this with a last.fm view, it could be really slick, because last.fm is able to redirect to youtube, spotify, or amazon music.
Commented by: ywwg Date: 2018-05-11T17:22:02Z
I think it's a reasonable position that Mixxx should only implement this feature, even as a general plugin framework, if there exists at least one streaming service for which the implementation is not a violation of terms and conditions.
Commented by: Be-ing Date: 2018-05-11T18:09:55Z
YouTube is not primarily a music platform. As such, it does not have features that would really make it useful to use with Mixxx. The metadata of YouTube videos is limited to title, description, and the user that uploaded it. There is no reliable way to get track titles, album names, artist names, or other metadata from YouTube. Plus audio quality on YouTube is highly variable and often really bad.
Commented by: Be-ing Date: 2018-05-11T18:18:30Z
This is the wrong place to argue for the right to record music.
While I do believe in the right to record music, that's not the main reason I oppose integrating streaming services into Mixxx. The primary reason is that this would require violating users' freedom to do whatever they want with the software.
Commented by: wrobertson1981 Date: 2018-05-14T04:56:37Z
Hello! Waylon_R, long time watcher, first time commenter. I am with Be on this issue. It is a moral issue at this point. The only way I can see forward, completely leaving it up to people who are not mixxx developers, is by making a plugin interface so complete, that it can hook into everything, including pulling in metadata and sound. This would be like the system Kodi uses, and how plugin developers bring in streams etc, without causing the core Kodi developers direct legal hassle. Kodi developers explicitly say that they do not support streaming from illegal sources, but because their plugin framework is so broad, its technically possible. The plugin does what it wants, and is not obliged to disable any functionality.
No core Kodi developer is known to contribute to copyright infringing plugins, as far as I know, but if one was, it would taint Kodi as a whole. So, in summary, the Mixxx team would have to make a plugin framework so broad as to include metadata I/O and sound I/O but, it would be wise not to start there. And known Mixxx developers should stay away from developing copyright infringing plugins, as they are illegal, and by them doing so, would taint the team and project.
This sounds like a lot of work, I hope it never happens, because Mixxx still has a lot of work ahead of itself in other areas, and I do not wish the efforts of a good team be diluted by tasks that will take a very long time to pay off, for a very limited amount of users.
Commented by: rryan Date: 2018-10-22T16:36:52Z
Can I play devil's advocate and propose a thought experiment?
Let's consider sudo. It violates user freedom, because everyone should have access to ring 0, right? No! It implements a policy or contract. The policy is an agreement between the computer users and its administrator. The users have certain permissions about what they can and can't do with the system. sudo is Free software even though it implements this policy. I assume everyone agrees with this.
Another case: Let's say a bank runs on an AGPL software project, GNUKnox. If GNUKnox were truly free, it would allow its users to transfer money from any account to any other account? No. There's a policy / agreement between the bank and its users about how it will execute transfers and manage the user's money.
Where does this leave us with Mixxx and streaming services? The streaming services will allow users to access music they have a subscription for under certain conditions. There's a contract between the user and the service describing those conditions. We have the option to implement that contract to let the user participate in the contract using Mixxx. How is freedom being impinged here where it isn't being impinged in the above two cases?
Commented by: uklotzde Date: 2018-10-22T17:23:29Z
A similar aspect: I don't use the recording or broadcasting feature and don't care if it is disabled temporarily or not. I wouldn't even notice. Holding back the streaming functionality effectively restricts my personal freedom.
I understand and respect the motivation behind not supporting certain business models. On the other hand I would like to keep the discussions on a technical level, striving for compromises that are acceptable for each stakeholder and without categorically excluding any options upfront.
By providing the source code we enable users to modify the code and build their own, customized version. Our license allows this. I think we can agree to never accept any code contributions that would restrict those rights.
Commented by: daschuer Date: 2018-10-22T21:53:20Z
By providing the source code we enable users to modify the code and build their own, customized version. Our license allows this. I think we can agree to never accept any code contributions that would restrict those rights.
This seems to me to be the most critical point. In case a user uses a Mixxx for to violate his contract with the streaming company, it might throw bad light on Mixxx as a whole, which may leads to backlist Mixxx as streaming client. All our streaming efforts are on a risk, so we should make sure that the forks can be identified as forks.
Does this still match your opinion?
By the way, it is quite easy to record any stream using a loopback device. The user has already the option to violate the contract by using this, independent from Mixxx. Since YouTube pays for GEMA it is even legal in Germany to record YouTube videos :-)
Commented by: uklotzde Date: 2018-10-22T23:19:12Z
Of course including all consequences. We need to make clear that we are not willing to change our license to disallow such modifications. Changing the license wouldn't help, the source code is out of our control after publishing it.
If a shared application token is required that can be revoked at any time and will, I personally would not invest a minute into such a project. It is also an open question how to distribute such a secret(?) token. I'm afraid most services are ruled out just by Mixxx being open-source, i.e. whenever some kind of security by obscurity or validation/signature of the actual code that is running is required.
Why discuss about possible consequences and restrictions that might never become reality? Let's focus on the facts and adhere to the rules, both ours and theirs, as RJ vividly explained. Constructive input and ideas are always welcome, no taboos on thinking!
Commented by: uklotzde Date: 2020-03-19T20:58:12Z
A generic streaming source integration would still be useful, though not for Spotify:
https://djworx.com/spotify-withdraws-from-dj-streaming-apparently-not-the-end-of-the-world/
Commented by: renne Date: 2022-07-25T17:13:10Z
I suggest to add Qobuz. It would be really great to be able to play HiRes music via timecode vinyl records.
Commented by: daschuer Date: 2022-07-25T22:03:07Z
Does Qobuz allow DJing, regarding their terms and conditions? Do they support third party streaming clients? Do they have interest to colboration?
Do these integrations require mainstream code or could someone write a 3rd party plugin to support say, youtube-dl or spotify-downloader ?
https://github.com/ytdl-org/youtube-dl
https://github.com/spotDL/spotify-downloader
I'm not asking about mainline code for obvious reasons, but if someone could write a 3rd party plugin for Mixxx, then this would turn into a non-issue.
I think you can already use the linked tools if you have the required rights and then play the downloaded files with Mixxx. How would the suggested 3rd party plugin work?
Maybe mixxx could use some ready solution gathering multiple music services (like mopidy)? Then integration may be easier
I'm not expert, but then stream manipulation and metadata could be entirely performed by such a service. It also saves lots of issues with providers permissions. I don't know, unfortunately, if handling stream (even as some fifo) is possible by mixxx.
That sounds interesting. How do you think will Mixxx integrate with mopidy? Can you draft a data flow diagram?
Im going to take a look at integrating Tidal and SoundCloud into Mixxx, anyone startede on this yet?
Not yet. The difficult part is how to do it "correct" in terms of not violating any license terms. How is the situation with Tidal and SoundCloud?
Do you have already detailed plans?
Not yet. The difficult part is how to do it "correct" in terms of not violating any license terms. How is the situation with Tidal and SoundCloud?
Do you have already detailed plans?
I think the safe way would be integrating with a third party, like Mopidy.
So IIUC, that would be a new library feature which is basically a Mopidy client, incl. any of the available extensions?
How would the actual playback happen?
Ive read a bit up on the license on your forum about spotify. But by now i see Tidal and SoundCloud integrated into many dj programs, so i cant see why it should be a problem. I think it should be posible with the licensing rules of the Tidal and SC plans. SC even have a plan specificly for djs who wants to play for a crowd. I plan on integrating clemetine and disabling recording when its active.
From: ronso0 @.> Sent: Wednesday, March 20, 2024 12:42:32 PM To: mixxxdj/mixxx @.> Cc: simoher @.>; Comment @.> Subject: Re: [mixxxdj/mixxx] Stream Mix integration (youtube, spotify...) (Issue #6277)
So IIUC, that would be a new library feature which is basically a Mopidy client, incl. any of the available extensions?
How would the actual playback happen?
— Reply to this email directly, view it on GitHubhttps://github.com/mixxxdj/mixxx/issues/6277#issuecomment-2009374825, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AA4XFQ72CFPW3QCVDFTM3ADYZFY2RAVCNFSM6AAAAAATLS4IQ6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMBZGM3TIOBSGU. You are receiving this because you commented.Message ID: @.***>
I plan on integrating clemetine and disabling recording when its active.
As discussed earlier (at lengths), since it's almost certainly trivial to disable such a record protection, any integration of APIs / apps (Clementine) that natively allow playing copyrighted content will not be merged into Mixxx since it would allow circumventing any copyright protection implemented by the root APIs.
No issue however if you route such content into Mixxx via Aux or some loopback device. IMHO (and IIUC) integrating MPD/Mopidy would also require this kind of routing, with the difference that vanilla Mopidy does not provide access to SC, Tidal etc..
Just some thoughts, IANAL
But the could just record directly from clementine too?? If someone wants to scrape the tracks they could also just hack clementine and record that, i dont see the problem, so I will just make this for myself..
Thanks for the reply!
From: ronso0 @.> Sent: Wednesday, March 20, 2024 1:35 PM To: mixxxdj/mixxx @.> Cc: simoher @.>; Comment @.> Subject: Re: [mixxxdj/mixxx] Stream Mix integration (youtube, spotify...) (Issue #6277)
I plan on integrating clemetine and disabling recording when its active.
As discussed earlier (at lengths), since it's almost certainly trivial to disable such a record protection, any integration of APIs / apps (Clementine) that natively allow playing copyrighted content will not be merged into Mixxx since it would allow circumventing any copyright protection implemented by the root APIs.
No issue however if you route such content into Mixxx via Aux or some loopback device. IMHO (and IIUC) integrating MPD/Mopidy would also require this kind of routing, with the difference that vanilla Mopidy does not provide access to SC, Tidal etc..
Just some thoughts, IANAL
— Reply to this email directly, view it on GitHubhttps://github.com/mixxxdj/mixxx/issues/6277#issuecomment-2009464245, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AA4XFQZHUBNEEMGFS4BWW3DYZF67PAVCNFSM6AAAAAATLS4IQ6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMBZGQ3DIMRUGU. You are receiving this because you commented.Message ID: @.***>
so I will just make this for myself
Feel free to open a PR so the details can be discussed, just don't expect it to be merged, that's all I'm trying to say.
Yes, I see the problem. Will see what I can do.. Thanks mate!
From: ronso0 @.> Sent: Wednesday, March 20, 2024 1:47 PM To: mixxxdj/mixxx @.> Cc: simoher @.>; Comment @.> Subject: Re: [mixxxdj/mixxx] Stream Mix integration (youtube, spotify...) (Issue #6277)
so I will just make this for myself
Feel free to open a PR so the details can be discussed, just don't expect it to be merged, that's all I'm trying to say.
— Reply to this email directly, view it on GitHubhttps://github.com/mixxxdj/mixxx/issues/6277#issuecomment-2009487183, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AA4XFQ5QUBIKRKEV4BR245TYZGAODAVCNFSM6AAAAAATLS4IQ6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMBZGQ4DOMJYGM. You are receiving this because you commented.Message ID: @.***>
so I will just make this for myself
Feel free to open a PR so the details can be discussed, just don't expect it to be merged, that's all I'm trying to say.
That sounds reasonable, but on the other hand... MIXXX suppports plugins, right? So, theoretically speaking, would this be feasible as a 3rd party plugin?
I don't see an issue that we integrate an MPD client into Mixxx. MPD itself puts no license constrains to Mixxx. How is the sound streamed in that case?
I think for looping we need to buffer a whole track. The required Aux buffering is also a challenge. https://github.com/mixxxdj/mixxx/issues/7792
MIXXX suppports plugins, right?
Nope, no plugins. External effect plugins (LV2), yes, but each library feature that may appear to be 'external' or 'pugin' (Serato, Traktor, ...) is built into Mixxx.
Seems related to https://github.com/mixxxdj/proposals/pull/2
Did anyone took a look at this? https://tidal.com/djs
@eberleidacunha I don't think so. We need two points, a contributor implementing this and a permission to use the Tidal API. Do you have interest to help?
Reported by: ferranpujolcamins Date: 2012-02-21T21:29:08Z Status: Confirmed Importance: Wishlist Launchpad Issue: lp938180 Tags: cloud
It would be very useful if Mixxx could natively buffer songs on the fly from a stream service like youtube or spotify and then be able to play them like local tracks.