Re: [core-dev] iTunes playlist sharing
Daniel Naab <[email protected]> Thu, 10 Feb 2005 02:33:01 -0600
| Newsgroups | gmane.network.gnutella.limewire.core.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi Sam, My original thoughts after looking at the code is that Applescript could be used to get the pathnames of songs of a given iTunes playlist. I suppose I'd have to look into it a bit more to make sure it wouldn't interfere with any other potential way of importing files into the Limewire system. From what I can tell, though, we're basically talking about a collection of files that could come from any source.... currently, though, the import logic is based on the idea that everything is coming from a "directory." Limewire is grabbing some from a group of directories and sharing them, but I don't see any reason why it can't share a group of "files," irrespective of where it exists on the file system. It'd just require some putzing with the code that returns the list of files that's associated with the global setting. What I'm considering is a generic interface of "import sources," of which 'X' amount of sharable items may be associated with. A "directory" is a simple example, but something like a more complex rule based system of "share this, but not this" gives some more interesting possibilities to the app. Not too much code touches this pref, so it probably won't be too difficult to build such a system off of what's already there... I'll take a look at it tomorrow, when I'm a bit more awake. :) Thanks for the quick response, and take care, Dan On Feb 9, 2005, at 11:00 PM, Sam Berlin wrote: > Hi Dan, > > Welcome to the LimeWire community! > > The wish-list is somewhat out-of-date, but there's plenty of great > ideas on > there, including the one you looked at. To be perfectly honest, I'm > not > exactly sure what "Sharing portions of iTunes selections by choosing a > playlist" means. My guess is that it means LimeWire can detect > playlists in > iTunes and offer to share (via LimeWire) the files in certain > playlists. It > could also mean that LimeWire can share more playlists via DAAP (the > protocol that lets iTunes see & play LimeWire's playlists in > real-time). > Based on your comments, I'm guessing it's the former. > > Your analysis seems to be spot-on. Altering DIRECTORIES_TO_SHARE > seems to > be the "correct" way to do it, though it is plagued with much greater > difficulty. If you do want to go this route, there are further > customizations that might be fun to add along the way, such as the > ability > to share selected files within a directory (instead of the entire > directory), to not share subdirectories, etc... These are all > features that > we'd like to see added, time permitting. Specifically, when native > 'drop' > support is added (right now just 'drag' support exists), we'd like to > be > able to have folks drop files/folders onto LimeWire and have LimeWire > ask if > they'd like to share those files -- this would require LimeWire to be > able > to share specific files instead of full folders. > > That aside, adding PLAYLISTS_TO_SHARE is really much easier, and gets > the > job done just as well. > > One question, though, is how would LimeWire know what iTunes playlists > exist? Would it be scanning for m3u playlists, or is there some way of > retrieving the playlists from iTunes? On OSX, LimeWire could use > AppleScript to find out. On Windows, there's a COM SDK for iTunes > that's > available (but that would require some native code that can interface > COM > with Java). Personally, I think it'd suffice to be able to create > 'share > playlists' within LimeWire -- pseudo-directories that are really a > collection of files, so that someone using LimeWire can easily > share/unshare > them at will. > > Feel free to keep mailing here to let us know how it's going, or to > ask for > more info. > > Thanks, > Sam > >> -----Original Message----- >> From: [email protected] [mailto:core-dev- >> [email protected]] On Behalf Of Daniel Naab >> Sent: Wednesday, February 09, 2005 7:11 PM >> To: [email protected] >> Subject: [core-dev] iTunes playlist sharing >> >> Greetings, >> >> Curiosity has gotten the best of me, and I've recently done a CVS >> checkout and thought I'd tackle one of the items on the "wish-list." >> I >> hope the following question hasn't been detailed in the bug tracking >> system already, but it seems to be down right now. >> >> One of the items on the list is "Sharing portions of iTunes selections >> by choosing a playlist." After looking at the code I see there a >> couple of ways it could be tackled. >> >> The settings system is storing all the user selected directories in a >> FileArraySetting called DIRECTORIES_TO_SHARE. Ideally, instead of >> maintaining a list of Files, this would be a list of an interface >> providing access to the available files in that directory (or >> playlist). Alternatively, a second setting called something like >> PLAYLISTS_TO_SHARE could be created and additional logic would be >> added >> elsewhere. >> >> The first option seems the best, as it would also implicitly allow >> other groupings of files to be shared - i.e., playlists of another >> type >> or even a dynamic "smart" search where the user could apply detailed >> rules to a certain directory or drive. It would, however, also >> require >> code changes in several places to generalize the access of available >> files. >> >> I'll try and tackle the problem in this way, but want to make sure I'm >> not stepping on any design decisions already made. Is there any >> reason >> not to do this? >> >> Thanks, and good work on Limewire! >> >> Dan Naab >> >> _______________________________________________ >> core-dev mailing list >> [email protected] >> http://www.limewire.org/mailman/listinfo/core-dev > > _______________________________________________ > core-dev mailing list > [email protected] > http://www.limewire.org/mailman/listinfo/core-dev _______________________________________________ core-dev mailing list [email protected] http://www.limewire.org/mailman/listinfo/core-dev