kleinen Bug behoben und Abfrage für mono/stereo eingebaut

This commit is contained in:
Heiko Ommert 2020-10-06 14:04:41 +02:00
parent c32668034f
commit 92d869023a
2 changed files with 13 additions and 3 deletions

View File

@ -298,7 +298,7 @@ class Sound:
self.filterfortschritt = [4, 0] # der vierte Schritt
start_time = time.time()
wav_obj = wave.open("MyTinnitusFreeSong.wav", "w")
wav_obj = wave.open("gefilterteMusik.wav", "w")
# Rahmenparameter für die .wav-Datei setzen
wav_obj.setparams((self.nchannels, self.sampwidth, self.music_samplerate, nframes, self.comptype, self.compname))

View File

@ -134,7 +134,7 @@ def unten_button_speichern_press():
sound.wav_speichern()
feedback("Daten erfolgreich gespeichert. Siehe: " + sound.wav_name, "white", "green")
except:
feedback("Fehlgeschlagener Speicherversuch! Bitte schließe Microsoft Excel.", "white", "red")
feedback("Fehlgeschlagener Speicherversuch! Bitte schließe Microsoft Excel.", "white", "red")
def unten_button_play_press():
@ -160,6 +160,16 @@ def unten_button_musikdatei_laden_press():
title="Wähle die Musikdatei(.wav) deiner Wahl aus",
filetypes=(("wav Dateien", "*.wav"),))
# überprüfen, ob song stereo ist
try:
wav_obj = wave.open(untererFrame.musikdatei)
except:
feedback("Der ausgewählte Song ist nicht kompatibel", "white", "red")
return
if wav_obj.getnchannels() != 2:
feedback("Der ausgewählte Song ist mono. Bitte wähle einen Song in stereo", "white", "red")
return
samplerate, data = wavfile.read(untererFrame.musikdatei)
sound.music_samplerate = samplerate # die samplerate der ausgewählten Musikdatei an SoundGenerator.py übergeben
@ -209,7 +219,7 @@ def unten_button_filtere_tinnitus_aus_musik():
if sound.filterfortschritt[0] == 5: #ist 5, wenn erfolgreich gefiltert wurde
print("-- filtern beendet --")
feedback("Filtervorgang erfolgreich abgeschlossen. \n"
"Audiodatei unter dem Namen MyTinnitusFreeSong.wav erstellt", "white", "green")
"Audiodatei unter dem Namen gefilterteMusik.wav erstellt", "white", "green")
else:
print("Fehler bei Filterfunktion. Siehe Compiler-Meldungen")
feedback("Fehlgeschlagener Filterversuch. Kontaktiere Entwickler und schreibe eventuell auf was genaud du gemacht hast", "red", "white")