Una idea que tuve el otro día: hacer ritmos siguiendo una cadena de sonidos predefinidos de Markov .
Recuerdo que alguien hizo un beatbox con Google Translate y el idioma alemán (siga el enlace y presione escuchar).
Entonces, el desafío es construir una entrada de texto para Google Translate desde una cadena determinada. O puede usar notas musicales y tocarlo usted mismo :).
Puede hacer que un programa lea una línea con el número de tiempos, otro con sus nombres y una representación matricial de las probabilidades (puede elegir la representación).
También puede hacer una función con esos tres argumentos.
P.ej
[entrada]
20
pv zk bschk kkkk
[[.1, .4, .5, 0.],
[.3, .2, .3, .2],
[0., .3, .2, .5],
[.1, .8, .1, 0.]]
[salida] algo como:
pv zk bschk zk pv bschk zk pv zk bschk kkkk pv bschk zk bschk bschk bschk zk kkkk bschk
La probabilidad inicial es la misma para cada latido.
Ese no es un desafío de código de golf porque me gustaría ver algunas buenas soluciones (ser creativo).
Puntos extra si inventas nuevos ritmos y / o eliges una tabla de probabilidades que da buenos ritmos la mayor parte del tiempo.
Si lo desea, puede usar ritmos reales (en muchos idiomas es fácil abrir .wav
archivos, como el wave
módulo en Python) y generar música. Aquí hay algunos beats de muestra gratis.
Puedo publicar una implementación de referencia si es necesario.