Files
ioccc/2011/vik/raw2wav
T
Landon Curt Noll 5d273bd197 fix Makefile and README.md for 2011/vik
Help raw2wav find perl and make executable.
2023-03-23 21:38:43 -07:00

29 lines
750 B
Perl
Executable File

#!/usr/bin/env perl
#
# This work by Simon Cooper is licensed under a Creative Commons
# Attribution-ShareAlike 3.0 Unported License.
#
# Info from: https://ccrma.stanford.edu/courses/422/projects/WaveFormat/
my $file = shift @ARGV;
my $size = -s $file;
my $rate = 44100;
my $samp = 16;
my $chan = 2;
print "RIFF".
pack("V", $size-8). # File size -8
"WAVE". # "Format"
"fmt ". # Subchunk1ID
pack("V", 16). # Subchunk1Size
pack("v", 1). # PCM
pack("v", $chan). # NumChannels
pack("V", $rate). # SampleRate
pack("V", ($rate>>3)*$chan*$samp). # ByteRate
pack("v", $chan*$samp>>3). # BlockAlign
pack("v", $samp). # BitsPerSample
"data". # Subchunk2ID
pack("V",$size-44); # SubchunkSize
system "cat", $file;