diff options
Diffstat (limited to 'tools/gen_sine_440.py')
| -rw-r--r-- | tools/gen_sine_440.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/tools/gen_sine_440.py b/tools/gen_sine_440.py new file mode 100644 index 0000000..6458dc8 --- /dev/null +++ b/tools/gen_sine_440.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 +import wave, struct, math + +SAMPLE_RATE = 32000 +FREQ = 440.0 +DURATION = 1.0 +AMPLITUDE = 32767 + +samples = [int(AMPLITUDE * math.sin(2 * math.pi * FREQ * i / SAMPLE_RATE)) + for i in range(int(SAMPLE_RATE * DURATION))] + +with wave.open("sine_440.wav", "w") as f: + f.setnchannels(1) + f.setsampwidth(2) + f.setframerate(SAMPLE_RATE) + f.writeframes(struct.pack(f"<{len(samples)}h", *samples)) + +print(f"Written sine_440.wav: {FREQ}Hz, {DURATION}s, {SAMPLE_RATE}Hz mono") |
