gnump3d-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnump3d-users] Test the pre-release?


From: Steve Kemp
Subject: Re: [Gnump3d-users] Test the pre-release?
Date: Thu, 31 Aug 2006 17:55:14 +0100
User-agent: Mutt/1.5.9i

On Thu, Aug 31, 2006 at 05:08:54PM +0100, Steve Kemp wrote:
> On Thu, Aug 31, 2006 at 11:59:51AM -0400, Stuffed Crust wrote:
> > On Thu, Aug 31, 2006 at 03:16:31PM +0100, Steve Kemp wrote:
> > >   Perhaps rename the 3.0 pre-release to 2.9.9 and make a 3.0 codebase
> > >  from scratch using SQLite + HTML::Template, etc?
> > 
> > I'd keep it simpler, actually.  Migrate to SQLite first, make that v3.0. 
> 
>   The migration to sqllite would be fairly simple, agreed.

  Actually thinking about it a little more this falls into two
 parts:

    1. Changing the tag cache to be a database.

    2. Creating a database schema.

  The latter might be a challenge.  I'm wondering if it makes sense
 to actually serve files by path in the future, since that is what
 allows the basic-auth sidestepping.

  In my newer program I have a schema like this:

  table directory
  {
    int id;
    int parent
    char name
  };

  table songs
  {
    int id;
    int directory;
    char name
  }

  # I can never decide whether to have a table with entries for
  # each song such as "artist", "title", "album", "genre".  So I
  # do it like this which allows future-proofing .. kinda.
  table tags
  {
     int id;
     char name
     char value
  }

   This leads to entries like this:

   # directories beneath /home/mp3
   (1, 0, "Abba" )   => /home/mp3/Abba
   (2, 1, "Hits" )   => /home/mp3/Abba/Hits

   # files
   (1, 1, "Testing.mp3") => /home/mp3/Abba/Hits/Testing.mp"
   (2, 0, "Blah.mp") => /home/mp3/Abba/Blah.mp"

   # tags
   (1, "Artist", "Abba")
   (1, "Album", "Hits")

   (2, "Artist", "Abba" )
   (2, "Album", "Misc collection")

  I then actually stream songs via the file ID, so instead of
  requesting:

    http://server:port/Abba/Blah.mp3   or
    http://server:port/Abba/Misc/Testing.mp3 

   We use links like this:

    http://server:port/track/1
    http://server:port/track/2
  
   I'm not sure if that makes sense globally or not - downsides is that
  there could be spidering done easily.  (Atlhoug "track" could be user
  selected?).  Plus sides is that we don't ever care about HTTP encoding
  decoding, etc.

Steve
-- 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]