# HG changeset patch # User Neil Muller # Date 1282917110 -7200 # Node ID 913257638e6f0bc63997a5778063080082869b60 # Parent 37f892b59c4b246eb0a2bd74efa8b4693cca15f5 Add length parameter diff -r 37f892b59c4b -r 913257638e6f tools/gen_sound.py --- a/tools/gen_sound.py Fri Aug 27 13:40:10 2010 +0200 +++ b/tools/gen_sound.py Fri Aug 27 15:51:50 2010 +0200 @@ -1,6 +1,6 @@ # Generate 'perfect' sine wave sounds -# Design notes: produces ~= 0.5s raw CDDA audio - 44100 Hz, 16 bit signed values +# Design notes: produces ~= (use requested) s raw CDDA audio - 44100 Hz, 16 bit signed values # Input is freq in Hz - 440 for A, etc. - must be an integer # Output is written the file beep.pcm # Convert to ogg with oggenc -r @@ -13,7 +13,7 @@ CDDA_RATE = 44100 MAX = 105*256 # Max value for sine wave -def gen_sine(freq): +def gen_sine(freq, secs): filename = 'beep%s.pcm' % freq # We need to generate freq cycles and sample that CDDA_RATE times samples_per_cycle = CDDA_RATE / freq @@ -23,11 +23,15 @@ y = MAX * math.sin(rad) data.append(struct.pack(' 2: + secs = float(sys.argv[2]) + else: + secs = 0.25 + gen_sine(freq, secs)