Provided by: libaudio-wav-perl_0.14-2_all
NAME
Audio::Wav::Read - Module for reading Microsoft WAV files.
SYNOPSIS
use Audio::Wav; my $wav = new Audio::Wav; my $read = $wav -> read( 'filename.wav' ); #OR my $read = Audio::Wav -> read( 'filename.wav' ); my $details = $read -> details();
DESCRIPTION
Reads Microsoft Wav files.
SEE ALSO
Audio::Wav Audio::Wav::Write
NOTES
This module shouldn't be used directly, a blessed object can be returned from Audio::Wav.
METHODS
file_name Returns the file name. my $file = $read -> file_name(); get_info Returns information contained within the wav file. my $info = $read -> get_info(); Returns a reference to a hash containing; (for example, a file marked up for use in Audio::Mix) { 'keywords' => 'bpm:126 key:a', 'name' => 'Mission Venice', 'artist' => 'Nightmares on Wax' }; get_cues Returns the cuepoints marked within the wav file. my $cues = $read -> get_cues(); Returns a reference to a hash containing; (for example, a file marked up for use in Audio::Mix) (position is sample position) { 1 => { label => 'sig', position => 764343, note => 'first', }, 2 => { label => 'fade_in', position => 1661774, note => 'trig', }, 3 => { label => 'sig', position => 18033735, note => 'last', }, 4 => { label => 'fade_out', position => 17145150, note => 'trig', }, 5 => { label => 'end', position => 18271676, } } read_raw Reads raw packed bytes from the current audio data position in the file. my $data = $self -> read_raw( $byte_length ); read_raw_samples Reads raw packed samples from the current audio data position in the file. my $data = $self -> read_raw_samples( $samples ); read Returns the current audio data position sample across all channels. my @channels = $self -> read(); Returns an array of unpacked samples. Each element is a channel i.e ( left, right ). The numbers will be in the range; where $samp_max = ( 2 ** bits_per_sample ) / 2 -$samp_max to +$samp_max position Returns the current audio data position (as byte offset). my $byte_offset = $read -> position(); position_samples Returns the current audio data position (in samples). my $samples = $read -> position_samples(); move_to Moves the current audio data position to byte offset. $read -> move_to( $byte_offset ); move_to_sample Moves the current audio data position to sample offset. $read -> move_to_sample( $sample_offset ); length Returns the number of bytes of audio data in the file. my $audio_bytes = $read -> length(); length_samples Returns the number of samples of audio data in the file. my $audio_samples = $read -> length_samples(); length_seconds Returns the number of seconds of audio data in the file. my $audio_seconds = $read -> length_seconds(); details Returns a reference to a hash of lots of details about the file. Too many to list here, try it with Data::Dumper..... use Data::Dumper; my $details = $read -> details(); print Data::Dumper->Dump([ $details ]); reread_length Rereads the length of the file in case it is being written to as we are reading it. my $new_data_length = $read -> reread_length();
AUTHORS
Nick Peskett (see http://www.peskett.co.uk/ for contact details). Brian Szymanski <ski-cpan@allafrica.com> (0.07-0.14) Wolfram humann (pureperl 24 and 32 bit read support in 0.09) Kurt George Gjerde <kurt.gjerde@media.uib.no>. (0.02-0.03)