NAME
Audio::ConvTools - API to convert audio files from/to mp3 ogg and wav
SYNOPSIS
use Audio::ConvTools;
use Audio::ConvTools qw/:DEFAULT :Tmp :Log/;
$status = ogg2mp3('file.ogg');
$status = ogg2wav('file.ogg');
$status = ogg2wav('in.ogg', 'out.wav');
$status = mp32ogg('file.mp3');
$status = mp32wav('file.mp3');
$status = mp32wav('in.mp3', 'out.wav');
$status = wav2ogg('file.wav');
$status = wav2ogg('in.wav', 'out.ogg');
$status = wav2mp3('file.wav');
$status = wav2mp3('in.wav', 'out.mp3');
Audio::ConvTools::logMsg('This is a log message');
Audio::ConvTools::errMsg('This is an error message');
$tmp = Audio::ConvTools::getTmpFile('.wav');
Audio::ConvTools::destroyTmpFile(\$tmp);
OBJECT INTERFACE
No object interface is defined
DESCRIPTION
Audio::ConvTools
provides miscellaneous tools to convert audio files between Ogg Vorbis, MPEG III and Wav files. This is a function interface only.
By default, all the conversions functions are exported. You can also export temporary file usage tools with the :Tmp tag, and logging tools with the :Log tag.
Moreover, two scipts are provided with this package:
audiocdmaker To brun audio CD
audioconv To convert audio files
PROGRAMS USED
To do the conversions, this module uses the following linux programs:
oggdec, tested with version 1.0.1
mpg321, tested with version 0.2.10
oggenc, tested with version 1.0.2
lame, tested with version 3.96.1
FUNCTIONS
EXPORTED BY DEFAULT
ogg2mp3
This makes a conversion from ogg to mp3:
$status = ogg2mp3('file.ogg');
This takes the ogg file name as argument, and returns the status of the conversion.
It first converts the ogg file to wav using ogg2wav, and then converts the wav to ogg.
The input file has to end with '.ogg' (case insensitive). The generated file will have the same name, excepts that '.ogg' will be replaced by 'mp3'.
ogg2wav
This makes a conversion from ogg to wav:
$status = ogg2wav('file.ogg');
$status = ogg2wav('in.ogg', 'out.wav');
This takes the ogg file name as first argument, and returns the status of the conversion. If a second argument is provided, this is the name of the resulting wav file.
The input file has to end with '.ogg' (case insensitive). If the second argument is not provided, the generated file will have the same name, excepts that '.ogg' will be replaced by 'wav'.
mp32ogg
This makes a conversion from ogg to mp3:
$status = mp32ogg('file.mp3');
This takes the mp3 file name as argument, and returns the status of the conversion.
It first converts the mp3 file to wav using mp32wav, and then converts the wav to ogg.
The input file has to end with '.mp3' (case insensitive). The generated file will have the same name, excepts that '.mp3' will be replaced by 'ogg'.
mp32wav
This makes a conversion from mp3 to wav:
$status = mp32wav('file.mp3');
$status = mp32wav('in.mp3', 'out.wav');
This takes the mp3 file name as first argument, and returns the status of the conversion. If a second argument is provided, this is the name of the resulting wav file.
The input file has to end with '.mp3' (case insensitive). If the second argument is not provided, the generated file will have the same name, excepts that '.mp3' will be replaced by 'wav'.
wav2ogg
This makes a conversion from wav to ogg:
$status = wav2ogg('file.wav');
$status = wav2ogg('in.wav', 'out.ogg');
This takes the wav file name as first argument, and returns the status of the conversion. If a second argument is provided, this is the name of the resulting ogg file.
The input file has to end with '.wav' (case insensitive). If the second argument is not provided, the generated file will have the same name, excepts that '.wav' will be replaced by 'ogg'.
wav2mp3
This makes a conversion from wav to mp3:
$status = wav2mp3('file.wav');
$status = wav2mp3('in.wav', 'out.mp3');
This takes the wav file name as first argument, and returns the status of the conversion. If a second argument is provided, this is the name of the resulting mp3 file.
The input file has to end with '.wav' (case insensitive). If the second argument is not provided, the generated file will have the same name, excepts that '.wav' will be replaced by 'mp3'.
EXPORTED BY :Log
logMsg
This prints a contatenation of getNowStr, "INFO:" and the message to STDERR:
logMsg('This is a log message');
errMsg
This prints a contatenation of getNowStr, "ERROR:" and the message to STDERR:
logMsg('This is an error message');
EXPORTED BY :Tmp
getTmpFile
This returns a new File::Temp object with file name extension provided as argument:
my $tmp = getTmpFile('.wav');
destroyTmpFile
This destroys a temp file given, as reference, as argument:
destroyTmpFile(\$tmp)
The deferenced argument will be undef at the end of this function.
NEVER EXPORTED
getVersion
This returns the version of the module:
print "Module Version = " . getVersion();
This is used by binary script (the version of the scripts is the version of the module).
getNowTxt
This returns the actual date and time in format: Day YYYY-MM-DD hh:mm:ss:
print "We are " . getNowStr();
This is used by logMsg and errMsg.
SEE ALSO
File::Temp, String::ShellQuote
AUTHOR
Michael Hooreman <mhooreman at skynet.be>
BUGS
Please report any bugs or feature requests to bug-audioconv-tools at rt.cpan.org
, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Audio-ConvTools. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.
SUPPORT
You can find documentation for this module with the perldoc command.
perldoc Audio::ConvTools
AnnoCPAN: Annotated CPAN documentation
CPAN Ratings
RT: CPAN's request tracker
Search CPAN
COPYRIGHT & LICENSE
Copyright 2006 Michael Hooreman, all rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.