MP3::Icecast

MP3::Icecast is a Perl module to generate Icecast streams, as well as M3U and PLSv2 playlists.
Download

MP3::Icecast Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Perl Artistic License
  • Price:
  • FREE
  • Publisher Name:
  • Allen Day
  • Publisher web site:
  • http://search.cpan.org/~birney/bioperl-1.4/Bio/DB/GFF/Aggregator/ucsc_genscan.pm

MP3::Icecast Tags


MP3::Icecast Description

MP3::Icecast is a Perl module to generate Icecast streams, as well as M3U and PLSv2 playlists. MP3::Icecast is a Perl module to generate Icecast streams, as well as M3U and PLSv2 playlists.SYNOPSIS use MP3::Icecast; use MP3::Info; use IO::Socket; my $listen_socket = IO::Socket::INET->new( LocalPort => 8000, #standard Icecast port Listen => 20, Proto => 'tcp', Reuse => 1, Timeout => 3600); #create an instance to find all files below /usr/local/mp3 my $finder = MP3::Icecast->new(); $finder->recursive(1); $finder->add_directory('/usr/local/mp3'); my @files = $finder->files; #accept TCP 8000 connections while(1){ next unless my $connection = $listen_socket->accept; defined(my $child = fork()) or die "Can't fork: $!"; if($child == 0){ $listen_socket->close; my $icy = MP3::Icecast->new; #stream files that have an ID3 genre tag of "jazz" while(@files){ my $file = shift @files; my $info = new MP3::Info $file; next unless $info; next unless $info->genre =~ /jazz/i; $icy->stream($file,0,$connection); } exit 0; } #a contrived example to demonstrate that MP3::Icecast #can generate M3U and PLSv2 media playlists. print STDERR $icy->m3u, "n"; print STDERR $icy->pls, "n"; $connection->close; }ABSTRACTMP3::Icecast supports streaming Icecast protocol over socket or other filehandle (including STDIN). This is useful for writing a streaming media server.MP3::Icecast also includes support for generating M3U and PLSv2 playlist files. These are common formats supported by most modern media players, including XMMS, Windows Media Player 9, and Winamp. Requirements: · Perl


MP3::Icecast Related Software