.mp3 in Variable laden und abspielen

Hier werden alle anderen GUI-Toolkits sowie Spezial-Toolkits wie Spiele-Engines behandelt.
Antworten
webber
User
Beiträge: 6
Registriert: Freitag 11. Januar 2019, 13:29

Guten Tag,

mit meinem Programm spiele ich (zufällig) 10 unterschiedliche (durchnummerierte) mp3-Files ab. Jedes .mp3-File jedoch immer nur für 10 - 15 Sekunden. Da das Python-Script Tag und Nacht läuft (365 Tg./Jahr) entstehen da sehr viele Zugriffe auf die SD-Karte. (Immer die gleichen Speicherzellen.) Das bedeutet u.U. einen schnellen Tod der SD-Karte.

Ich würde die (kleinen) .mp3-Files gern in ein Array packen (Hauptspeicher) und von da aus Abspielen.

Geht das?

Derzeit sieht mein Code (prinzipiell) so aus:

Code: Alles auswählen

import pygame

pygame.mixer.init()
pygame.mixer.music.load("file.mp3")
pygame.mixer.music.set_volume(1.0)
pygame.mixer.music.play()

Wünschen würde ich mir etwas was theoretisch so aussieht:

Code: Alles auswählen

soundfiles[]      #Array initialisieren

for files in mege_sound_files  
	dateiname=str(files)+".mp3"     # Dateinamen zusammenbauen
	soundfile.append(pygame.mixer.music.load(dateiname)      # Sounds in Array laden

x=0
for x in len(soundfiles)-1
	pygame.mixer.music.play(soundfile[x])     # Sounds aus Array abspielen
So gehts natürlich nicht. Weiß jemand wie mans richtig macht? Muss nicht unbedingt PYGAME sein.
(Einfaches Beispiel wäre gut.)


Danke, Michael
__deets__
User
Beiträge: 14528
Registriert: Mittwoch 14. Oktober 2015, 14:29

Alles was du tun musst ist https://www.pygame.org/docs/ref/mixer.h ... ixer.Sound Objekte zu benutzen und dir natürlich auch merken.

Das reine Lesezyklen deine SD Karte belasten ist aber ehe nicht der Fall. Vor allem nicht, wenn du das Filesystem ohne Access Time konfiguriert hast.
webber
User
Beiträge: 6
Registriert: Freitag 11. Januar 2019, 13:29

Danke, das hat geholfen. Super!
Antworten