from midiutil import MIDIFile import uuid import os def generate_midi_pattern(bpm, pattern_type): midi = MIDIFile(1) track = 0 time = 0 midi.addTempo(track, time, bpm) if pattern_type == "808": notes = [36, 38, 40] elif pattern_type == "Melody": notes = [60, 64, 67, 72] else: notes = [35, 38] for i, n in enumerate(notes): midi.addNote(track, 0, n, i, 1, 100) filename = f"pattern_{uuid.uuid4().hex}.mid" path = f"assets/generated_beats/{filename}" os.makedirs("assets/generated_beats", exist_ok=True) with open(path, "wb") as f: midi.writeFile(f) return path