Getting rid PlaylistItem and Creating a new Playlist

"David Hough" <[email protected]> Thu, 20 Apr 2006 13:46:33 +0100
Newsgroups gmane.comp.audio.zinf.devel
Message-ID <[email protected]>
Hi,

Currently Zinf has two seperate ways of looking up track metadata with =20
both currently working in parallel, the new MusicDB used by the new =20
MusicBrowserMM and the old MusicCatalog used by everything else.

The old MusicCatalog is usually accessed via a PlaylistItem which was =20
stored in the Playlist. The Playlist dealt with the actual process of =20
looking up metadata and associating it with each track in the playlist. =20
The new MusicDB architecture, however, seperates the metadata from the =20
track in the playlist, with metadata being looked up as needed by the =20
plugins using the MusicDB.

Therefore, by switching everything to using the new MusicDB, there is no =
=20
longer a need for PlaylistItem or MusicCatalog. As the use of PlaylistIte=
m =20
is so ingrained in the current implementation of the Playlist, when =20
getting rid of PlaylistItem it is probably much easier to just throw away=
 =20
the old playlist and start over.

I've made a start on doing exactly this, and now have some vaugly working=
 =20
code avaliable from my Arch repositry as the branch

[email protected]/zinf--noitem--0.1

I've deleted both the old MusicCatalog and Playlist, and started work on =
a =20
prototype of a new Playlist that just uses track URLs instead of =20
PlaylistItem. This obviously requires some quite significant changes to =20
the rest of Zinf as well, some of which I've also done, but lots of thing=
s =20
have also been broken and not yet fixed by this.

I've currenlty only got the begginings of a new plylist implementation =20
(you can only add tracks at the moment, not move, remove, sort them etc.)=
. =20
I've also split it into two seperate classes, PlaylistManager and =20
Playlist. PlaylistManager is intended to deal with switching between =20
multiple playlists, and providing the interface to the Player so it does =
=20
not need to know about multiple playlists, and the Playlist is simply the=
 =20
list of URLs with an associated current index.

If anyone has any thoughts/code on what the playlist implementation shoul=
d =20
look like, please post them to the mailing list so we can create a good =20
replacment for the old playlist.

Cheers,
David

--=20
Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/


-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job ea=
sier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronim=
o
http://sel.as-us.falkag.net/sel?cmd=3Dlnk&kid=3D120709&bid=3D263057&dat=3D=
121642