#!/usr/bin/env python3 """ Generate test WAV files with a 1kHz sine wave tone at different sample rates. """ import wave import struct import math import os def generate_tone_wav(filename, sample_rate, duration_sec=2.0, frequency=1000.0, amplitude=0.5): """ Generate a WAV file with a single sine wave tone. Args: filename: Output WAV file path sample_rate: Sample rate in Hz (e.g., 16000, 22050, 44100) duration_sec: Duration in seconds frequency: Tone frequency in Hz amplitude: Amplitude 0.0-1.0 """ num_samples = int(sample_rate * duration_sec) # Generate samples samples = [] for i in range(num_samples): t = i / sample_rate sample = amplitude * math.sin(2 * math.pi * frequency * t) # Convert to 16-bit PCM sample_int = int(sample * 32767) samples.append(sample_int) # Write WAV file with wave.open(filename, 'w') as wav_file: wav_file.setnchannels(1) # Mono wav_file.setsampwidth(2) # 16-bit (2 bytes) wav_file.setframerate(sample_rate) for sample in samples: wav_file.writeframes(struct.pack('