#!/usr/bin/python3 import matplotlib.pyplot as plt import numpy as np from scipy.io import wavfile def wav_zu_png(wav_pfad, png_pfad): samplerate, data = wavfile.read(wav_pfad) # Falls das Audio Stereo ist (2 Kanäle), nehmen wir nur den ersten Kanal if len(data.shape) > 1: data = data[:, 0] dauer = len(data) / samplerate zeit = np.linspace(0, dauer, num=len(data)) plt.figure(figsize=(120, 4)) # Breite und Höhe des Bildes festlegen plt.plot(zeit, data, color="blue", linewidth=0.5) # Beschriftungen und Design plt.title(f"Amplitudenverlauf: {wav_pfad}") plt.xlabel("Zeit (Sekunden)") plt.ylabel("Amplitude") plt.grid(True, linestyle="--", alpha=0.6) plt.xlim(0, dauer) # Achse exakt auf die Audiolänge begrenzen plt.tight_layout() # Optimiert die Ränder, damit nichts abgeschnitten wird plt.savefig(png_pfad, dpi=300) # dpi=300 sorgt für eine scharfe Auflösung plt.close() print(f"Erfolgreich gespeichert unter: {png_pfad}") wav_zu_png("websdr_recording_60khz.wav", "amplitudenverlauf.png")