Noise generated from LFSRs and PRNGs

Sound clips

lfsr08.wav, mono, 8-bit unsigned PCM at 44,100 Hz
Two seconds of noise made from the LFSR below. On every iteration of the LFSR, the 32-bit state provides 4 samples. Effective LFSR clock rate 11,025 Hz.
lfsr16.wav, mono, 16-bit signed PCM at 44,100 Hz
Two seconds of noise made from the LFSR below. On every iteration of the LFSR, the 32-bit state provides 2 samples. Effective LFSR clock rate 22,100 Hz.
rand16.wav
Two seconds of white noise made from the Linux kernel's PRNG device (/dev/urandom)

The LFSR

It's a C implementation of a maximal-length 32-bit LFSR. Taps are 1, 5, 6 and 31 which gives a sequence length of 4,294,967,295 according to Maxim's Application Note 1743. Seed is 0x5555_5555.

lfsr.c
The C source.

The makefile

FILES = rand16.wav lfsr08.wav lfsr16.wav

all: $(FILES)

clean:
	rm -f $(FILES)

rand16.wav:
	dd if=/dev/urandom bs=2 count=88200				\
	  | sox -t raw -c 1 -s -w -r 44100 - -t wav .$@
	mv .$@ $@

lfsr08.wav:
	./lfsr -b -s 0x55555555 -t 0x80000062				\
	  | dd bs=1 count=88200						\
	  | sox -t raw -c 1 -u -b -r 44100 - -t wav .$@
	mv .$@ $@

lfsr16.wav:
	./lfsr -b -s 0x55555555 -t 0x80000062				\
	  | dd bs=2 count=88200						\
	  | sox -t raw -c 1 -s -w -r 44100 - -t wav .$@
	mv .$@ $@

This is http://www.teaser.fr/~amajorel/noise/, last modified AYM 2008-03-06