audio
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 1202
Q-Audio 2.3
Q-Audio is a digital audio interface for Q. more>>
Q-Audio is a digital audio interface for Q. Q-Audio project contains three modules which together provide the basic functionality needed to write digital audio applications.
The audio module implements a (nearly) real-time audio interface on top of the PortAudio library. The sndfile module allows you to access sound files in various formats using libsndfile.
The wave module provides basic operations for creating and manipulating wave data, including operations to convert sample rates, to calculate Fourier transforms, and to display wave data in a GGI visual.
About Q language:
Q is a functional programming language based on term rewriting. Thus, a Q program or "script" is simply a collection of equations which are used to evaluate expressions in a symbolic fashion. The equations establish algebraic identities and are interpreted as rewriting rules in order to reduce expressions to "normal forms". For instance, here is how you define a function sqr which squares its argument by multiplying it with itself:
sqr X = X*X;
Note that, as in Prolog, capitalized identifiers are used to indicate the variables in an equation, which are bound to the actual values when an equation is applied. Equations may also include a condition part, as in the following definition of the factorial function:
fact N = N*fact (N-1) if N>0;
= 1 otherwise;
Functions on structured arguments are defined by "pattern matching". E.g., the product of a list (denoted in Prolog-like syntax) can be computed with these two equations:
prod [] = 1;
prod [X|Xs] = X*prod Xs;
With this definition, the factorial can now also be defined as follows (the notation [1..N], as in Haskell, denotes an arithmetic sequence):
fact N = prod [1..N];
As you can see, the definitions are really just like mathematical equations. The syntax is superficially similar to other modern functional languages like Miranda and Haskell, except that Q is "free-format", i.e., it does not use layout to indicate syntactical structure (thus the semicolon is used to terminate an equation).
Due to its term rewriting heritage, Q goes well beyond most other functional languages in that it also allows you to perform computations with symbolic expressions. For instance, with the definition of the sqr function from above, you will find that sqr (X+1) evaluates to (X+1)*(X+1). This might first look like an arcane feature, but it is actually quite useful, because you can try your definitions with symbolic inputs, too.
Enhancements:
- src/wave.c: minor fixes for compatibility with latest gcc versions
<<lessThe audio module implements a (nearly) real-time audio interface on top of the PortAudio library. The sndfile module allows you to access sound files in various formats using libsndfile.
The wave module provides basic operations for creating and manipulating wave data, including operations to convert sample rates, to calculate Fourier transforms, and to display wave data in a GGI visual.
About Q language:
Q is a functional programming language based on term rewriting. Thus, a Q program or "script" is simply a collection of equations which are used to evaluate expressions in a symbolic fashion. The equations establish algebraic identities and are interpreted as rewriting rules in order to reduce expressions to "normal forms". For instance, here is how you define a function sqr which squares its argument by multiplying it with itself:
sqr X = X*X;
Note that, as in Prolog, capitalized identifiers are used to indicate the variables in an equation, which are bound to the actual values when an equation is applied. Equations may also include a condition part, as in the following definition of the factorial function:
fact N = N*fact (N-1) if N>0;
= 1 otherwise;
Functions on structured arguments are defined by "pattern matching". E.g., the product of a list (denoted in Prolog-like syntax) can be computed with these two equations:
prod [] = 1;
prod [X|Xs] = X*prod Xs;
With this definition, the factorial can now also be defined as follows (the notation [1..N], as in Haskell, denotes an arithmetic sequence):
fact N = prod [1..N];
As you can see, the definitions are really just like mathematical equations. The syntax is superficially similar to other modern functional languages like Miranda and Haskell, except that Q is "free-format", i.e., it does not use layout to indicate syntactical structure (thus the semicolon is used to terminate an equation).
Due to its term rewriting heritage, Q goes well beyond most other functional languages in that it also allows you to perform computations with symbolic expressions. For instance, with the definition of the sqr function from above, you will find that sqr (X+1) evaluates to (X+1)*(X+1). This might first look like an arcane feature, but it is actually quite useful, because you can try your definitions with symbolic inputs, too.
Enhancements:
- src/wave.c: minor fixes for compatibility with latest gcc versions
Download (0.098MB)
Added: 2006-02-15 License: GPL (GNU General Public License) Price:
1348 downloads
Audio::Ao 0.01
Audio::Ao is a Perl wrapper for the Ao audio library. more>>
Audio::Ao is a Perl wrapper for the Ao audio library.
SYNOPSIS
use Audio::Ao qw(:all);
initialize_ao;
my $device = open_live(default_driver_id(), 16, $rate, $channels,
is_big_endian(), {});
while (#have data) {
play($device, $data_buffer, $len_of_buffer);
}
close_ao($device($device));
shutdown_ao;
Provides access to Libao, "a cross-platform library that allows programs to output PCM audio data to the native audio devices on a wide variety of platforms." Libao currently supports OSS, ESD, ALSA, Sun audio, and aRts.
<<lessSYNOPSIS
use Audio::Ao qw(:all);
initialize_ao;
my $device = open_live(default_driver_id(), 16, $rate, $channels,
is_big_endian(), {});
while (#have data) {
play($device, $data_buffer, $len_of_buffer);
}
close_ao($device($device));
shutdown_ao;
Provides access to Libao, "a cross-platform library that allows programs to output PCM audio data to the native audio devices on a wide variety of platforms." Libao currently supports OSS, ESD, ALSA, Sun audio, and aRts.
Download (0.004MB)
Added: 2006-06-20 License: Perl Artistic License Price:
1225 downloads
Audio::DB 0.01
Audio::DB are tools for generating relational databases of MP3s. more>>
Audio::DB are tools for generating relational databases of MP3s.
SYNOPSIS
use Audio::DB;
my $mp3 = Audio::DB->new(-user =>user,
-pass =>password,
-host =>db_host,
-dsn =>music_db,
-adaptor => mysql);
$mp3->initialize(1);
$mp3->load_database(-dirs =>[/path/to/MP3s/],
-tmp =>/tmp);
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 its 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!
<<lessSYNOPSIS
use Audio::DB;
my $mp3 = Audio::DB->new(-user =>user,
-pass =>password,
-host =>db_host,
-dsn =>music_db,
-adaptor => mysql);
$mp3->initialize(1);
$mp3->load_database(-dirs =>[/path/to/MP3s/],
-tmp =>/tmp);
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 its 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!
Download (0.061MB)
Added: 2006-11-11 License: GPL (GNU General Public License) Price:
1077 downloads
PDL::Audio 1.1
PDL::Audio is a Perl module for some PDL functions intended for audio processing. more>>
PDL::Audio is a Perl module for some PDL functions intended for audio processing.
SYNOPSIS
use PDL;
use PDL::Audio;
Oh well. Not much "introductory documentation" has been written yet.
NOTATION
Brackets around parameters indicate that the respective parameter is optional and will be replaced with some default value when absent (or undef, which might be different in other packages).
The sampling frequency and duration are by default (see individual descriptions) given in cycles/sample (or samples in case of a duration). That means if you want to specify a duration of two seconds, you have to multiply by the sampling frequency in HZ, and if you want to specify a frequency of 440 Hz, you have to divide by the sampling frequency:
# Syntax: gen_oscil duration*, frequency/
$signal = gen_oscil 2*HZ, 440/HZ;
# with a sampling frequency of 44100 Hertz:
$signal = gen_oscil 2*44100, 440/44100;
To help you, the required unit is given as a type suffix in the parameter name. A "/" means that you have to divide by the sampling frequency (to convert from Hertz) and a suffix of "*" indicates that a multiplication is required.
Most parameters named "size", "duration" (or marked with "*") can be replaced by a piddle, which is then used to give length and from (mono/stereo).
HEADER ATTRIBUTES
The following header attributes are stored and evaluated by most functions. PDL::Audio provides mutator methods for all them (e.g.
print "samplerate is ", $pdl->rate;
$pdl->comment("set the comment to this string");
rate
The sampling rate in hz.
filetype
The filetype (wav, au etc..). Must be one of:
FILE_NEXT FILE_AIFC FILE_RIFF FILE_BICSF FILE_NIST FILE_INRS FILE_ESPS
FILE_SVX FILE_VOC FILE_SNDT FILE_RAW FILE_SMP FILE_SD2 FILE_AVR
FILE_IRCAM FILE_SD1 FILE_SPPACK FILE_MUS10 FILE_HCOM FILE_PSION
FILE_MAUD FILE_IEEE FILE_DESKMATE FILE_DESKMATE_2500 FILE_MATLAB
FILE_ADC FILE_SOUNDEDIT FILE_SOUNDEDIT_16 FILE_DVSM FILE_MIDI
FILE_ESIGNAL FILE_SOUNDFONT FILE_GRAVIS FILE_COMDISCO FILE_GOLDWAVE
FILE_SRFS FILE_MIDI_SAMPLE_DUMP FILE_DIAMONDWARE FILE_REALAUDIO
FILE_ADF FILE_SBSTUDIOII FILE_DELUSION FILE_FARANDOLE FILE_SAMPLE_DUMP
FILE_ULTRATRACKER FILE_YAMAHA_SY85 FILE_YAMAHA_TX16 FILE_DIGIPLAYER
FILE_COVOX FILE_SPL FILE_AVI FILE_OMF FILE_QUICKTIME FILE_ASF
FILE_YAMAHA_SY99 FILE_KURZWEIL_2000 FILE_AIFF FILE_AU
path
The filename (or file specification) used to load or save a file.
format
Specifies the type the underlying file format uses. The samples will always be in short or long signed format.
Must be one of
FORMAT_NO_SND FORMAT_16_LINEAR FORMAT_8_MULAW FORMAT_8_LINEAR
FORMAT_32_FLOAT FORMAT_32_LINEAR FORMAT_8_ALAW FORMAT_8_UNSIGNED
FORMAT_24_LINEAR FORMAT_64_DOUBLE FORMAT_16_LINEAR_LITTLE_ENDIAN
FORMAT_32_LINEAR_LITTLE_ENDIAN FORMAT_32_FLOAT_LITTLE_ENDIAN
FORMAT_64_DOUBLE_LITTLE_ENDIAN FORMAT_16_UNSIGNED
FORMAT_16_UNSIGNED_LITTLE_ENDIAN FORMAT_24_LINEAR_LITTLE_ENDIAN
FORMAT_32_VAX_FLOAT FORMAT_12_LINEAR FORMAT_12_LINEAR_LITTLE_ENDIAN
FORMAT_12_UNSIGNED FORMAT_12_UNSIGNED_LITTLE_ENDIAN COMPATIBLE_FORMAT
PDL::Audio conviniently defines the following aliases for the following constants, that are already correct for the host byteorder:
FORMAT_ULAW_BYTE FORMAT_ALAW_BYTE FORMAT_LINEAR_BYTE
FORMAT_LINEAR_SHORT FORMAT_LINEAR_USHORT FORMAT_LINEAR_LONG
FORMAT_LINEAR_FLOAT FORMAT_LINEAR_DOUBLE
comment
The file comment (if any). device
The device to output audio. One of:
DEV_DEFAULT DEV_READ_WRITE DEV_ADAT_IN DEV_AES_IN DEV_LINE_OUT
DEV_LINE_IN DEV_MICROPHONE DEV_SPEAKERS DEV_DIGITAL_IN DEV_DIGITAL_OUT
DEV_DAC_OUT DEV_ADAT_OUT DEV_AES_OUT DEV_DAC_FILTER DEV_MIXER
DEV_LINE1 DEV_LINE2 DEV_LINE3 DEV_AUX_INPUT DEV_CD_IN DEV_AUX_OUTPUT
DEV_SPDIF_IN DEV_SPDIF_OUT
<<lessSYNOPSIS
use PDL;
use PDL::Audio;
Oh well. Not much "introductory documentation" has been written yet.
NOTATION
Brackets around parameters indicate that the respective parameter is optional and will be replaced with some default value when absent (or undef, which might be different in other packages).
The sampling frequency and duration are by default (see individual descriptions) given in cycles/sample (or samples in case of a duration). That means if you want to specify a duration of two seconds, you have to multiply by the sampling frequency in HZ, and if you want to specify a frequency of 440 Hz, you have to divide by the sampling frequency:
# Syntax: gen_oscil duration*, frequency/
$signal = gen_oscil 2*HZ, 440/HZ;
# with a sampling frequency of 44100 Hertz:
$signal = gen_oscil 2*44100, 440/44100;
To help you, the required unit is given as a type suffix in the parameter name. A "/" means that you have to divide by the sampling frequency (to convert from Hertz) and a suffix of "*" indicates that a multiplication is required.
Most parameters named "size", "duration" (or marked with "*") can be replaced by a piddle, which is then used to give length and from (mono/stereo).
HEADER ATTRIBUTES
The following header attributes are stored and evaluated by most functions. PDL::Audio provides mutator methods for all them (e.g.
print "samplerate is ", $pdl->rate;
$pdl->comment("set the comment to this string");
rate
The sampling rate in hz.
filetype
The filetype (wav, au etc..). Must be one of:
FILE_NEXT FILE_AIFC FILE_RIFF FILE_BICSF FILE_NIST FILE_INRS FILE_ESPS
FILE_SVX FILE_VOC FILE_SNDT FILE_RAW FILE_SMP FILE_SD2 FILE_AVR
FILE_IRCAM FILE_SD1 FILE_SPPACK FILE_MUS10 FILE_HCOM FILE_PSION
FILE_MAUD FILE_IEEE FILE_DESKMATE FILE_DESKMATE_2500 FILE_MATLAB
FILE_ADC FILE_SOUNDEDIT FILE_SOUNDEDIT_16 FILE_DVSM FILE_MIDI
FILE_ESIGNAL FILE_SOUNDFONT FILE_GRAVIS FILE_COMDISCO FILE_GOLDWAVE
FILE_SRFS FILE_MIDI_SAMPLE_DUMP FILE_DIAMONDWARE FILE_REALAUDIO
FILE_ADF FILE_SBSTUDIOII FILE_DELUSION FILE_FARANDOLE FILE_SAMPLE_DUMP
FILE_ULTRATRACKER FILE_YAMAHA_SY85 FILE_YAMAHA_TX16 FILE_DIGIPLAYER
FILE_COVOX FILE_SPL FILE_AVI FILE_OMF FILE_QUICKTIME FILE_ASF
FILE_YAMAHA_SY99 FILE_KURZWEIL_2000 FILE_AIFF FILE_AU
path
The filename (or file specification) used to load or save a file.
format
Specifies the type the underlying file format uses. The samples will always be in short or long signed format.
Must be one of
FORMAT_NO_SND FORMAT_16_LINEAR FORMAT_8_MULAW FORMAT_8_LINEAR
FORMAT_32_FLOAT FORMAT_32_LINEAR FORMAT_8_ALAW FORMAT_8_UNSIGNED
FORMAT_24_LINEAR FORMAT_64_DOUBLE FORMAT_16_LINEAR_LITTLE_ENDIAN
FORMAT_32_LINEAR_LITTLE_ENDIAN FORMAT_32_FLOAT_LITTLE_ENDIAN
FORMAT_64_DOUBLE_LITTLE_ENDIAN FORMAT_16_UNSIGNED
FORMAT_16_UNSIGNED_LITTLE_ENDIAN FORMAT_24_LINEAR_LITTLE_ENDIAN
FORMAT_32_VAX_FLOAT FORMAT_12_LINEAR FORMAT_12_LINEAR_LITTLE_ENDIAN
FORMAT_12_UNSIGNED FORMAT_12_UNSIGNED_LITTLE_ENDIAN COMPATIBLE_FORMAT
PDL::Audio conviniently defines the following aliases for the following constants, that are already correct for the host byteorder:
FORMAT_ULAW_BYTE FORMAT_ALAW_BYTE FORMAT_LINEAR_BYTE
FORMAT_LINEAR_SHORT FORMAT_LINEAR_USHORT FORMAT_LINEAR_LONG
FORMAT_LINEAR_FLOAT FORMAT_LINEAR_DOUBLE
comment
The file comment (if any). device
The device to output audio. One of:
DEV_DEFAULT DEV_READ_WRITE DEV_ADAT_IN DEV_AES_IN DEV_LINE_OUT
DEV_LINE_IN DEV_MICROPHONE DEV_SPEAKERS DEV_DIGITAL_IN DEV_DIGITAL_OUT
DEV_DAC_OUT DEV_ADAT_OUT DEV_AES_OUT DEV_DAC_FILTER DEV_MIXER
DEV_LINE1 DEV_LINE2 DEV_LINE3 DEV_AUX_INPUT DEV_CD_IN DEV_AUX_OUTPUT
DEV_SPDIF_IN DEV_SPDIF_OUT
Download (0.25MB)
Added: 2006-06-19 License: Perl Artistic License Price:
1223 downloads
Audio::Mad 0.6
Audio::Mad is a Perl interface to the mad MPEG decoder library. more>>
Audio::Mad is a Perl interface to the mad MPEG decoder library.
SYNOPSIS
use Audio::Mad qw(:all);
my $stream = new Audio::Mad::Stream();
my $frame = new Audio::Mad::Frame();
my $synth = new Audio::Mad::Synth();
my $timer = new Audio::Mad::Timer();
my $resample = new Audio::Mad::Resample(44100, 22050);
my $dither = new Audio::Mad::Dither();
my $buffer = join(, );
$stream->buffer($buffer);
FRAME: {
if ($frame->decode($stream) == -1) {
last FRAME unless ($stream->err_ok());
warn "decoding error: " . $stream->error();
next FRAME;
}
$synth->synth($frame);
my $pcm = $dither->dither($resample->resample($synth->samples()));
print $pcm;
next FRAME;
}
This module is an attempt to provide a perl interface to the MAD (MPEG Audio Decoder) library, written by Robert Leslie. It has been designed to be 100% object oriented, and to follow the MAD interface as closely as possible.
So far, most of the MAD library, plus two companion modules are provided as part of the interface. Seperate documentation is provided in perldoc for all of the modules in the Audio::Mad framework.
<<lessSYNOPSIS
use Audio::Mad qw(:all);
my $stream = new Audio::Mad::Stream();
my $frame = new Audio::Mad::Frame();
my $synth = new Audio::Mad::Synth();
my $timer = new Audio::Mad::Timer();
my $resample = new Audio::Mad::Resample(44100, 22050);
my $dither = new Audio::Mad::Dither();
my $buffer = join(, );
$stream->buffer($buffer);
FRAME: {
if ($frame->decode($stream) == -1) {
last FRAME unless ($stream->err_ok());
warn "decoding error: " . $stream->error();
next FRAME;
}
$synth->synth($frame);
my $pcm = $dither->dither($resample->resample($synth->samples()));
print $pcm;
next FRAME;
}
This module is an attempt to provide a perl interface to the MAD (MPEG Audio Decoder) library, written by Robert Leslie. It has been designed to be 100% object oriented, and to follow the MAD interface as closely as possible.
So far, most of the MAD library, plus two companion modules are provided as part of the interface. Seperate documentation is provided in perldoc for all of the modules in the Audio::Mad framework.
Download (0.13MB)
Added: 2006-06-30 License: Perl Artistic License Price:
1212 downloads
Audio::CD 0.04
Audio::CD is a Perl interface to libcdaudio (cd + cddb). more>>
Audio::CD is a Perl interface to libcdaudio (cd + cddb).
SYNOPSIS
use Audio::CD ();
my $cd = Audio::CD->init;
Audio::CD provides a Perl interface to libcdaudio by Tony Arcieri, available from http://cdcd.undergrid.net/
Several classes provide glue for the libcdaudio functions and data structures.
Audio::CD Class ^
init
Initialize the Audio::CD object:
my $cd = Audio::CD->init;
stat
Stat the Audio::CD object, returns an Audio::CD::Info object.
my $info = $cd->stat;
cddb
Returns an Audio::CDDB object.
my $cddb = $cd->cddb;
play
Play the given cd track (defaults to 1).
$cd->play(1);
stop
Stop the cd.
$cd->stop;
pause
Pause the cd.
$cd->pause;
resume
Resume the cd.
$cd->resume;
eject
Eject the cd.
$cd->eject;
close
Close the cd tray.
$cd->close;
play_frames
$cd->play_frames($startframe, $endframe);
play_track_pos
$cd->play_track_pos($strarttrack, $endtrack, $startpos);
play_track
$cd->play_track($strarttrack, $endtrack);
track_advance
$cd->track_advance($endtrack, $minutes, $seconds);
advance
$cd->advance($minutes, $seconds);
get_volume
Returns an Audio::CD::Volume object.
my $vol = $cd->get_volume;
set_volume
$cd->set_volume($vol);
<<lessSYNOPSIS
use Audio::CD ();
my $cd = Audio::CD->init;
Audio::CD provides a Perl interface to libcdaudio by Tony Arcieri, available from http://cdcd.undergrid.net/
Several classes provide glue for the libcdaudio functions and data structures.
Audio::CD Class ^
init
Initialize the Audio::CD object:
my $cd = Audio::CD->init;
stat
Stat the Audio::CD object, returns an Audio::CD::Info object.
my $info = $cd->stat;
cddb
Returns an Audio::CDDB object.
my $cddb = $cd->cddb;
play
Play the given cd track (defaults to 1).
$cd->play(1);
stop
Stop the cd.
$cd->stop;
pause
Pause the cd.
$cd->pause;
resume
Resume the cd.
$cd->resume;
eject
Eject the cd.
$cd->eject;
close
Close the cd tray.
$cd->close;
play_frames
$cd->play_frames($startframe, $endframe);
play_track_pos
$cd->play_track_pos($strarttrack, $endtrack, $startpos);
play_track
$cd->play_track($strarttrack, $endtrack);
track_advance
$cd->track_advance($endtrack, $minutes, $seconds);
advance
$cd->advance($minutes, $seconds);
get_volume
Returns an Audio::CD::Volume object.
my $vol = $cd->get_volume;
set_volume
$cd->set_volume($vol);
Download (0.007MB)
Added: 2006-06-22 License: Perl Artistic License Price:
1222 downloads
Audio::M4P 0.30
Audio::M4P is a Perl module that provides M4P/MP4/M4A QuickTime audio music format modules. more>>
Audio::M4P is a Perl module that provides M4P/MP4/M4A QuickTime audio music format modules.
M4P is a QuickTime protected audio file format.
SYNOPSIS
use Audio::M4P::QuickTime;
my $mp4file = "file.m4p";
my $qt = new Audio::M4P::QuickTime(file => $mp4file);
my $tags = $qt->GetMetaInfo;
print "Artist is $tags->{ARTIST}n" if $tags->{ARTIST};
use Audio::M4P::Decrypt;
my $outfile = mydecodedfile;
my $deDRMS = new Audio::M4P::Decrypt;
$deDRMS->DeDRMS($mp4file, $outfile);
See also the individual pod documentation for Audio::M4P::QuickTime
and Audio::M4P::Decrypt.
<<lessM4P is a QuickTime protected audio file format.
SYNOPSIS
use Audio::M4P::QuickTime;
my $mp4file = "file.m4p";
my $qt = new Audio::M4P::QuickTime(file => $mp4file);
my $tags = $qt->GetMetaInfo;
print "Artist is $tags->{ARTIST}n" if $tags->{ARTIST};
use Audio::M4P::Decrypt;
my $outfile = mydecodedfile;
my $deDRMS = new Audio::M4P::Decrypt;
$deDRMS->DeDRMS($mp4file, $outfile);
See also the individual pod documentation for Audio::M4P::QuickTime
and Audio::M4P::Decrypt.
Download (0.80MB)
Added: 2006-06-21 License: GPL (GNU General Public License) Price:
1226 downloads
Audio::ESD 0.02
Audio::ESD is a Perl extension for talking to the Enlightened Sound Daemon. more>>
Audio::ESD is a Perl extension for talking to the Enlightened Sound Daemon.
SYNOPSIS
use Audio::ESD;
my $stream = Audio::ESD->play_stream({ # these are the defaults
sample_rate => 16000,
channels => 1,
fallback => 0,
bits_sample => 16,
encoding => linear })
or die "Failed to open ESD stream: $!n";
print $stream $data; # etcetera
This module provides a Perl wrapper around the Enlightened Sound Daemons client library. Input, output, and monitoring streams are supported, as well as some (but not all) of the control functions. Samples are supported but untested.
<<lessSYNOPSIS
use Audio::ESD;
my $stream = Audio::ESD->play_stream({ # these are the defaults
sample_rate => 16000,
channels => 1,
fallback => 0,
bits_sample => 16,
encoding => linear })
or die "Failed to open ESD stream: $!n";
print $stream $data; # etcetera
This module provides a Perl wrapper around the Enlightened Sound Daemons client library. Input, output, and monitoring streams are supported, as well as some (but not all) of the control functions. Samples are supported but untested.
Download (0.006MB)
Added: 2006-06-23 License: Perl Artistic License Price:
1228 downloads
Audio::DSP 0.02
Audio::DSP is a Perl interface to *NIX digital audio device. more>>
Audio::DSP is a Perl interface to *NIX digital audio device.
SYNOPSIS
use Audio::DSP;
($buf, $chan, $fmt, $rate) = (4096, 1, 8, 8192);
$dsp = new Audio::DSP(buffer => $buf,
channels => $chan,
format => $fmt,
rate => $rate);
$seconds = 5;
$length = ($chan * $fmt * $rate * $seconds) / 8;
$dsp->init() || die $dsp->errstr();
# Record 5 seconds of sound
for (my $i = 0; $i < $length; $i += $buf) {
$dsp->read() || die $dsp->errstr();
}
# Play it back
for (;;) {
$dsp->write() || last;
}
$dsp->close();
Audio::DSP is built around the OSS (Open Sound System) API and allows perl to interface with a digital audio device. It provides, among other things, an initialization method which opens and handles ioctl messaging on the audio device file. Audio::DSP also provides some rudimentary methods for the storage and manipulation of audio data in memory.
In order to use Audio::DSP, youll need to have the necessary OSS drivers/libraries installed. OSS is available for many popular Unices, and a GPLed version (with which this extension was initially developed and tested) is distributed with with the Linux kernel.
<<lessSYNOPSIS
use Audio::DSP;
($buf, $chan, $fmt, $rate) = (4096, 1, 8, 8192);
$dsp = new Audio::DSP(buffer => $buf,
channels => $chan,
format => $fmt,
rate => $rate);
$seconds = 5;
$length = ($chan * $fmt * $rate * $seconds) / 8;
$dsp->init() || die $dsp->errstr();
# Record 5 seconds of sound
for (my $i = 0; $i < $length; $i += $buf) {
$dsp->read() || die $dsp->errstr();
}
# Play it back
for (;;) {
$dsp->write() || last;
}
$dsp->close();
Audio::DSP is built around the OSS (Open Sound System) API and allows perl to interface with a digital audio device. It provides, among other things, an initialization method which opens and handles ioctl messaging on the audio device file. Audio::DSP also provides some rudimentary methods for the storage and manipulation of audio data in memory.
In order to use Audio::DSP, youll need to have the necessary OSS drivers/libraries installed. OSS is available for many popular Unices, and a GPLed version (with which this extension was initially developed and tested) is distributed with with the Linux kernel.
Download (0.028MB)
Added: 2006-06-19 License: GPL (GNU General Public License) Price:
1226 downloads
Audio:PSID 3.11
Audio:PSID is a Perl module to handle SID files (Commodore-64 music files). more>>
Audio:PSID is a Perl module to handle SID files (Commodore-64 music files).
SYNOPSIS
use Audio::SID;
$mySID = new Audio::SID(-filename => Test.sid) or die "Whoops!";
print "Title = " . $mySID->get(title) . "n";
print "MD5 = " . $mySID->getMD5();
$mySID->set(author => LaLa,
title => Test2,
released => 2001 Hungarian Music Crew);
$mySID->validate();
$mySID->write(-filename => Test2.sid) or die "Couldnt write file!";
@array = $mySID->getFieldNames();
print "Fieldnames = " . join( , @array) . "n";
This module is designed to handle SID files (usually bearing a .sid extension), which are music player and data routines converted from the Commodore-64 computer with an additional informational header prepended. For further details about the exact file format, see description of all SID fields in the SID_file_format.txt file included in the module package.
<<lessSYNOPSIS
use Audio::SID;
$mySID = new Audio::SID(-filename => Test.sid) or die "Whoops!";
print "Title = " . $mySID->get(title) . "n";
print "MD5 = " . $mySID->getMD5();
$mySID->set(author => LaLa,
title => Test2,
released => 2001 Hungarian Music Crew);
$mySID->validate();
$mySID->write(-filename => Test2.sid) or die "Couldnt write file!";
@array = $mySID->getFieldNames();
print "Fieldnames = " . join( , @array) . "n";
This module is designed to handle SID files (usually bearing a .sid extension), which are music player and data routines converted from the Commodore-64 computer with an additional informational header prepended. For further details about the exact file format, see description of all SID fields in the SID_file_format.txt file included in the module package.
Download (0.022MB)
Added: 2007-01-02 License: Perl Artistic License Price:
1025 downloads
Make audio 0.4.1
Make audio is a graphical tool to create audio CDs from MP3 or wav files. more>>
Make audio is a graphical tool to create audio CDs from MP3 or wav files. You can simply arrange a playlist of all songs that you want. The application converts MP3 files to WAV and then burns them on the CD.
<<less Download (0.016MB)
Added: 2006-07-25 License: GPL (GNU General Public License) Price:
1186 downloads
Audio::Beep 0.11
Audio::Beep is a Perl module to use your computer beeper in fancy ways. more>>
Audio::Beep is a Perl module to use your computer beeper in fancy ways.
SYNOPSIS
#functional simple way
use Audio::Beep;
beep($freq, $milliseconds);
#OO more musical way
use Audio::Beep;
my $beeper = Audio::Beep->new();
# lilypond subset syntax accepted
# relative notation is the default
# (now correctly implemented)
my $music = "g f bes c8 f d4 c8 f d4 bes c g f2";
# Pictures at an Exhibition by Modest Mussorgsky
$beeper->play( $music );
<<lessSYNOPSIS
#functional simple way
use Audio::Beep;
beep($freq, $milliseconds);
#OO more musical way
use Audio::Beep;
my $beeper = Audio::Beep->new();
# lilypond subset syntax accepted
# relative notation is the default
# (now correctly implemented)
my $music = "g f bes c8 f d4 c8 f d4 bes c g f2";
# Pictures at an Exhibition by Modest Mussorgsky
$beeper->play( $music );
Download (0.033MB)
Added: 2006-12-28 License: Perl Artistic License Price:
1031 downloads
Audio::File 0.10
Audio::File is a audio file abstraction library. more>>
Audio::File is a audio file abstraction library.
SYNOPSIS
use Audio::File;
my $file = Audio::File->new( "foo.bar" );
print "The ". $file->type() ."-file ". $file->name
." is ". int $file->length() ." seconds long.n";
print "Its interpreted by ". $file->tag->artist()
." and called ". $file->tag->title() ".n";
Audio::File abstracts a single audio file, independant of its format. Using this module you can access a files meta-info like title, album, etc. as well as the files audio-properties like its length and bitrate.
Currently only the formats flac, ogg vorbis and mp3 are supported, but support for other formats may be easily added.
<<lessSYNOPSIS
use Audio::File;
my $file = Audio::File->new( "foo.bar" );
print "The ". $file->type() ."-file ". $file->name
." is ". int $file->length() ." seconds long.n";
print "Its interpreted by ". $file->tag->artist()
." and called ". $file->tag->title() ".n";
Audio::File abstracts a single audio file, independant of its format. Using this module you can access a files meta-info like title, album, etc. as well as the files audio-properties like its length and bitrate.
Currently only the formats flac, ogg vorbis and mp3 are supported, but support for other formats may be easily added.
Download (0.073MB)
Added: 2006-06-20 License: GPL (GNU General Public License) Price:
1221 downloads
Audio::Xmpcr 2.6
Audio::Xmpcr is a Perl API to the XM PCR Satellite radio. more>>
Audio::Xmpcr is a Perl API to the XM PCR Satellite radio. It offers two different operating modes (direct and remote+daemon) via a single interface.This is very alpha, use at your own risk. It has only been tested only with few cards.
16 meg all-in-wonder rage 128 capture card.
8 meg all-in-wonder pro capture card.
4 meg all-in-wonder capture card. (ATI Technologies Inc 3D Rage II+ 215GTB [Mach64 GTB])
2 meg ATI Rage II+ video card + an ISA addon tv card.
Ati Rage Pro video card + an ISA addon tv carMythtv currently only supports capture cards that output planar YUV (as far as I know) and the bt82X chip can only output packed format YUV, so until someone patches Mythtv to support other formats...
You do not need the GATOS video driver to use this module in fact you dont even need X. However you should use the gatos video driver if all you want to do is watch tv. (it supports overlay and alot more cards)
Enhancements:
- Enabled CAGC - Automatic Chrominance Gain Control (which should make the colours more vibrant)
- Enabled CKILL - Low Colour Detection and Removal
- Initial support for Closed captioning, I am almost 100% sure this is not supposed to go on /dev/vbi but thats where it is for now. (EDS data can also be captured but I have no place to put the output yet)
<<less16 meg all-in-wonder rage 128 capture card.
8 meg all-in-wonder pro capture card.
4 meg all-in-wonder capture card. (ATI Technologies Inc 3D Rage II+ 215GTB [Mach64 GTB])
2 meg ATI Rage II+ video card + an ISA addon tv card.
Ati Rage Pro video card + an ISA addon tv carMythtv currently only supports capture cards that output planar YUV (as far as I know) and the bt82X chip can only output packed format YUV, so until someone patches Mythtv to support other formats...
You do not need the GATOS video driver to use this module in fact you dont even need X. However you should use the gatos video driver if all you want to do is watch tv. (it supports overlay and alot more cards)
Enhancements:
- Enabled CAGC - Automatic Chrominance Gain Control (which should make the colours more vibrant)
- Enabled CKILL - Low Colour Detection and Removal
- Initial support for Closed captioning, I am almost 100% sure this is not supposed to go on /dev/vbi but thats where it is for now. (EDS data can also be captured but I have no place to put the output yet)
Download (0.043MB)
Added: 2006-07-18 License: GPL (GNU General Public License) Price:
1193 downloads
Audio::MPEG 0.04
Audio::MPEG is a Perl module for encoding and decoding of MPEG Audio (MP3). more>>
Audio::MPEG is a Perl module for encoding and decoding of MPEG Audio (MP3).
SYNOPSIS
use Audio::MPEG;
Audio::MPEG is a Perl interface to the LAME and MAD MPEG audio Layers I, II, and III encoding and decoding libraries.
Rationale
I have been building a fairly extensive MP3 library, and decided to write some software to help manage the collection. Its turned out to be a rather cool piece of software (incidentally, I will be releasing it under the GPL shortly), with both a web and command line interface, good searching, integrated ripping, archive statistics, etc.
However, I also wanted to be able to stream audio, and verify the integrity of files in the archive. It is certainly possible to stream audio (even with re-encoding at a different bitrate) without resorting to writing interface glue like this module, but verification of the files was clumsy at best (e.g. scanning stdout/err for strings), and useless at worst.
Thus, Audio::MPEG was born.
LAME
This is arguably the best quality MPEG encoder available (certainly the best GPL encoder). Portions of the code have been optimized to take advantage of some of the advanced features for Intel/AMD processors, but even on non-optimized machines, such as the PowerPC, it performs quite well (faster than real-time on late 90s (and later) machines).
MAD
This is a relatively new MPEG decoding library. I chose it after struggling to clean up the MPEG decoding library included with LAME (which is based on Michael Hipps mpg123(1) implementation). In the end, I was very pleased with the results. MAD performs its decoding with an internal precision of 24 bits (pro-level quality) with fixed-point arithmetic. The code is very clean, and seems rock-solid. Although it may seem that it should be faster than the mpg123(1) library due to the use of fixed-point arithmetic, it is in fact about 60% or so of the speed (due to the higher resolution audio). However, the ease of coding against MAD, and the higher precision of the output more than makes up for the slower decoding.
Audio::MPEG can export the data at its highest precision for programs that wish to manipulate the data at the higher resolution.
Operating System Environment
I have only tested this on a Linux 2.4.x system so far, but I see no reason why it should not work on any Un*x variant. In fact, it may actually even work on a Windoze box (the underlying LAME and MAD libraries apparently compile somehow on them). I am doing no special magic with the interface, so presumably it will work under Windows. As you can probably tell, I dont really care if it does (Ill may start caring if M$ releases the source code to Windows under GPL, BSD, or Artistic licenses...). But, for you poor, misguided souls that insist upon running Windows, I expect that there should be little problem getting it to work.
Performance
You would think that with encoding/decoding audio, which is quite a compute-intensive task, Perl would be much slower than the equivalent pure C programs. Surprise... it is only about 3% slower (!) Even with the mechanism I use here (Perl->C->Perl for every frame, Perl 5.6.1 and Linux 2.4.4 (PowerPC 7500) performs just fantastic. So, the moral of this paragraph is to run your own performance tests, but theres no need to think of your own Perl encoder/decoder will be inferior to a pure C/C++ implementation. The only drawback is that, depending upon how much buffer space you use for reading, memory usage will be at least 3 times as much (eh... RAM is cheap...)
<<lessSYNOPSIS
use Audio::MPEG;
Audio::MPEG is a Perl interface to the LAME and MAD MPEG audio Layers I, II, and III encoding and decoding libraries.
Rationale
I have been building a fairly extensive MP3 library, and decided to write some software to help manage the collection. Its turned out to be a rather cool piece of software (incidentally, I will be releasing it under the GPL shortly), with both a web and command line interface, good searching, integrated ripping, archive statistics, etc.
However, I also wanted to be able to stream audio, and verify the integrity of files in the archive. It is certainly possible to stream audio (even with re-encoding at a different bitrate) without resorting to writing interface glue like this module, but verification of the files was clumsy at best (e.g. scanning stdout/err for strings), and useless at worst.
Thus, Audio::MPEG was born.
LAME
This is arguably the best quality MPEG encoder available (certainly the best GPL encoder). Portions of the code have been optimized to take advantage of some of the advanced features for Intel/AMD processors, but even on non-optimized machines, such as the PowerPC, it performs quite well (faster than real-time on late 90s (and later) machines).
MAD
This is a relatively new MPEG decoding library. I chose it after struggling to clean up the MPEG decoding library included with LAME (which is based on Michael Hipps mpg123(1) implementation). In the end, I was very pleased with the results. MAD performs its decoding with an internal precision of 24 bits (pro-level quality) with fixed-point arithmetic. The code is very clean, and seems rock-solid. Although it may seem that it should be faster than the mpg123(1) library due to the use of fixed-point arithmetic, it is in fact about 60% or so of the speed (due to the higher resolution audio). However, the ease of coding against MAD, and the higher precision of the output more than makes up for the slower decoding.
Audio::MPEG can export the data at its highest precision for programs that wish to manipulate the data at the higher resolution.
Operating System Environment
I have only tested this on a Linux 2.4.x system so far, but I see no reason why it should not work on any Un*x variant. In fact, it may actually even work on a Windoze box (the underlying LAME and MAD libraries apparently compile somehow on them). I am doing no special magic with the interface, so presumably it will work under Windows. As you can probably tell, I dont really care if it does (Ill may start caring if M$ releases the source code to Windows under GPL, BSD, or Artistic licenses...). But, for you poor, misguided souls that insist upon running Windows, I expect that there should be little problem getting it to work.
Performance
You would think that with encoding/decoding audio, which is quite a compute-intensive task, Perl would be much slower than the equivalent pure C programs. Surprise... it is only about 3% slower (!) Even with the mechanism I use here (Perl->C->Perl for every frame, Perl 5.6.1 and Linux 2.4.4 (PowerPC 7500) performs just fantastic. So, the moral of this paragraph is to run your own performance tests, but theres no need to think of your own Perl encoder/decoder will be inferior to a pure C/C++ implementation. The only drawback is that, depending upon how much buffer space you use for reading, memory usage will be at least 3 times as much (eh... RAM is cheap...)
Download (00057MB)
Added: 2006-06-19 License: GPL (GNU General Public License) Price:
1225 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above audio search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed