Audio-DB

 view release on metacpan or  search on metacpan

DB.pm  view on Meta::CPAN


=head1 DESCRIPTION

Audio::DB is a series of modules for creating relational databases of
music files directly from data stored in ID3 tags or from flatfiles of
information of track information.  Once created, Audio::DB provides
various methods for creating reports and web pages of your
collection. Although it's nutritious and delicious on its own, Audio::DB
was created for use with Apache::MP3::DB, a subclass of Apache::MP3.
This module makes it easy to make your collection web-accessible,
complete with browsing, searching, streaming, multiple users,
playlists, ratings, and more!

=head1 USAGE

There are three central modules that you will be interacting with.
Audio::DB::Build, Audio::DB::Web, and Audio::DB::Reports.  Audio::DB itself 
provides a generic factory interface for building these objects.
Audio::DB returns an appropriate object for the desired task at hand.

=head1 Creating A New MP3 Database

DB/Build.pm  view on Meta::CPAN


=head1 DESCRIPTION

Audio::DB is a module for creating relational databases of MP3 files
directly from data stored in ID3 tags or from flatfiles of information
of track information.  Once created, Audio::DB provides various methods
for creating reports and web pages of your collection. Although it's
nutritious and delicious on its own, Audio::DB was created for use with
Apache::Audio::DB, a subclass of Apache::MP3.  This module makes it easy
to make your collection web-accessible, complete with browsing,
searching, streaming, multiple users, playlists, ratings, and more!

=head1 REQUIRES
    
B<MP3::Info> for reading ID3 tags, B<LWP::MediaTypes> for distinguising 
types of readable files;

=head1 EXPORTS
    
No methods are exported.
    

DB/Util/Playlists.pm  view on Meta::CPAN

# Playlists.pm provides a variety of methods for dealing with playlists.
# This includes the basics (like adding and deleting songs from playlists),
# To actual streaming of recalled playlists,
# to retrieving all playlists from all users for display

# Flow
# 1. Authenticate (either through mod_auth or by reading cookie)
# 2. Grab the user id from the cookie
# 3. Use that to do any sort of deletes or inserts...

# Handles:
# Displaying a given users list of playlists
# Retrieval of a single playlist

DB/Util/Playlists.pm  view on Meta::CPAN

  #                    'comments',
  #                    'width=480,height=480,scrollbars=yes,status=yes');
  #}
  #</script>
  #
  #}
}


#######################################################
#  SUPPORT: Fetching, streaming, linking, navigating
#######################################################

# Fetch all the current playlists associated with
# this user and return 
# This could be generalized to get lists of all playlists
# from all users
# Or perhaps that should just be a seperate sub

# Could also be modified to return a filled list
# This might actually be usefull, because then I can build the page

DB/Util/Playlists.pm  view on Meta::CPAN

  my $c;
  while (my $h = $sth->fetchrow_hashref) {
    push (@$results,$h);
    $c++;
  }
  return '' if $c < 1;
  return $results;
}


# This will be a generic link in, and not for streaming
sub link_playlist {
  my ($self,$playlist,$id) = @_;
  my $url = url();
  return a({-href=>$url . '?playlist=' . 'display_playlist&id=' . $id },$playlist);
}

sub stream_link {

}

DB/Web.pm  view on Meta::CPAN



=head1 DESCRIPTION

Audio::DB is a module for creating relational databases of MP3 files directly
from data stored in ID3 tags.  Once created, Audio::DB provides various
methods for creating reports and web pages of your collection. Although
it's nutritious and delicious on its own, Audio::DB was created for use
with Apache::Audio::DB, a subclass of Apache::MP3.  This module makes it 
easy to make your collection web-accessible, complete with browsing, 
searching, streaming, multiple users, playlists, ratings, and more!

=head1 REQUIRES

This module is designed to work with the data schema created
and loaded by B<Audio::DB>.  It's not going to do you mch good without it.

=head1 EXPORTS
    
No methods are exported.
    



( run in 0.292 second using v1.01-cache-2.11-cpan-4d50c553e7e )