Discussion:
Hierarchical index vs text searching [Warning, l ong]
Jake Hawkes
2002-02-01 22:40:11 UTC
Permalink
The filesystem database is a great, easy way to to do it.

Since this is open source, how hard would it be to have a generic interface so that we can develop
interfaces for anything.

Once we start thinking about DBs, it important to realise that everyone is going to want to do it
differently, and some (or most) may have already got a database. That said, it would be up to the
user to develop an interface to their database, or use the existing (implied) filesystem method.

I'm thinking of some way to translate between how the simp3 thinks about tracks to play (filenames
really) and tracks to select (a menu system).

Would the slimp3 still navigate the menu and controll the input etc, but simply display a menu
created by another module? The default would be to have a file system module that hash-ed and
cached filenames from a directory (or directories) and passed (using XML maybe) a menu structure
to the slimp3 to display. Then one could write a module to interface to anything and again
present a menu structure to display.

It would be important to make the slimp work straight of the box, but it would also then be easier
to plug it in to existing systems.

Just my two cents. When I break my leg this saturday skiing I will have alot of time to do this
:)
I've learned two things from building my pre-SliMP3 mp3 system for my
1. The information in the ID3 tags from CDDB is so bad that it's
nearly useless. Nearly every CD I ripped needed to have its ID3
information edited in a major way.
2. Everybody has a different idea of how to organize and categorize
their music.
1. Ignore the ID3 information and use the file name as the song name.
2. Put every song for a given album in its own directory, name that
directory the same as the album.
3. Put every album for a given artist in its own directory and name
that directory for the artist.
4. Create a directory of category directories, each of which contains
artist directories which each contain symlinks to existing album
directories.
I change the categories for a given album by creating and deleting
symlinks, and I can have albums in multiple categories. I can change
the titles of songs/albums/artists by simply renaming files. When
you think of the file system as a particular kind of database, you
realize that it works pretty good.
That said, I think that if we do intend on creating
mood/genre/categories in SliMP3 (and I think we should) we should do
it separately from the organization of the files and store the
information in a simple SliMP3-only database. (Sean: here's a chance
for us to use DBMs like you've always dreamed!) I'd like to avoid
moving or changing the existing MP3 files if at all possible.
NB: I'm a little scared of using MySQL or some other "real" database
because the complexity of it. If someone can cobble together a
demonstration of a database that can maintain our cross-platform
capabilities and be easy to install and invisible to maintain, then
I'd love to be able to use it with SliMP3. Otherwise, let's just
keep on keeping it simple.
-dean
Can the ID3 Genre be set to an arbitrary string?
ID3v1 - no, it is a one byte number
ID3v2 - yes, it is a string
Is there room in the ID3 tags for such a "mood" descriptor?
In ID3v2 there is a Mood tag (TMOO)
In ID3v1 you could always use the Comments field. Only 30 chars though.
See www.id3.org for full ID3 specs. Note that the MP3::Info module that we
are using may or may not support all the ID3v2 tags desired. Of course that
is just incentive to hack it up to make it better (and send the changes to
the maintainer).
Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
=====
---
Jacob Hawkes, B. Eng (CSE)
Programmer / Analyst
Metso Automation
jacob.hawkes-***@public.gmane.org
jakehawkes2001-/***@public.gmane.org (while onsite in Venezuela)

__________________________________________________
Do You Yahoo!?
Great stuff seeking new owners in Yahoo! Auctions!
http://auctions.yahoo.com

------------------------ Yahoo! Groups Sponsor ---------------------~-->
Sponsored by VeriSign - The Value of Trust
Secure all your Web servers now - with a proven 5-part
strategy. The FREE Server Security Guide shows you how.
http://us.click.yahoo.com/iWSNbC/VdiDAA/yigFAA/rIp0lB/TM
---------------------------------------------------------------------~->

To unsubscribe from this group, send an email to:
slimp3-dev-unsubscribe-***@public.gmane.org



Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
dean blackketter
2002-02-01 22:29:57 UTC
Permalink
I've learned two things from building my pre-SliMP3 mp3 system for my
home and the homes of several of my friends and family:

1. The information in the ID3 tags from CDDB is so bad that it's
nearly useless. Nearly every CD I ripped needed to have its ID3
information edited in a major way.

2. Everybody has a different idea of how to organize and categorize
their music.

Given this, the system that I use at home is pretty simple:

1. Ignore the ID3 information and use the file name as the song name.

2. Put every song for a given album in its own directory, name that
directory the same as the album.

3. Put every album for a given artist in its own directory and name
that directory for the artist.

4. Create a directory of category directories, each of which contains
artist directories which each contain symlinks to existing album
directories.

I change the categories for a given album by creating and deleting
symlinks, and I can have albums in multiple categories. I can change
the titles of songs/albums/artists by simply renaming files. When
you think of the file system as a particular kind of database, you
realize that it works pretty good.

That said, I think that if we do intend on creating
mood/genre/categories in SliMP3 (and I think we should) we should do
it separately from the organization of the files and store the
information in a simple SliMP3-only database. (Sean: here's a chance
for us to use DBMs like you've always dreamed!) I'd like to avoid
moving or changing the existing MP3 files if at all possible.

NB: I'm a little scared of using MySQL or some other "real" database
because the complexity of it. If someone can cobble together a
demonstration of a database that can maintain our cross-platform
capabilities and be easy to install and invisible to maintain, then
I'd love to be able to use it with SliMP3. Otherwise, let's just
keep on keeping it simple.

-dean
Can the ID3 Genre be set to an arbitrary string?
ID3v1 - no, it is a one byte number
ID3v2 - yes, it is a string
Is there room in the ID3 tags for such a "mood" descriptor?
In ID3v2 there is a Mood tag (TMOO)
In ID3v1 you could always use the Comments field. Only 30 chars though.
See www.id3.org for full ID3 specs. Note that the MP3::Info module that we
are using may or may not support all the ID3v2 tags desired. Of course that
is just incentive to hack it up to make it better (and send the changes to
the maintainer).
Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
------------------------ Yahoo! Groups Sponsor ---------------------~-->
Sponsored by VeriSign - The Value of Trust
Pinpoint the right security solution for your company - FREE
Guide from industry leader VeriSign gives you all the facts.
http://us.click.yahoo.com/lWSNbC/WdiDAA/yigFAA/rIp0lB/TM
---------------------------------------------------------------------~->

To unsubscribe from this group, send an email to:
slimp3-dev-unsubscribe-***@public.gmane.org



Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
Jake Hawkes
2002-02-01 22:25:12 UTC
Permalink
What's missing is an [easy to use] API into the server.pl that will allow
3rd parties to inject playlists or commands through to a SliMP3. One (of
sorts) exists today--the web server interface. The functionality is 99%
there already.
I'd like to see some sort of modularity so that anyone could write blocks to plugin. This sounds
hard, but it doesn't have to be. Trouble is making it platform independant, which I think is very
important.

-J

=====
---
Jacob Hawkes, B. Eng (CSE)
Programmer / Analyst
Metso Automation
jacob.hawkes-***@public.gmane.org
jakehawkes2001-/***@public.gmane.org (while onsite in Venezuela)

__________________________________________________
Do You Yahoo!?
Great stuff seeking new owners in Yahoo! Auctions!
http://auctions.yahoo.com

------------------------ Yahoo! Groups Sponsor ---------------------~-->
Sponsored by VeriSign - The Value of Trust
Pinpoint the right security solution for your company - FREE
Guide from industry leader VeriSign gives you all the facts.
http://us.click.yahoo.com/lWSNbC/WdiDAA/yigFAA/rIp0lB/TM
---------------------------------------------------------------------~->

To unsubscribe from this group, send an email to:
slimp3-dev-unsubscribe-***@public.gmane.org



Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
Moser, Robert L. II
2002-02-01 22:08:29 UTC
Permalink
Can the ID3 Genre be set to an arbitrary string?
ID3v1 - no, it is a one byte number
ID3v2 - yes, it is a string
Is there room in the ID3 tags for such a "mood" descriptor?
In ID3v2 there is a Mood tag (TMOO)
In ID3v1 you could always use the Comments field. Only 30 chars though.

See www.id3.org for full ID3 specs. Note that the MP3::Info module that we
are using may or may not support all the ID3v2 tags desired. Of course that
is just incentive to hack it up to make it better (and send the changes to
the maintainer).

------------------------ Yahoo! Groups Sponsor ---------------------~-->
Sponsored by VeriSign - The Value of Trust
Pinpoint the right security solution for your company - FREE
Guide from industry leader VeriSign gives you all the facts.
http://us.click.yahoo.com/pCuuSA/WdiDAA/yigFAA/rIp0lB/TM
---------------------------------------------------------------------~->

To unsubscribe from this group, send an email to:
slimp3-dev-unsubscribe-***@public.gmane.org



Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
dean blackketter
2003-02-22 13:04:23 UTC
Permalink
<!doctype html public "-//W3C//DTD W3 HTML//EN">
<head><style type="text/css"><!--
blockquote, dl, ul, ol, li { padding-top: 0 ; padding-bottom: 0 }
--></style><title>RE: [slimp3-dev] Hierarchical index vs text
searching</title></head><body>
<div>I've learned two things from building my pre-SliMP3 mp3 system
for my home and the homes of several of my friends and family:</div>
<div><br></div>
<div>1. The information in the ID3 tags from CDDB is so bad that it's
nearly useless. Nearly every CD I ripped needed to have its ID3
information edited in a major way.</div>
<div><br></div>
<div>2. Everybody has a different idea of how to organize and
categorize their music.</div>
<div><br></div>
<div>Given this, the system that I use at home is pretty simple:</div>
<div><br></div>
<div>1. Ignore the ID3 information and use the file name as the song
name.</div>
<div><br></div>
<div>2. Put every song for a given album in its own directory, name
that directory the same as the album.</div>
<div><br></div>
<div>3. Put every album for a given artist in its own directory and
name that directory for the artist.</div>
<div><br></div>
<div>4. Create a directory of category directories, each of which
contains artist directories which each contain symlinks to existing
album directories.</div>
<div><br></div>
<div>I change the categories for a given album by creating and
deleting symlinks, and I can have albums in multiple categories.&nbsp;
I can change the titles of songs/albums/artists by simply renaming
files.&nbsp;&nbsp; When you think of the file system as a particular
kind of database, you realize that it works pretty good.</div>
<div><br></div>
<div>That said, I think that if we do intend on creating
mood/genre/categories in SliMP3 (and I think we should) we should do
it separately from the organization of the files and store the
information in a simple SliMP3-only database.&nbsp; (Sean: here's a
chance for us to use DBMs like you've always dreamed!)&nbsp; I'd like
to avoid moving or changing the existing MP3 files if at all
possible.</div>
<div><br></div>
<div>NB: I'm a little scared of using MySQL or some other &quot;real&quot;
database because the complexity of it.&nbsp; If someone can cobble
together a demonstration of a database that can maintain our
cross-platform capabilities and be easy to install and invisible to
maintain, then I'd love to be able to use it with SliMP3.&nbsp;
Otherwise, let's just keep on keeping it simple.</div>
<div><br></div>
<div>-dean</div>
<div><br></div>
<div><br></div>
<blockquote type="cite" cite>From: Amos Hayes
[mailto:ahayes-***@public.gmane.org]<br>
&gt;Can the ID3 Genre be set to an arbitrary string?<br>
ID3v1 - no, it is a one byte number<br>
ID3v2 - yes, it is a string<br>
<br>
&gt;Is there room in the ID3 tags for such a &quot;mood&quot;
descriptor?<br>
In ID3v2 there is a Mood tag (TMOO)<br>
In ID3v1 you could always use the Comments field.&nbsp; Only 30 chars
though.<br>
<br>
See www.id3.org for full ID3 specs.&nbsp; Note that the MP3::Info
module that we<br>
are using may or may not support all the ID3v2 tags desired.&nbsp; Of
course that<br>
is just incentive to hack it up to make it better (and send the
changes to<br>
the maintainer).<br>
<br>
------------------------ Yahoo! Groups Sponsor
---------------------~--&gt;<br>
Sponsored by VeriSign - The Value of Trust<br>
Pinpoint the right security solution for your company - FREE<br>
Guide from industry leader VeriSign gives you all the facts.<br>
http://us.click.yahoo.com/pCuuSA/WdiDAA/yigFAA/rIp0lB/TM<br>
---------------------------------------------------------------------<span </span>~-&gt;<br>
<br>
To unsubscribe from this group, send an email to:<br>
slimp3-dev-unsubscribe-***@public.gmane.org<br>
<br>
&nbsp;<br>
<br>
Your use of Yahoo! Groups is subject to
http://docs.yahoo.com/info/terms/ </blockquote>
<div><br></div>
</body>
</html>
dean blackketter
2002-02-01 18:25:20 UTC
Permalink
There are HTTP headers that are returned with the playlist that
indicate the status of the player. There is some documentation of
this in the README.HTTP.html document, I'll put an example in to
elaborate.

Parsing MIME headers in HTTP responses is quite easy, and while not
as potentially expressive as XML, it does the job for now.

-dean
One thing that would be cool would be for hackers like John (quoted below)
to be able to use the applications they have invested so much time into to
create a playlist and send it to the SliMP3 to be played.
Thee HTTP inteerfacee deescribeed in READ.HTTP.html is basically fine and it
wasn't hard to use. Thee only thing that's weak is status reporting. Right
now, it returns html intended to be human readable in a browser. This is fine
for that purpose, but if you want to read it with a program, it isn't the best
because it is subject to change in unexpected ways. Better would be a
well defined XML result.
Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
------------------------ Yahoo! Groups Sponsor ---------------------~-->
Sponsored by VeriSign - The Value of Trust
When building an e-commerce site, you want to start with a
secure foundation. Learn how with VeriSign's FREE Guide.
http://us.click.yahoo.com/oCuuSA/XdiDAA/yigFAA/rIp0lB/TM
---------------------------------------------------------------------~->

To unsubscribe from this group, send an email to:
slimp3-dev-unsubscribe-***@public.gmane.org



Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
John Ruttenberg
2002-02-01 17:51:39 UTC
Permalink
One thing that would be cool would be for hackers like John (quoted below)
to be able to use the applications they have invested so much time into to
create a playlist and send it to the SliMP3 to be played.
Thee HTTP inteerfacee deescribeed in READ.HTTP.html is basically fine and it
wasn't hard to use. Thee only thing that's weak is status reporting. Right
now, it returns html intended to be human readable in a browser. This is fine
for that purpose, but if you want to read it with a program, it isn't the best
because it is subject to change in unexpected ways. Better would be a
well defined XML result.


------------------------ Yahoo! Groups Sponsor ---------------------~-->
Sponsored by VeriSign - The Value of Trust
Do you need to encrypt all your online transactions? Find
the perfect solution in this FREE Guide from VeriSign.
http://us.click.yahoo.com/jWSNbC/UdiDAA/yigFAA/rIp0lB/TM
---------------------------------------------------------------------~->

To unsubscribe from this group, send an email to:
slimp3-dev-unsubscribe-***@public.gmane.org



Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
dean blackketter
2003-02-22 13:04:39 UTC
Permalink
<!doctype html public "-//W3C//DTD W3 HTML//EN">
<head><style type="text/css"><!--
blockquote, dl, ul, ol, li { padding-top: 0 ; padding-bottom: 0 }
--></style><title>RE: [slimp3-dev] Hierarchical index vs text
searching</title></head><body>
<div>There are HTTP headers that are returned with the playlist that
indicate the status of the player.&nbsp; There is some documentation
of this in the README.HTTP.html document, I'll put an example in to
elaborate.</div>
<div><br></div>
<div>Parsing MIME headers in HTTP responses is quite easy, and while
not as potentially expressive as XML, it does the job for now.</div> <div><br></div> <div>-dean</div> <div><br></div> <blockquote type="cite" cite>Brightwell, Scott:</blockquote> <blockquote type="cite" cite>&gt; <br>
&gt; One thing that would be cool would be for hackers like John
(quoted below)<br>
&gt; to be able to use the applications they have invested so much
time into to<br>
&gt; create a playlist and send it to the SliMP3 to be played.<br>
&gt; <br>
<br>
Thee HTTP inteerfacee deescribeed in READ.HTTP.html is basically fine
and it<br>
wasn't hard to use.&nbsp; Thee only thing that's weak is status
reporting.&nbsp; Right<br>
now, it returns html intended to be human readable in a browser.&nbsp;
This is fine<br>
for that purpose, but if you want to read it with a program, it isn't
the best<br>
because it is subject to change in unexpected ways.&nbsp; Better would
be a<br>
well defined XML result.<br>
<br>
<br>
------------------------ Yahoo! Groups Sponsor
---------------------~--&gt;<br>
Sponsored by VeriSign - The Value of Trust<br>
Do you need to encrypt all your online transactions? Find<br>
the perfect solution in this FREE Guide from VeriSign.<br>
http://us.click.yahoo.com/jWSNbC/UdiDAA/yigFAA/rIp0lB/TM<br>
---------------------------------------------------------------------<span </span>~-&gt;<br>
<br>
To unsubscribe from this group, send an email to:<br>
slimp3-dev-unsubscribe-***@public.gmane.org<br>
<br>
&nbsp;<br>
<br>
Your use of Yahoo! Groups is subject to
http://docs.yahoo.com/info/terms/ </blockquote>
<div><br></div>
</body>
</html>

Brightwell, Scott
2002-02-01 17:27:23 UTC
Permalink
I've been lurking here getting the inside dirt on the SliMP3 while I save my
pennies so I can purchase one.

One thing that would be cool would be for hackers like John (quoted below)
to be able to use the applications they have invested so much time into to
create a playlist and send it to the SliMP3 to be played.

What's missing is an [easy to use] API into the server.pl that will allow
3rd parties to inject playlists or commands through to a SliMP3. One (of
sorts) exists today--the web server interface. The functionality is 99%
there already.

I've (hopefully) attached a command line utility that accepts commands for
the SliMP3 and forwards them to the web server port. This is incredibly
easy to do. Anybody could rewrite their existing MP3 management software to
interface with the web server port or use something like my command line
interface and control their SliMP3.

I also propose that an additional command be added to
Playlist.pl::executecommand called "clients" that would return a list of all
the current SliMP3 client ID's. http://host:port/clients.txt (or something
like) How else will a 3rd party program know how to reference a particular
SliMP3 if there's more than one in the environment?

Thoughts?
Scott Brightwell


-----Original Message-----
From: John Ruttenberg [mailto:rutt-ACeXNUrNULtWk0Htik3J/***@public.gmane.org]
Sent: Friday, February 01, 2002 10:57 AM
To: slimp3-dev-***@public.gmane.org
Cc: carl-CtyvNBW2ITDGx/LB/***@public.gmane.org
Subject: [slimp3-dev] Hierarchical index vs text searching [Warning,
long]


Like a lot of people on this list, I built my own mp3 jukebox system over
the
last few years (together with a friend, Carl). I've put quite a bit of time
into it and I think there are some valuable lessons that I'd like to share.
Perhaps others can benefit. I hope this isn't too boring.

...
<snipped>


------------------------ Yahoo! Groups Sponsor ---------------------~-->
Sponsored by VeriSign - The Value of Trust
When building an e-commerce site, you want to start with a
secure foundation. Learn how with VeriSign's FREE Guide.
http://us.click.yahoo.com/oCuuSA/XdiDAA/yigFAA/rIp0lB/TM
---------------------------------------------------------------------~->

To unsubscribe from this group, send an email to:
slimp3-dev-unsubscribe-***@public.gmane.org



Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
Loading...