🎉 AI song generation with vocals is now live — Subscribe now to use it! 🎵
Prompt
from pydub.generators import Sine
from pydub import AudioSegment
import random
# Parámetros del beat
bpm = 140
beat_duration_ms = int((60 / bpm) * 1000) # duración de un beat en milisegundos
total_duration_ms = 60 * 1000 # 1 minuto
# Crear kick, snare y hi-hat simples como placeholders
kick = Sine(60).to_audio_segment(duration=100).apply_gain(-1) # bajo grave
snare = Sine(180).to_audio_segment(duration=100).apply_gain(-5).fade_in(20).fade_out(20)
hihat = Sine(8000).to_audio_segment(duration=50).apply_gain(-20)
# Patrones básicos
pattern = AudioSegment.silent(duration=0)
for i in range(0, total_duration_ms, beat_duration_ms):
segment = AudioSegment.silent(duration=beat_duration_ms)
if (i // beat_duration_ms) % 4 == 0:
segment = segment.overlay(kick)
if (i // beat_duration_ms) % 4 == 2:
segment = segment.overlay(snare)
# Hi-hats en semicorcheas (cada beat dividido en 4)
for j in range(4):
offset = int(j * (beat_duration_ms / 4))
if random.random() > 0.2: # pequeña variación aleatoria
segment = segment.overlay(hihat, position=offset)
pattern += segment
# Guardar el beat generado
output_path = "beat_trap_1min.mp3"
pattern.export(output_path, format="mp3")
output_path