[Top][All Lists]
[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
--
- Re: [Gnump3d-users] Test the pre-release?, (continued)
- Re: [Gnump3d-users] Test the pre-release?, Steve Kemp, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, David Campbell, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, Steve Kemp, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, David Campbell, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, Steve Kemp, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, Ross Mohn, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, Steve Kemp, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, Ross Mohn, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, Stuffed Crust, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, Steve Kemp, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?,
Steve Kemp <=
- Re: [Gnump3d-users] Test the pre-release?, Stuffed Crust, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, Ross Mohn, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, David Campbell, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, Chris Hendrickson, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, Stuffed Crust, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, David Campbell, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, Stuffed Crust, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, David Campbell, 2006/08/31
- Re: [Gnump3d-users] Test the pre-release?, Jack Twilley, 2006/08/31