115 lines
3.5 KiB
Plaintext
115 lines
3.5 KiB
Plaintext
|
#!__PERL__ -w
|
||
|
|
||
|
###########################################################################
|
||
|
## ##
|
||
|
## Centre for Speech Technology Research ##
|
||
|
## University of Edinburgh, UK ##
|
||
|
## Copyright (c) 1996 ##
|
||
|
## All Rights Reserved. ##
|
||
|
## ##
|
||
|
## Permission is hereby granted, free of charge, to use and distribute ##
|
||
|
## this software and its documentation without restriction, including ##
|
||
|
## without limitation the rights to use, copy, modify, merge, publish, ##
|
||
|
## distribute, sublicense, and/or sell copies of this work, and to ##
|
||
|
## permit persons to whom this work is furnished to do so, subject to ##
|
||
|
## the following conditions: ##
|
||
|
## 1. The code must retain the above copyright notice, this list of ##
|
||
|
## conditions and the following disclaimer. ##
|
||
|
## 2. Any modifications must be clearly marked as such. ##
|
||
|
## 3. Original authors' names are not deleted. ##
|
||
|
## 4. The authors' names are not used to endorse or promote products ##
|
||
|
## derived from this software without specific prior written ##
|
||
|
## permission. ##
|
||
|
## ##
|
||
|
## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ##
|
||
|
## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ##
|
||
|
## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ##
|
||
|
## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ##
|
||
|
## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ##
|
||
|
## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ##
|
||
|
## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ##
|
||
|
## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ##
|
||
|
## THIS SOFTWARE. ##
|
||
|
## ##
|
||
|
###########################################################################
|
||
|
|
||
|
# /*@name raw_to_xgraph
|
||
|
# *
|
||
|
# * A simple script to convert raw sample data to something
|
||
|
# * xgraph can plot.
|
||
|
# *
|
||
|
# * @author Richard Caley <rjc@cstr.ed.ac.uk>
|
||
|
# * @version $Id: raw_to_xgraph.prl,v 1.2 2001/04/04 13:11:27 awb Exp $
|
||
|
# */
|
||
|
|
||
|
sub useage
|
||
|
{
|
||
|
print <<END;
|
||
|
|
||
|
Convert raw sample data into something xgraph can plot.
|
||
|
|
||
|
Useage: raw_to_xgraph [-help] [ RAW_SAMPLE_DATA_FILE ]
|
||
|
|
||
|
-sr NNN Wave sample rate.
|
||
|
-help Print this help message
|
||
|
|
||
|
END
|
||
|
}
|
||
|
|
||
|
#__SHARED_SETUP__
|
||
|
|
||
|
$stream = STDIN;
|
||
|
$sample_rate = 1;
|
||
|
|
||
|
while ($#ARGV>=0)
|
||
|
{
|
||
|
if ($ARGV[0] =~ /-+h(elp)?/)
|
||
|
{
|
||
|
useage();
|
||
|
exit(0);
|
||
|
}
|
||
|
elsif ($ARGV[0] =~ /-+s(ample)?-?r?(ate)?/)
|
||
|
{
|
||
|
shift @ARGV;
|
||
|
$sample_rate = $ARGV[0];
|
||
|
shift @ARGV;
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
last;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if ($#ARGV>=0)
|
||
|
{
|
||
|
open(INPUT, $ARGV[0]) ||
|
||
|
die "can't open '$ARGV[0]' - $!";
|
||
|
$stream = INPUT;
|
||
|
}
|
||
|
|
||
|
if ($#ARGV >= 0)
|
||
|
{
|
||
|
useage();
|
||
|
exit(1);
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
binmode $stream;
|
||
|
|
||
|
$c=0;
|
||
|
while(sysread($stream, $buf, 256))
|
||
|
{
|
||
|
foreach $i (unpack("s*", $buf))
|
||
|
{
|
||
|
print "",($c++ + 0.0)/$sample_rate, " ", $i, "\n";
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if ($stream eq INPUT)
|
||
|
{
|
||
|
close(INPUT);
|
||
|
}
|
||
|
|
||
|
exit(0);
|