how to record mic input and pipe the output to another program
Solution 1
This command line has too many outputs listed:
rec -c 1 -r 8000 -t wav -s noise.wav - | ./noise-filter >bits
^file ^standard output
For a command pipeline, the only output should be the -
at the end. The rec
command interprets the noise.wav
parameter as an additional input, which will fail or produce bogus output. Try removing the extra filename (and other unnecessary/incompatible options):
rec -c 1 -t wav - | ./noise-filter > bits
Solution 2
per the tutorial you referenced (I'm following that one, too!) AND the latest-version SoX manpage (as of 9 Nov 2014), the complete, corrected command that worked for me was:
rec -c 1 -r 8000 -t raw -e signed-integer -2 - | ./noise-filter > bits
ent returned these values for a 49,152-byte file:
Entropy = 7.996356 bits per byte.
Optimum compression would reduce the size
of this 49152 byte file by 0 percent.
Chi square distribution for 49152 samples is 247.53, and randomly
would exceed this value 50.00 percent of the times.
Arithmetic mean value of data bytes is 127.5771 (127.5 = random).
Monte Carlo value for Pi is 3.147949219 (error 0.20 percent).
Serial correlation coefficient is -0.002336 (totally uncorrelated = 0.0).
This is pretty good quality random data!
Related videos on Youtube
Admin
Updated on September 18, 2022Comments
-
Admin almost 2 years
Hi everyone Im trying to follow a tutorial on generating truly random bits
How To Generate Truly Random Bits
This is the command from the tutorial but it does not work
rec -c 1 -d /dev/dsp -r 8000 -t wav -s w - | ./noise-filter >bits
I know i can record my mic input using
rec -c 1 no.wav
this is the command i tried using
rec -c 1 -r 8000 -t wav -s noise.wav | ./noise-filter >bits
but i get
root@xxc:~/cc# rec -c 1 -r 8000 -t wav -s noise.wav - | ./noise-filter >bits rec WARN formats: can't set sample rate 8000; using 48000 rec FAIL sox: Input files must have the same sample-rate
I have complied noise-filter
I think the tutorial is using an older version of SOX and REC I'm using
sox: SoX v14.3.2 on Ubuntu 12.04 server
Can someone please help me ?