Hello,

I updated my GSoC proposal according to the feedback I received. I’m
looking forward for any suggestions you may have for improving my proposal.

Thank you,

Irina


On Tue, Apr 30, 2013 at 1:02 AM, Irina Grosu <[email protected]>wrote:

> Hello,
>
> I have just submitted a GSoC proposal for the Cloud Library Support idea.
> It is not in the final form, but it would be highly appreciated if you
> could give me some feedback regarding my proposal. In the following days I
> will update the proposal, adding more details about the implementation and
> adding also the information that is currently missing. I will also adapt
> the proposal using the information obtained from the reviews. I’m having
> some issues with formatting the proposal but I hope to fix this problem
> soon.
>
> Thank you,
>
> Irina
>
> On Thu, Apr 25, 2013 at 12:34 AM, RJ Ryan <[email protected]> wrote:
>
>> Hi Irina,
>>
>>
>> On Wed, Apr 24, 2013 at 5:21 PM, Irina Grosu <[email protected]>wrote:
>>
>>> Hello RJ,
>>>
>>> Thanks for the updates and clarifications. I listed Jamendo because it
>>> was the first service I managed to work with. Today, I managed to use
>>> SoundCould’s Rest API to search and download music making GET requests, so
>>> this will be part of my proposal too.
>>>
>>> Going through the code, I've seen that SoundSource doesn’t provide a way
>>> to stream from an online service. That is why I asked if I’m allowed to
>>> download the audio file (and also because I didn’t know what to do from a
>>> legal point of view).
>>>
>> Yep, we need obey the terms of the APIs and respect the artist's wishes.
>> For this reason, when we use an API that only supports streaming (e.g. a
>> SoundCloud song that is streamable but not downloadable) we must respect
>> that and not allow a Mixxx user to download the song permanently to their
>> hard drive. We should only save the file to a temporary location as an
>> implementation detail and delete the file when Mixxx closes. In the case
>> that the API allows downloading (for example, a SoundCloud song that has
>> been marked as downloadable by the artist) then we should allow the user to
>> permanently download the song to their library since they could just as
>> easily do the same by going to the SoundCloud page for the song in a web
>> browser.
>>
>>
>>
>>> The way that I see my proposal is: the user will be able to make queries
>>> regardless the cloud service he is using. After the information is
>>> collected from the user, a request, specific to each service, will be made
>>> (using its API), and after a response is received (XML or JSON) it is
>>> parsed. After this, the relevant information (artist name, track name,
>>> download url, etc.) will be delivered to the user. This information
>>> delivered to the user should be the same for each service. In this way, a
>>> new cloud service will only need to implement how to make a request with
>>> its API using the information provided by the user, and how to parse the
>>> response in order to give the user the response in the desired format.
>>>
>>
>> Sounds good to me.
>>
>>
>>
>>>  I was thinking that it will be useful for the user to also have the
>>> possibility to download music from his personal cloud storage (for example
>>> Google Drive). This would imply an additional authentication module, but
>>> besides this, the searching and retrieving information mechanism will be
>>> the same as for a cloud service like SoundCloud. What do you think about
>>> this?
>>>
>> Yep -- each individual module will need to optionally support a UI for
>> authentication. Maybe this is best done in the preferences when you enable
>> a particular module? For example, the Spotify API is only available to
>> premium subscribers so they will need to enter their credentials.
>>
>>
>>> I’m working at my proposal as we speak and I’ll let you know when a
>>> first version will be available.
>>>
>>> Looking forward to it -- best regards,
>> RJ
>>
>>
>>> Thank you,
>>>
>>> Irina
>>>
>>>
>>> On Wed, Apr 24, 2013 at 11:10 PM, RJ Ryan <[email protected]> wrote:
>>>
>>>> Hey Irina,
>>>>
>>>> I just wrote some updates to the project description -- please take a
>>>> look:
>>>>
>>>> http://www.mixxx.org/wiki/doku.php/gsoc2013ideas?&#cloud_library_support_soundcloud_spotify_etc
>>>>
>>>> I've written some comments inline:
>>>>
>>>> On Mon, Apr 22, 2013 at 9:56 AM, Irina Grosu 
>>>> <[email protected]>wrote:
>>>>
>>>>> Hello,
>>>>>
>>>>> I have a question regarding the Streaming Services Support GSoC idea.
>>>>> It is wanted to stream directly from the web or the audio file can be
>>>>> downloaded to the computer?
>>>>>
>>>>> For example, using Jamendo’s Rest API, I’m allowed to search files and
>>>>> retrieve information in the JSON format. I’m able to parse the result and
>>>>> retrieve the Url of the resource (besides other information). Using that
>>>>> Url I’m able to receive its content over the network. Now, I don’t know if
>>>>> I can save the file to the computer, and pass to the Mixxx classes the 
>>>>> file
>>>>> location and use it as a normal file, or I should only store the content 
>>>>> as
>>>>> a temporary object (I could use QTemporaryObject). If the file would be
>>>>> permanently saved to the computer, the user will be allowed to play the
>>>>> file everytime he wants, and will not need to make another query to 
>>>>> Jamendo.
>>>>>
>>>>> Jamendo’s license says that the music can be downloaded as long it is
>>>>> for non-commercial use.
>>>>>
>>>>
>>>> I know the original description listed Jamendo but please don't make it
>>>> the focus of your proposal. It is free culture music but the impact of
>>>> including a service like that is pretty low while there is potentially huge
>>>> benefit to going for something like SoundCloud.
>>>>
>>>> I've updated the original description to include some details on the
>>>> issue of streaming or downloading the whole file -- as you may have
>>>> discovered Mixxx does not support SoundSource's that do not know their
>>>> length. This poses a problem for streams. You only need to deal with
>>>> downloading the file in V1 but should leave room in your design such that
>>>> we could transition to streaming in the future. If you end up with free
>>>> time at the end of the summer you could begin working on the changes
>>>> required to support a streaming SoundSource.
>>>>
>>>>
>>>>>  What method do you think I should follow in my proposal?
>>>>>
>>>>> Thank you,
>>>>>
>>>>> Irina
>>>>>
>>>>> On Thu, Apr 18, 2013 at 11:34 PM, Irina Grosu <[email protected]
>>>>> > wrote:
>>>>>
>>>>>> Hello,
>>>>>>
>>>>>> My name is Irina Grosu and I'm a first year Master student at the
>>>>>> Faculty of Computer Science from Iasi, Romania. I’m interested in the
>>>>>> “Streaming Services Support” GSoC project idea.
>>>>>>
>>>>>> I have already contacted RJ this week, but I wanted to introduce
>>>>>> myself here, also. I took this week to get used to Mixxx and, as I 
>>>>>> learned
>>>>>> more about it, I’ve become more interested and excited about 
>>>>>> collaborating
>>>>>> with your organization.
>>>>>>
>>>>>> Last year, I was a GSoC student, working for The Outercurve
>>>>>> Foundation and it was a great experience for me, from which I learned a
>>>>>> lot. I was also happy that I was able to put my skills and knowledge into
>>>>>> practice, working on something that it is used worldwide. If you want to
>>>>>> find out more about the project that I worked on last year at GSoC, and
>>>>>> about my professional experience, feel free to visit my website:
>>>>>> http://students.info.uaic.ro/~irina.grosu
>>>>>>
>>>>>> As I have previously mentioned, I’m interested in the Streaming
>>>>>> Services Support idea. It is my understanding that this project must
>>>>>> consist in a modular system that will make it easy for developers to add
>>>>>> new API support for streaming services.
>>>>>>
>>>>>> I was thinking that it would be interesting to also stream radio,
>>>>>> besides music tracks. As a start, I could provide the user with the
>>>>>> possibility to enter the URL of a radio stream and listen to it. Also, he
>>>>>> would have the possibility to choose from the channels provided by 
>>>>>> popular
>>>>>> streaming sites. I think that SomaFM could be a good fit, and I was able 
>>>>>> to
>>>>>> retrieve information about the provided channels using this xml file:
>>>>>> http://somafm.com/channels.xml. Another streaming media server worth
>>>>>> considering is Icecast.
>>>>>>
>>>>>
>>>> I think this isn't a good fit for Mixxx -- primarily Mixxx is for live
>>>> DJ performances, so listening to radio streams isn't really within the
>>>> scope of the project. Also, as I mentioned before there are serous
>>>> architectural issues in Mixxx that prevent you from making a streaming
>>>> SoundSource so I don't think this would work anyway until we solve those
>>>> issues.
>>>>
>>>>
>>>>
>>>>>  Another nice functionality would be the possibility to search music
>>>>>> over two important sites: Jamendo and Last.fm. I could use multiple 
>>>>>> search
>>>>>> criteria and  retrieve the requested information using the REST API,
>>>>>> provided by both mentioned streaming services.
>>>>>>
>>>>>
>>>> The way I envision the project search is the primary interface to the
>>>> cloud library providers. There's no reason to limit it to just one or two
>>>> sites though -- it should support searching over all the enabled cloud
>>>> library backends.
>>>>
>>>>
>>>>>   Please let me know your thoughts on these ideas. Could this be a
>>>>>> start for my proposal? I would appreciate it if you pointed me in the 
>>>>>> right
>>>>>> direction.
>>>>>>
>>>>>
>>>> With the exception of the few clarifications I made above you seem to
>>>> be on the right track -- feel free to write back with any questions and we
>>>> look forward to reading your application.
>>>>
>>>> Best regards,
>>>> RJ
>>>>
>>>>
>>>>
>>>>>   Thank you,
>>>>>>
>>>>>> Irina
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> Precog is a next-generation analytics platform capable of advanced
>>>>> analytics on semi-structured data. The platform includes APIs for
>>>>> building
>>>>> apps and a phenomenal toolset for data science. Developers can use
>>>>> our toolset for easy data analysis & visualization. Get a free account!
>>>>> http://www2.precog.com/precogplatform/slashdotnewsletter
>>>>> _______________________________________________
>>>>> Get Mixxx, the #1 Free MP3 DJ Mixing software Today
>>>>> http://mixxx.org
>>>>>
>>>>>
>>>>> Mixxx-devel mailing list
>>>>> [email protected]
>>>>> https://lists.sourceforge.net/lists/listinfo/mixxx-devel
>>>>>
>>>>
>>>>
>>>
>>
>
------------------------------------------------------------------------------
Get 100% visibility into Java/.NET code with AppDynamics Lite
It's a free troubleshooting tool designed for production
Get down to code-level detail for bottlenecks, with <2% overhead.
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap2
_______________________________________________
Get Mixxx, the #1 Free MP3 DJ Mixing software Today
http://mixxx.org


Mixxx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mixxx-devel

Reply via email to