Audio::Wav::Read.3pm

Langue: en

Autres versions - même langue

Version: 2010-05-23 (ubuntu - 24/10/10)

Section: 3 (Bibliothèques de fonctions)

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.12)
     Wolfram humann (pureperl 24 and 32 bit read support in 0.09)
     Kurt George Gjerde <kurt.gjerde@media.uib.no>. (0.02-0.03)