Tarea Google Colab
Tarea de Aplicación: Retos Musicales con Python
Objetivo General
Aplicar los conceptos de programación en Python aprendidos en el tutorial para crear un proyecto relacionado con la música.
Retos (elige uno)
1. Creador de Escalas Musicales
Desarrolla un programa que genere y reproduzca diferentes escalas musicales basadas en la entrada del usuario.
- Permite al usuario elegir una nota tónica.
- Genera una escala mayor (y opcionalmente una menor) a partir de esa tónica.
- Reproduce la escala generada.
2. Generador de Acordes
Crea un programa que genere y reproduzca acordes musicales.
- Permite al usuario especificar una nota raíz.
- Genera acordes mayores, menores, aumentados y disminuidos.
- Reproduce los acordes generados secuencialmente o simultáneamente.
3. Creador de Patrones Rítmicos
Desarrolla un generador de patrones rítmicos simples.
- Define diferentes sonidos de percusión (por ejemplo, bombo, caja, platillo).
- Permite al usuario especificar un patrón usando una notación simple (por ejemplo, "x--x-x--" donde 'x' es un golpe y '-' es un silencio).
- Genera y reproduce el patrón rítmico especificado.
4. Mezclador de Loops Musicales
Crea un programa que mezcle diferentes loops musicales pregrabados.
- Proporciona al menos 3 loops diferentes (puedes crearlos tú mismo o usar samples libres de derechos).
- Permite al usuario seleccionar qué loops quiere incluir en la mezcla.
- Combina los loops seleccionados y reproduce el resultado.
5. Generador de Melodías Basado en Reglas
Desarrolla un generador de melodías que siga ciertas reglas musicales.
- Define reglas simples (por ejemplo, no más de tres saltos consecutivos, terminar en la tónica).
- Genera melodías aleatorias que sigan estas reglas.
- Permite al usuario especificar la longitud de la melodía y la escala a utilizar.
Pasos Generales a Seguir (para todos los retos)
-
Configuración Inicial
- Crea un nuevo notebook en Google Colab.
- Instala las bibliotecas necesarias (pydub, ffmpeg).
-
Implementación del Reto Elegido
- Desarrolla las funciones necesarias para tu reto específico.
- Implementa la lógica principal del programa.
-
Interacción con el Usuario
- Utiliza
input()
para recoger las elecciones del usuario. - Proporciona instrucciones claras sobre cómo usar el programa.
- Utiliza
-
Generación y Reproducción de Audio
- Utiliza pydub para crear y manipular los segmentos de audio.
- Implementa la reproducción del audio generado en Colab.
-
Documentación y Comentarios
- Comenta tu código adecuadamente para explicar cada paso.
Entregables
- Notebook de Colab con el código completo y funcional.
- Un breve informe que incluya:
- Explicación del enfoque utilizado para resolver el reto.
- Al menos 3 capturas de pantalla comentadas mostrando:
a) El código de la función principal de tu programa.
b) La salida de la ejecución del programa con un ejemplo.
c) Cualquier desafío interesante que hayas enfrentado y cómo lo resolviste. - Una reflexión personal (200-300 palabras) sobre:
- Lo que aprendiste al completar este reto.
- Cómo se relaciona esta tarea con el material del tutorial.
- Ideas para futuras mejoras o expansiones de tu programa.
Criterios de Evaluación
- Funcionalidad: El programa cumple con los requisitos del reto elegido.
- Código: Claridad, organización y comentarios apropiados.
- Creatividad: Cualquier característica adicional o mejora más allá de los requisitos básicos.
- Informe: Claridad en la explicación, relevancia de las capturas de pantalla y profundidad de la reflexión.
¡Buena suerte y disfruta creando música con código!