Zinf status update/review

Kristian Kvilekval <[email protected]>
Newsgroups gmane.comp.audio.zinf.devel
Message-ID <1063666345.4208.33.camel@krispc>
Alot of work has been completed in the last few months
and it seems like a good point to review.

Overall, it has been a relatively good period of Zinf development:

1.  Andreas Rottmann gave zinf a new build system making development
    faster and while making it easier to add new components.

2.  Robert Hart has ported zinf to Gtk2 giving us an updated look and
    better performance.  As I look through archives, people have been
    asking for this quite a while.

3.  David Hough has contributed a GtkMM C++ browser that is easily
    extended and has several interesting new features, including
    on-demand loading for much faster processing of large music lists
    as well as extra and configurable views (classic, new, imusic).

4.  Recently, I have added the zinf--mdb branch which has a music
    collection service that permits finer and control over metadata
    sources and cataloguing.
    This component permits:

    a: Arbitrary tags for those sources that permit it.  
       For example,  ID3v1 has limited, while vorbis is open
       ended.  Local databases can be configured to store all, or
       some tags.

    b: Layered metadata for accessing increasingly costly/reliable
       sources: memory, local database, file tags, musicbrainz.

    c: Configurable metadata sources: filepath, tags, musicbrainz.

    d: Extended metadata query ability through url like interface:
       Example:  zinf://artist is the list of all know artists

    e: Filesystem as database concept (browsing,metadata).

    f: Multiple local database choices: gdbm sacrifices startup
       time for faster processing with more memory, useful for small
       music collections while metakit provides a memory-mapped
       database with good query abilities and fast startup times
       allowing really *big* music collections.


Current Work:
    
    I am finishing the new music collection system integration.  This
    is a relatively easy but slow process.  So far I have integrated
    it with the GtkMM browser, and the main player.  It still needs
    work on the tag editor and of course the preference system.

    The Playlist and PlaylistItem are being replaced in  favor
    of a much lighter weight Playerlist class coupled with the music
    collection classes.  This is purely a cleaning job to reduce
    dependencies among components.    Player, catalog, and browser
    only talk about URLs/song index to each other.   The old interfaces
    will remain until the win32 port catches up or we succeed in
    compiling the new code with mingw32.

    As soon as these tasks are done I will commit the new system
    to CVS.   Unfortunately, I am swamped for the next month
    so I am not sure how quickly this will get done.

Work To Be Done:

o  GtkMM Browser completion cd, menus, views, dnd, dir browsing.
o  Musicbrainz  tagging.
o  Permit non-X builds again by determing true dependent libraries.
o  Other uncommited patches (stream slicing, etc).
o  i18n cleanups and at least one translation.
o  Release wrap-up : 2.3.0-pre1


These are all up for grabs .. any takers? 


Possible Future Work:

? mingw32 compile (GtkMM, boost, metakit, vorbislib, id3lib support).
? Cruft cleanup. (download manager, id3v1, id3v2, etc).
? software equalizer
? pipeline/player internals update for increased input/output plugins.
? Music organizer (organize your local files based on tags).



That's it.. A big thanks to all the developers that 
contributed their time and effort.

Comments and contributions are always welcome.




-- 
Kristian G. Kvilekval
email:[email protected] office:(805)893-4276 http://www.cs.ucsb.edu/~kris



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.