Apologies for any typos...
Talk about changing the goalposts...
Here is an example of using my bash executable as a raw file, (genius mode is not a requirement)...
Last login: Tue Sep 29 11:49:18 on ttys000
AMIGA:barrywalker~> cp /bin/bash ~/bash.raw
AMIGA:barrywalker~> ls -l bash.raw-r-xr-xr-x 1 barrywalker staff 1371648 29 Sep 11:50 bash.raw
AMIGA:barrywalker~> ls -l /bin/bash-r-xr-xr-x 1 root wheel 1371648 28 Mar 2013 /bin/bash
AMIGA:barrywalker~> /Users/barrywalker/sox-14.4.0/sox -q -b 8 -r 44100 -e unsigned-integer bash.raw -d
AMIGA:barrywalker~> _
ANY file can act as an audio file so long as you give it an extension of '.raw' INCLUDING shell scripts...
Each file will have its own characteristic sound according to the sample rate, number of channels to be played, bit depth, signed or unsigned, etc...
As you only required basic audio sounds then just experiment.
It is surprisingly easy to generate waveforms, (e.g. sine and square waveforms), WITHOUT the need for sophisticated sound editors. Simple shell scripts can do it...
Take a look at my AudioScope.sh:-
When run and then exited extract the files from the '/tmp' drawer these are all created entirely from the script.
Read the script for more info and see how easy it is to create any type waveform...
As for exctracting audio from a movie frame by frame then I have no idea...
EDIT:-
An example of a bomb out error beep in pure shell scripting...
#!/bin/bash --posix
#
# Generate a fun bomb-out sound using SOX and /dev/dsp...
# $VER: bomb.sh_Version_1.00.00_(C)2013_B.Walker_G0LCU.
#
# This is now Public Domain and ypu may do with as you please...
#
# Tested on a Macbook Pro 13" OSX 10.7.5, using SOX.
# Tested on Debian Linux 6.0.x, using /dev/dsp
# Tesetd on PCLinuxOS 2009, using /dev/dsp.
m=0
n=0
waveform="\\xA0\\xA0\\xA0\\x60\\x60\\x60"
# Initialise the waveform.raw file length to zero.
> /tmp/waveform.raw
# Generate the high start sound.
for m in $( seq 0 1 50 )
do
printf "$waveform" >> /tmp/waveform.raw
done
# Now build up the waveform by adding the correct byte values at the end first then the beginning last.
for n in $( seq 0 1 15 )
do
# Add the correct byte at the end, append the file, looping a few times...
waveform="$waveform\\x60"
for m in $( seq 0 1 10 )
do
printf "$waveform" >> /tmp/waveform.raw
done
# Now add the correct byte at the beginning, append the file, looping a few times...
waveform="\\xA0$waveform"
for m in $( seq 0 1 5 )
do
printf "$waveform" >> /tmp/waveform.raw
done
done
# Now generate a crude explosion...
dd if=/dev/urandom of=/tmp/explosion.raw bs=8000 count=1
# Append to the waveform.raw file...
cat /tmp/explosion.raw >> /tmp/waveform.raw
# Now play back a single run of the raw data using SOX.
# IMPORTANT! Change the path to suit your SOX path...
/Users/barrywalker/sox-14.4.0/sox -q -b 8 -r 8000 -e unsigned-integer /tmp/waveform.raw -d
# A version for /dev/dsp too.
# cat /tmp/waveform.raw > /dev/dsp
#
# DEMO bomb.sh end.
# Enjoy finding simple solutions to often very difficult problems...