20 de febrero de 2015 1 desarrollo de un sistema para la obtención automática del cı́rculo armónico de una canción diego alejandro lópez calvache Proyecto de grado Director del trabajo: Gerardo Mauricio Sarria Montemiranda pontificia universidad javeriana sede cali facultad de ingenierı́a ingenierı́a electronica santiago de cali 2015 Agradecimientos A Dios, a mi madre, mi padre y mi toda mi famila. Agradezco especialmente a mi padre Diego F. López por su sacrificio, a mi tia Lily Calvache por su generosidad y apoyo y a mi tia Sonia López por haber brindado de sus recursos para mi carrera. 2 Resumen El desarrollo musical ha progresado significativamente a la par de la tecnologı́a empezando por los afinadores automáticos que hoy en dı́a ya son comunes pero hasta hace pocos años no se tenı́a esa herramienta, siguiendo esa linea la detección automática de los acordes que componen el cı́rculo armónico de una canción es algo que viene para mejorar el aprendizaje musical o incluso para facilitar la vida de músicos experimentados. En este proyecto lo que se quiso hacer fue un sistema que permitiera encontrar los acordes que forman el cı́rculo armónico de una canción para canciones que tengan el mismo cı́rculo durante toda la pieza musical. Entonces, en principio se tiene la señal digitalizada para poder proceder con los tratamientos digitales. Posteriormente se realiza un filtrado y una segmentación. Esto con el fin de analizar pequeños fragmentos de la señal a la vez. Cuando ya se tienen los fragmentos se obtiene el espectro de cada uno de ellos por separado, teniendo esto se procede a buscar que patrones de notas, correspondientes a distintos acordes, estan presentes en cada segmento y ası́ detectar el acorde que se esta tocando. Después del procesamiento técnico se desarrolla una interfaz de tal forma que el usuario pueda utilizar el sistema de manera cómoda y se hace un registro de resultados con su respectivo análisis. A pesar de que en algunos casos no se obtuvo el acorde esperado, se hace un análisis tanto desde la perspectiva musical como técnica para explicar porque sucede esto. En ese sentido se vio que este es un campo muy amplio y todavı́a se puede hacer mucha investigación para lograr mejoras sustanciales y en poco tiempo lograr reconocer n acordes en n canciones de cualquier complejidad. 3 Abstract The musical development has progressed significantly with the technology starting by automatic tuners, they are common today in the world but until some years ago that tool didn’t exist, following that line the automatic detection of chords that make the harmonic circle in a song is something that is coming to improve the musical learning or even to make life easier for experienced musicians. In this project the thing to be done was a system that allowed finding the chords that make the harmonic circle in a song, it is for songs with the same circle during all musical piece. In principle the signal must be digitized to proceed with the digital treatments. Later a filter and a segmentation are performed. This is done to analyze shorts fragments in the signal at once. When every fragment is ready then every segment’s spectrum is obtained separately to find what pattern of notes, corresponding to different chords, are present in every segment and finally detecting the chord that is being played. After technical processing an interface is developed so that the user can use the system in a comfortable way and a results register is done with its analysis. Although in some cases the expected chord wasn’t obtained, an analysis is done from technical and musical perspective to explain why this happens. In that sense this is a wide field and there is still a lot of things to do much research to get substantial improvements and in a short time to recognize n chords for n songs of any complexity. 4 Índice Indice de figuras 7 1. Capı́tulo 1 1.1. Introducción . . . . . . . . . . . . 1.2. Contexto . . . . . . . . . . . . . . 1.2.1. Sonido . . . . . . . . . . . 1.2.2. Caracterı́sticas del sonido 1.2.3. Cı́rculo armónico . . . . . 1.3. El sonido y la música . . . . . . . 1.4. Notas musicales y acordes . . . . 1.4.1. Notas musicales . . . . . . 1.4.2. Acordes . . . . . . . . . . 1.4.3. Acordes relativos . . . . . 1.5. Señales análogas y digitales . . . 1.6. Muestreo . . . . . . . . . . . . . . 1.7. Transformada de Fourier . . . . . 1.8. Filtrado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 9 9 9 10 11 12 13 13 14 15 15 16 16 17 2. Capı́tulo 2 2.1. Objetivo General . . . . . . . . . . . . . . 2.1.1. Objetivos especı́ficos . . . . . . . . 2.2. Problemática . . . . . . . . . . . . . . . . 2.3. Justificación y alcance . . . . . . . . . . . 2.4. Desarrollos existentes similares al proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 18 19 19 20 21 3. Capı́tulo 3 3.1. Notas en una melodı́a . . . . . . . . . . . 3.2. Como obtener los acordes de una canción 3.3. Concepción general del sistema . . . . . 3.4. Filtrado de la canción . . . . . . . . . . . 3.5. Segmentación de la canción . . . . . . . 3.6. Busqueda de acordes en cada segmento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 22 26 26 27 32 32 . . . . . . 4. Capı́tulo 4 38 4.1. Diseño de interfaz . . . . . . . . . . . . . . . . . . . . . . . . . 38 4.2. Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 5 4.2.1. 4.2.2. 4.2.3. 4.2.4. Acordes detectados en las canciones Acordes detectados con quinta . . . Acordes no esperados en segmentos Registros finales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 40 44 49 5. Capı́tulo 5 52 5.1. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 6. Anexos 53 A. Muestra gráfica del funcionamiento del sistema 53 6 Índice de figuras 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. Filtro Pasa-banda ideal . . . . . . . . . . . . . . . . . . . . . . Software riffstation . . . . . . . . . . . . . . . . . . . . . . . . Espectro de LA de una guitarra . . . . . . . . . . . . . . . . . Zoom espectro LA de una guitarra . . . . . . . . . . . . . . . Zoom 2 espectro LA de una guitarra . . . . . . . . . . . . . . Diagrama de flujo del sistema . . . . . . . . . . . . . . . . . . Fragmento del código que muestra donde se extrae la canción y se asigna la frecuencia de muestreo . . . . . . . . . . . . . . Canción Cı́rculo de amor en el tiempo . . . . . . . . . . . . . . Respuesta del filtro pasa-bandas . . . . . . . . . . . . . . . . . Polos y ceros en el plano z . . . . . . . . . . . . . . . . . . . . Canción Cı́rculo de amor en el tiempo filtrada . . . . . . . . . Espectro de la señal original y filtrada . . . . . . . . . . . . . Primer segmento filtrado . . . . . . . . . . . . . . . . . . . . . Segundo segmento filtrado . . . . . . . . . . . . . . . . . . . . Tercer segmento filtrado . . . . . . . . . . . . . . . . . . . . . Cuarto segmento filtrado . . . . . . . . . . . . . . . . . . . . . Espectro del primer segmento . . . . . . . . . . . . . . . . . . Espectro del segundo segmento . . . . . . . . . . . . . . . . . Espectro del tercer segmento . . . . . . . . . . . . . . . . . . . Espectro del cuarto segmento . . . . . . . . . . . . . . . . . . Diseño de la interfaz para el usuario . . . . . . . . . . . . . . . Tabla comparación de resultados . . . . . . . . . . . . . . . . Armónicos del segmento de A De pies a cabeza . . . . . . . . Acercamiento del espectro del segmento de A . . . . . . . . . Acercamiento de otro armónico del espectro del segmento de A Acercamiento de un tercer armónico del espectro del segmento de A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Armónicos del segmento de B De pies a cabeza . . . . . . . . . Acercamiento del espectro del segmento de B . . . . . . . . . . Acercamiento otro armónico del espectro del segmento de B . Armónicos del segmendo del acorde de G Mariposas . . . . . . Acercamiento del espectro del segmento de G . . . . . . . . . Acercamiento otro armónico del espectro del segmento de G . 7 19 23 24 24 25 27 28 28 29 30 31 31 33 33 34 34 35 36 36 37 38 40 42 42 43 43 44 45 45 47 48 48 33. 34. 35. 36. 37. 38. 39. Acercamiento un tercer armónico del espectro del segmento de G. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Registro de resultados . . . . . . . . . . . . . . . . . . . . . Gráfica de comparación de resultados . . . . . . . . . . . . . Función del botón Examinar . . . . . . . . . . . . . . . . . . Canción lista . . . . . . . . . . . . . . . . . . . . . . . . . . Función del botón Buscar acorde . . . . . . . . . . . . . . . Función del botón Limpiar . . . . . . . . . . . . . . . . . . . 8 . . . . . . . 49 50 51 53 54 55 56 1. 1.1. Capı́tulo 1 Introducción Cuando se trata de encontrar tecnologı́as innovadoras que permitan mejorar el nivel de vida de las personas en diferentes aspectos, la investigación realizada es un paso fundamental para la consecusión de los objetivos propuestos, que en esta ocasión tienen que ver con el tratamiento de señales de audio. En el caso de este proyecto, lo que se buscó fue obtener el cı́rculo armónico de una determinada canción. Esto se hace con un enfoque principalmente orientado a la enseñanza de nuevos músicos, ya que existirı́a una herramienta más didáctica para que los estudiantes de música puedan entender si lo que hacen solos en la práctica está bien o deben corregir errores. En ese orden de ideas el presente documento muestra lo que se ha logrado y los objetivos propuestos y desarrollados para la consecución de un proyecto exitoso. 1.2. 1.2.1. Contexto Sonido “Lo que llamamos sonido es una onda que tras el estremecimiento de una o varias fuentes llamadas cuerpos sonoros se propaga según unas leyes muy particulares, y de paso, afecta lo que llamamos oreja, a la que proporciona materia para sensaciones auditivas”[Chi99]. Se puede decir en términos más sencillos que el sonido es la percepción que tiene el oı́do debido a las vibraciones de una fuente, las cuales viajan a través del aire u otro medio. Cuando el oı́do percibe estas vibraciones, se envı́an como impulsos hacia el cerebro el cual los interpreta como sonidos. Cabe recalcar que el sonido es una onda mecánica, por lo tanto necesita un medio (aire, agua u otro) para desplazarse, de lo contrario no habrá sonido qué escuchar. Pasando a la velocidad de propagación, en el aire la velocidad del sonido es de 340 metros por segundo aproximadamente, en el agua es aproximadamente de 1500 metros por segundo y hay otros medios por los que se propaga el sonido pero en el caso de la música se tiene en cuenta 9 el aire que es el medio por el cual llega a nuestros oı́dos. A pesar de que los sonidos musicales también utilicen cables o medios sólidos especialmente para realizar grabaciones, llega a al oı́do humano por medio del aire. 1.2.2. Caracterı́sticas del sonido Los sonidos en general poseen tres caracterı́sticas particulares que influyen en cómo los percibe el oı́do. De acuerdo a esto las tres caracterı́sticas son: timbre, intensidad y tono. Estas caracterı́sticas van ligadas a las propiedades fı́sicas del sonido lo cual se va a explicar a continuación. Timbre: Tiene que ver con la capacidad que tiene el oı́do para diferenciar distintos sonidos o en música distintos instrumentos. Es decir, nos permite discernir entre sonidos que pueden tener la misma frecuencia e intensidad pero vienen de distintas fuentes o instrumentos. También se debe tener en cuenta que el timbre va ligado a diversas caractericas. “Si se toca el La situado sobre el Do central en un violı́n, un piano y un diapasón, con la misma intensidad en los tres casos, los sonidos son idénticos en frecuencia y amplitud, pero muy diferentes en timbre. De las tres fuentes, el diapasón es el que produce el tono más sencillo, que en este caso está formado casi exclusivamente por vibraciones con frecuencias de 440 Hz”. [BF09] Intensidad: La fuerza con la que se pueda percibir un sonido depende de su intensidad, esta caracterı́stica depende de la amplitud de la onda, pero la distancia a la que se esté de la fuente también influye. “La intensidad es el flujo medio de energı́a por unidad de área perpendicular a la dirección de propagación”. [BF09] En la realidad las condiciones del medio influyen atenuando el sonido en la mayorı́a de los casos. Tono: El tono permite diferenciar sonidos agudos de graves y va ligado a la frecuencia. En ese sentido a mayor frecuencia el tono será más agudo y a menor frecuencia será más grave. El rango auditivo para los seres humanos va desde 20 Hz hasta 20 KHz sin embargo en la realidad se escuchan menos frecuencias altas a mayores edades y un adulto mayor no escucha ciertas frecuencias que 10 un joven y a su vez este no escucha ciertas frecuencias que un niño si escucha. Pasando a la parte musical la relación matemática entre la altura y la frecuencia es la siguiente.“Si se conoce la frecuencia de una nota de la escala, por ejemplo f La, la frecuencia de la nota ubicada un semitono más arriba (es decir, en un teclado, la tecla blanca o negra inmediatamente√a la derecha), en este caso f Si[, puede obtenerse multiplicando por 12 2 : √ f Si[= 12 2 · fLa es decir: f Si[=1,05946 ·fLa Ası́, si f La = 440 Hz, resulta f Si[=466,16Hz”[Miy00]. √ Esta relación de multiplicación por 12 2 para obtener la frecuencia del siguiente semitono de una nota es valida en la escala temperada de temperamento uniforme. En esta escala las notas de una octava se han dividido en 12 intervalos iguales. En secciones porteriores se va a dar claridad sobre las notas de esta escala que es la que se utiliza. 1.2.3. Cı́rculo armónico Los cı́rculos armónicos que componen una canción corresponden a la secuencia de acordes que componen dicha canción. Estos acordes siguen unas reglas bajo las cuales se rigen para formar el cı́rculo. Sin embargo esto no se debe seguir siempre al pie de la letra, los músicos pueden poner tantos acordes como crean necesarios para los propositos musicales y los pueden organizar de distintas formas en tanto se logre la armonı́a o la tensión requerida. Teniendo en cuenta lo dicho, una regla básica indica que el primer acorde es el grado 1 (acorde mayor), el segundo es el grado 6 (acorde menor), el tercero es el grado 2 (acorde menor) y el cuarto es el grado 5 (acorde con septima), sin embargo como ya se mencionó, un músico no necesariamente debe seguir esta regla, lo importante es cumplir con los propositos musicales. 11 1.3. El sonido y la música Hay una disciplina encargada de estudiar cómo se comportan los instrumentos y los sonidos para lograr sensaciones musicales en el ser humano, esta disciplina es la acústica musical y va ligada también al efecto que puede causar la música incluso a nivel psicológico. La acústica musical estudia también la parte fisica de los sonidos musicales y las sensaciones que ocasionan en los humanos como la consonancia y disonancia, conceptos fundamentales para el estudio de la acústica musical porque permiten entender como se van a estructurar los sonidos para lograr acordes y piezas musicales. Para entender los efectos que tiene la música sobre las personas y cómo se organizan los sonidos para formar melodı́as armónicas es necesario entrar en los conceptos de disonancia y consonancia. Disonancia es el efecto que se produce cuando dos sonidos (notas) de diferentes frecuencias suenan al mismo tiempo y producen pulsaciones con una frecuencia equivalente a la diferencia de las frecuencias originales y esto provoca un efecto de tensión para el oı́do humano que muchas veces se relaciona con desagrado, obviamente esto es muy relativo, pero en música también depende del efecto que se quiera generar. Esto ocurre siempre y cuando una de las frecuencias que suena no sea un armónico de la otra o no tenga una proporción que genere una consonancia que se va a explicar a continuación. Antes de pasar al concepto de consonancia se ilustran un poco los efectos que producen estas pulsaciones equivalentes a la diferencia de las frecuencias. En el caso donde hay amplitudes iguales “si las pulsaciones son un poco más rápidas, por ejemplo 1 ó 2 Hz, se percibe un efecto llamado trémolo, semejante a notas repetidas. Si son bastante más rápidas, por ejemplo 5 ó 10 Hz hasta unos 50 Hz, el resultado produce una sensación de agitación comúnmente denominada disonancia”[Miy00], pero en general estos efectos también dependen de la amplitud de las ondas. Por otro lado consonancia es lo contrario a disonancia, por lo tanto la consonancia hace que entre los sonidos (notas) no se perciba cierta sensación de agitación, lo que muchas veces se realciona con sonidos agradables al oı́do humano, pero como ya se ha mencionado esto es sumamente relativo. “La condición para esto es que no exista interferencia entre armónicos importantes, es decir intensos, de uno y otro sonido. Ası́, tenemos que la consonancia 12 más perfecta es el unı́sono (frecuencias exactamente iguales), ya que en ese caso no hay en absoluto pulsaciones. Luego sigue la octava, es decir cuando los sonidos están en una relación de frecuencias 2:1 (un sonido tiene el doble de frecuencia que el otro). Aquı́ tampoco hay posibilidad de choques entre armónicos, porque todos los armónicos del más agudo coinciden exactamente con armónicos del más grave. Luego sigue la quinta, que corresponde a una relación de frecuencias de 3:2 (uno de los sonidos tiene frecuencia 1,5 veces la del otro)”[Miy00]. 1.4. 1.4.1. Notas musicales y acordes Notas musicales Desde hace mucho tiempo la música ha hecho parte de la historia de la humanidad. A lo largo del tiempo muchos genios han desarrollado obras musicales que sobrepasan las generaciones y continúan vigentes aún cuando sus autores ya no están. En ese orden de ideas, las grandes y pequeñas obras musicales son posibles gracias al conocimiento y manejo de las notas musicales existentes y los acordes que con ellas se pueden formar. Después de lo dicho anteriormente se va a explicar cuáles son las notas musicales tomando como base “La” de 440Hz, ya que ese es el estándar que se utiliza. En primer lugar la escala natural de Do se compone de 7 notas: Do, Re, Mi, Fa, Sol, La, Si pero las notas también tiene alteraciones, tiene sostenidos (#) que corresponden a medio tono más alto que la nota y bemoles ([)que corresponden a medio tono más bajo que la nota, por lo tanto el sostenido de una nota es el bemol de otra, por ejemplo: de Do a Re hay un tono, es decir que medio tono más alto que Do es medio tono más bajo que Re. Por esta razón las notas completas son 12 y quedarı́an ası́: Do, Do#(Re[), Re, Re#(Mi[), Mi, Fa, Fa#(Sol[), Sol, Sol#(La[), La, La#(Si[), Si, Do. De acuerdo a esto se ve que no hay sostenido en las Notas Mi y Si, esto es debido a que de Mi a Fa solo hay medio tono, igual que en el caso de Si a Do. Ahora si bien ya se conocen los nombres de las notas, la notación que se va a utilizar es el cifrado americano, ya que es el estándar utilizado, por 13 Nota Do Re Mi Fa Sol La Si Cifrado americano C D E F G A B Cuadro 1: Tabla de acordes lo tanto de aquı́ en adelante para nombrar las notas se van a utilizar, en muchas ocasiones, letras de acuerdo al cuadro 1 y siempre para nombrar los acordes. 1.4.2. Acordes De acuerdo a lo ya mencionado hay que entender cómo se forma un acorde. En primer lugar un acorde es un conjunto de notas que se tocan simultáneamente y suenan de manera armónica o crean tensión, dependiendo de la organización musical. Los acordes están compuestos generalmente por 3 notas, la fundamental o tónica que dice en qué tono se está tocando, la tercera que dice en qué modo se toca (se aborda este tema en el siguiente párrafo) y la quinta. Los acordes tienen 2 modos, mayor y menor, y se determina el modo de acuerdo al intervalo que hay entre la nota fundamental y la tercera. Si entre la fundamental y la tercera nota hay dos tonos se entenderá que es un acorde mayor. Por otro lado si entre la fundamental y la tercera nota hay un tono y medio se entenderá que es un acorde menor. También en muchas ocasiones se relacionan los acordes menores con un sonido triste o nostálgico y los acordes mayores con un sonido más alegre, sin embargo esto también depende de las percepciones de cada persona. Para entender mejor lo explicado anteriormente se va a dar un ejemplo del acorde de C (Do mayor) y Cm (Do menor). Retomando la escala musical se tiene: Do, Re, M i, F a, Sol, La, Si La tercera de Do es MI, ası́ que si se unen Do-Mi-Sol se tiene un C ya que de 14 Do a MI hay 2 tonos. Ahora si se unen Do-Mi[-Sol se tiene un Cm ya que de DO a Mi[ hay un tono y medio y ası́ es como ocurre para los demás acordes que no tienen variaciones como disminuidos o aumentados, los cuales sufren alteraciones en la quinta pero no hacen parte del foco de estudio para este proyecto. 1.4.3. Acordes relativos Acordes relativos son aquellos acordes que al estar compuestos por 3 notas comparten 2 notas, es decir que un acorde es relativo de otro si tiene 2 notas iguales al otro y una diferente. En algunos casos se podrı́a reemplazar un acorde por su relativo, esto es más común en ciertos géneros que en otros pero igual es válido para cualquier tipo de género. Para ilustrar un ejemplo, retomemos como base el acorde de C, el cual tiene las notas: Do-Mi-Sol, ahora si se retrocede en la escala podemos encontrar el acorde de Am, el cual tiene las notas: La-Do-Mi. Se puede ver que se comparten las notas Do-Mi pero Sol hace parte de la escala de Am y La hace parte de la escala de C, esto hace que en ocasiones un músico decida cambiar un acorde por otro para dar nuevos matices dependiendo del efecto que se quiera lograr. 1.5. Señales análogas y digitales En primer lugar una señal es una función de parámetros que representan información acerca del comportamiento de distintos tipos de fenómenos analizados. Estas señales pueden ser análogas o digitales. Una señal análoga es aquella en la cual si la variable independiente es continua, se toman todos los valores de un intervalo dado y permite representar y estudiar distintos fenomenos, fı́sicos, eléctricos, etc. En el mundo real las percepciones que tiene el ser humano son análogas como el sonido, la luz o incluso el tiempo. Por otro lado una señal en tiempo discreto es aquella que solo toma algunos valores en el tiempo. 15 “Para que una señal pueda ser procesada digitalmente ha de ser en tiempo discreto y tomar valores discretos (es decir, ha de ser una señal digital). Si la señal a procesar es analógica, se convierte a digital muestreándola en el tiempo y obteniendo por tanto una señal en tiempo discreto”[PM98]. 1.6. Muestreo El proceso de muestreo consiste en convertir una señal análoga en una señal discreta. Esto se hace tomando muestras de la señal continua en ciertos instantes de tiempo a una frecuencia determinada llamada frecuencia de muestreo. El inverso de la frecuencia de muestreo será el periodo o intervalo de muestreo para una señal muestreada xa (nT ). “Ası́ si xa (t) es la entrada al muestreador la salida es xa (nT ) ≡ x(n) donde T se denomina el intervalo de muestreo”[PM98] y n es un entero. Para que la señal muestreada conserve información relevante de la señal original, el teorema del muestreo dice que la frecuencia de muestreo debe ser al menos del doble de la máxima frecuencia de la señal continua como se muestra en la expresión. fs ≥ 2 · fm Para el caso de este proyecto, por ser señales de audio, se utiliza como frecuencia de muestreo 44100 Hz ya que es la utilizada como estándar para aplicaciones con sonido digital, además garantiza más del doble de la máxima frecuencia audible por el oı́do humano que es de 20 KHz. Por lo tanto después de obtener la señal digital se puede hacer el procesamiento y los análisis necesarios para separar frecuencias, segmentar señales o lo que sea necesario para resolver el problema planteado. 1.7. Transformada de Fourier La transformada de Fourier permite transformar una señal que está en el dominio del tiempo al domino de la frecuencia para su análisis en este último. Antes de la transformada de Fourier se retoman un poco las series de Fourier. “La idea básica de las series de Fourier es que toda función periódica de 16 perı́odo T puede ser expresada como una suma trigonométrica de senos y cosenos del mismo perı́odo T”[Gon97]. Las series de Fourier permiten obtener los componentes de frecuencias de señales con las carateristicas mencionadas y tienen diversos campos de aplicación. Sin embargo cuando se va a trabajar con señales que no son periódicas, como sonidos reales por ejemplo, se debe buscar otra forma de análisis por lo cual se busca el análisis con la transformada de Fourier. La implementación de transformadas de Fourier se utiliza en este proyecto para obtener el espectro en frecuencia de las canciones (señales) con que se va a trabajar con el fin de hacer un análisis más claro de lo que hay que filtrar y posteriormente de lo que hay que seleccionar. De acuerdo a las necesidades del proyecto se utiliza la transformada discreta de Fourier ya que se va a trabajar con señales discretizadas, pero en la práctica se implementa la transformada rápida de Fourier, “en la práctica, el costo computacional del cálculo de la DFT se reduce utilizando la transformada rápida de Fourier (FFT)”[SSV05]. La transformada discreta de Fourier viene dada por la expresión: X(k) = N −1 X x(n)e−j2nkπ/N n=1 1.8. Filtrado “Puede definirse como filtro cualquier dispositivo que modifica de un modo determinado una señal que pasa a través de él”[Miy04]. En diversas aplicaciones de comunicaciones, sistemas de audio, música, entre otras es necesario trabajar con ciertas frecuencias y no con otras que pueden estar presentes en las señales a tratar. Debido a esto se hace necesario discriminar frecuencias para seleccionar las que se requieren de acuerdo a la necesidad que se tenga. Para lograr esto se utilizan los filtros, de acuerdo a su aplicación se pueden encontrar filtros eléctricos, acústicos, entre otros. Pero en cualquier caso los filtros permiten discernir entre las frecuencias que se quieren dejar pasar y las que no. De acuerdo a lo anterior se pueden encontrar 4 tipos de filtros: 17 Filtro pasa-altas: Permite el paso de las frecuencias mayores a una determinada frecuencia de corte y evita el paso de frecuencias inferiores. Filtro pasa-bajas: Permite el paso de las frecuencias menores a una determinada frecuencia de corte y evita el paso de frecuencias superiores. Filtro pasa-bandas: Permite el paso de las frecuencias que se encuentran dentro de una banda llamada banda de paso y evita el paso de las frecuencias fuera de la banda. Filtro rechaza-bandas: Permite el paso de las frecuencias que se encuentran por fuera de una banda llamada banda de rechazo y evita el paso de frecuencias dentro de la banda. Para el caso de estudio del proyecto se va a implementar un filtro pasa-bandas ya que es lo que se requiere de acuerdo a las necesidades. En este proyecto se requiere un filtro para analizar sonidos musicales que se encuetran dentro de un rango de notas en la guitarra en el cual principalmente se hacen acordes. Para esto se tuvo en cuenta la guitarra pero otros instrumentos también entran en este rango y por lo tanto sus sonidos entran en el análisis de este estudio. Idealmente el filtro pasa-bandas se ve como en la Figura 1. Para el proyecto el filtro se diseñó con las herramientas que matlab ofrece. Matlab permite diseñar filtros análogos o digitales a partir de las funciones de los filtros análogos, en este caso se diseñó un filtro digital IIR con las funciones y herramientas de diseño para un filtro Butterworth. “El filtro Butterworth o maximally flat se caracteriza por tener una respuesta plana en la banda de paso”[DV07]. Esta caracterı́stica principalmente hizo que se optara por este filtro en particular. 2. 2.1. Capı́tulo 2 Objetivo General El objetivo general de este proyecto consiste en desarrollar un sistema con el cual se pueda obtener el cı́rculo armónico de una canción, utilizando el procesamiento digital de señales con aplicaciones en audio. 18 Figura 1: Filtro Pasa-banda ideal 2.1.1. Objetivos especı́ficos Analizar cómo se determinan los distintos tipos de cı́rculos armónicos que pueden utilizarse en diferentes piezas musicales. Lograr el diseño de una interfaz que se adecúe cómodamente para ser utilizada por músicos principiantes Desarrollar diferentes algoritmos para filtrado y selección de señales en Matlab utilizando las herramientas conocidas y encontrar lo mejor de las herramientas con las que no se ha trabajado para mejorar el diseño. Diseñar pruebas con canciones seleccionadas, en formato wav, para verificar el funcionamiento completo del sistema. 2.2. Problemática Actualmente hay muy buenos profesores que pueden hacer que un estudiante se sienta cómodo en sus inicios. El problema es que cuando el estudiante se dedica a sus horas de práctica solo, generalmente no tiene cómo saber si lo está haciendo bien, cuando intenta obtener una canción a oı́do, ya que en el inicio todavı́a hay dudas y las personas aún no saben que tan bien hacen las cosas. En ese orden de ideas, serı́a de mucha ayuda que los nuevos estudiantes tuvieran una forma de saber en qué se están equivocando cuando estudian 19 solos, lo cual ayudarı́a a fomentar su curiosidad y de la misma forma su motivación por aprender. Entonces resulta muy apropiada una herramienta que le permita al estudiante comprobar si lo que está haciendo está bien. En ese sentido la pregunta que surge es: ¿Cómo obtener automáticamente el cı́rculo armónico de una canción para que el estudiante pueda comprobar de manera inmediata los resultados de su interpretación? 2.3. Justificación y alcance En el mundo de hoy la diferencia con respecto a lo que se vivı́a hace unos 15 años, musicalmente hablando, es que ahora existen muchos medios electrónicos que en cierta forma hacen la mayorı́a de las cosas más fáciles, no solo para los profesionales de la música, si no para las personas particulares que solo quieren escucharla. Del mismo modo el aprendizaje de la música no se puede quedar atrás, ya que existen muchos métodos para mejorar, los cuales incluyen métodos didácticos y tecnológicos, que se deben aprovechar de la mejor manera posible. Por lo tanto, se podrı́an buscar diversas formas de mejorar el aprendizaje musical, electrónicamente, de hecho en internet se encuentran muchos tutoriales y software, también existen artı́culos sobre los buenos resultados de la unión entre música y tecnologı́a, en especial uno donde se habla de esta fuerte relación con la música electrónica [Zam12], pero la idea que en este proyecto se plantea le permite al estudiante hacer las cosas por sı́ solo y luego rectificar que lo que ha hecho está bien o qué es lo que hay que corregir. Entonces, de la misma manera en la que un estudiante de segundo grado, cuando estudia en casa, puede utilizar una calculadora para demostrar si las sumas o restas que hizo, finalmente están correctas, un estudiante (principiante) de música puede verificar si el cı́rculo armónico que él ha estimado a oı́do es correcto y con ese enfoque se desarrolla este proyecto. Con respecto a la búsqueda de nuevos métodos, el procesamiento digital de señales ofrece la oportunidad de crear sistemas novedosos que permitan tratar una canción, por ejemplo. Esto con el fin de obtener lo que se considere más útil para aprender. De este modo se puede conseguir el sonido de instrumentos por separado [BF09], obtener notas, etc. Y esto permitirá también que los nuevos estudiantes puedan aprender y aplicar más rápidamente manteniendo activa la motivación. 20 También de acuerdo a las investigaciones se puede decir que el procesamiento digital de señales de audio tiene una amplia gama de aplicaciones sobre todo en el campo musical. Las aplicaciones que Matlab ofrece son ideales para estos fines por eso se ha escogido este software para la realización del proyecto planteado ya que se ha visto que con respecto a otros software, como Octave por ejemplo, Matlab además de una interfaz más cómoda para trabajar ofrece las funciones necesarias para el procesamiento completo de señales que requiere un proyecto como este, mientras que con Octave hay que encontrar otros métodos, por eso Matlab es lo que más le conviene al proyecto. Por otro lado, considerando las restricciones, la restricción principal que se consideró fue que la introducción de la canción se toque igual que en los versos y el coro con el fin de procesar solo la parte musical y no la voz, por lo tanto se trabajó con canciones del género del rock y pop en español, son las que en su mayorı́a cumplen con los requerimientos planteados, y en algunos casos en ingles ya que cumplı́an con las caracterı́sticas. En esta parte se hace la aclaración de que solo se trabajó con respecto al cı́rculo armónico y no se incurrió en ritmo o melodı́a de la canción, además de que tampoco se han tratado canciones que tengan arpegios complejos o alguna clase de solo instrumental en su introducción. Con respecto a la interacción con el usuario, los resultados han sido entregados en forma de texto ya que es una manera cómoda y comprensible para quienes apenas están aprendiendo música. También vale aclarar que dado que el sistema se ha desarrollado en Matlab, solo será posible utilizarlo en equipos con un sistema operativo que soporte este software. 2.4. Desarrollos existentes similares al proyecto Como es conocido por todo el que va a realizar un proyecto investigativo, es necesario primero buscar fuentes confiables que permitan establecer bases para la realización del proyecto. En ese orden de ideas se han buscado diversas fuentes para lograr los objetivos de este proyectoo y en esa búsqueda se han encontrado sistemas similares al que aquı́ se presenta y a continuación se muestran algunos. Inicialmente hay un proyecto de grado similar, es el trabajo [Mac12] que pretende encontrar los acordes de una serie de canciones de Michael Jackson y The beatles solamente, además de que hacen comparaciones con acordes 21 puros, es decir tocados solamente por el instrumento sin incluirlos en la canción. El enfoque del proyecto mencionado es similar al aquı́ planteado pero con canciones más limitadas. Si bien el proyecto que se ha desarrollado tiene sus restricciones, permite abarcar distintas canciones de distintos artistas, no por eso se desconoce que el trabajo mencionado esta muy bien hecho y puede ser de gran utilidad para estudios posteriores. Otro proyecto similar a este, es el trabajo [Ber02] el cual es una tesis doctoral y consiste en identificar automáticamente los acordes tocados por un piano. Esta tesis doctoral abarca una serie de acordes de mayor complejidad que los realizados en este proyecto además de que el rango de frecuencias también es más amplio ya que toma 7 octavas del piano. Esta tesis doctoral permite identificar los acordes como se tocarı́an realmente en un piano, es decir con acompañamiento de otras notas y también hace un analisis incluso fı́sico de la composición del piano y cómo afecta el sonido. Existe otro software ya a nivel comercial de riffstation, es el software [Rif] el cual permite hallar los acordes de cualquier canción con una precisión, como lo dice en su pagina web, del 85 % aproximadamente. Este software es muy completo ya que cuenta con una interfaz que permite ver en que momento de la canción ocurre el cambio de acorde y como se hacen los acordes en la guitarra, entre otras funciones, pero este software tiene un precio elevado por lo cual no es de fácil acceso. Una imagen del software se puede ver en la Figura 2. 3. 3.1. Capı́tulo 3 Notas en una melodı́a Cómo ya se ha mencionado anteriormente, existen 7 notas musicales en la escala natural y también están sus bemoles y sostenidos, es decir que se tienen 12 notas. Cada nota tiene su respectiva frecuencia, y sus armónicos corresponden a la misma nota solo que más grave o más aguda. Para ilustrar lo anterior se toma el ejemplo de “La” 440 Hz. Para este caso 880 Hz también corresponde a un “La”, pero más agudo (una octava más alta en términos musicales), esto mismo ocurre con las demás notas musicales y también con todos los armónicos de cualquier nota musical o sonido. 22 Figura 2: Software riffstation Un ejemplo de como al grabar una nota, también se perciben sus armónicos se puede ver en la Figura 3. En la Figura 5 se puede observar que existe un armónico distinto al de la Figura 4 para el mismo audio correspondiente a la nota musical La, en este caso emitida por una guitarra. 23 Figura 3: Espectro de LA de una guitarra Figura 4: Zoom espectro LA de una guitarra 24 Figura 5: Zoom 2 espectro LA de una guitarra Ahora bien hay que recalcar la importancia de un conocimiento musical sólido para hacer uso correcto de las notas musicales en una composición musical. Además del uso correcto de las notas, estas deben sonar de forma agradable ya que la música va dirigida a otros seres humanos. Por eso aunque es importante el estudio teórico en la música “ya que definir unidades musicales, asignarles nombres, medirlas y contarlas son los actos mentales iniciales que llevan al conocimiento musical”[Row99], no basta con estudiar solamente la teorı́a, para lograr una alta calidad y piezas agradables, se debe practicar la interpretación ya que como lo expresa Thurston Dart “leer un libro no enseñará cómo ejecutar un instrumento musical del mismo modo que no enseñará a pintar”[Dar78]. Un músico puede obtener las notas a oı́do de acuerdo a alguna referencia y siguiendo algunas reglas de música pero para el caso de estudio las notas que se van obtener por medio del procesamiento digital de señales van a estar enfocadas a encontrar el acorde que se esté tocando en determinado instante de tiempo. 25 3.2. Como obtener los acordes de una canción Retomando el tema de los acordes, se habı́a mencionado que se componen por un conjunto de notas, los acordes pueden ser mayores o menores dependiendo de cómo se junten sus notas según se explicó anteriormente. Para la obtención de acordes en la práctica real lo que hace un músico generalmente es poner la canción y busca con los bajos que nota puede ser la fundamental, escucha si el sonido es alegre o triste para poder encontrar el modo del acorde o simplente prueba un modo u otro. Algunas veces detectan rápidamente el primer acorde solo a oı́do y de ahı́ en adelante se trata de sacar los demás de acuerdo a ciertas reglas musicales (aunque no siempre se siguen al pie de la letra) o encuentra los acordes que pueda y de acuerdo a eso saca los demás. Estos métodos mencionados no siguen el orden descrito ni ningún otro, todo depende del músico y su habilidad. Ahora bien, se sabe que los acordes estan compuestos por varias notas musicales, se puede ver una gama amplia de composición de acordes con 3, 4, 5 o más notas y todas sus normas y caracterı́sticas en [Her95] pero como ya se ha dicho, para este proyecto se van a trabajar acordes con 3 notas y en algún caso un acorde con 7a (se le agrega la nota del septimo grado al acorde) que puede tener 4 notas, las canciones que se analizan aquı́ (canciones comerciales)tienen acordes con estas caracteristicas entonces no se presentan inconvenientes en ese sentido. Para la obtención de acordes en este proyecto se va a utilizar un rango de notas que abarca desde el Mi más grave de la guitarra hasta el Si más agudo de la misma. Lo que se va a hacer es buscar que notas se tocan simultáneamente en ciertos instantes de la canción para poder entender cuál acorde se forma y ası́ buscar todos los acordes para encontrar el cı́rculo armónico de la canción. 3.3. Concepción general del sistema En la figura 6 se puede ver el diagrama de flujo general del proyecto y posteriormente se va a detallar lo que sucede con sus etapas para encontrar los acordes. 26 Figura 6: Diagrama de flujo del sistema Para poder hacer el procesamiento se mencionó que se utilizarı́a una frecuencia de muestreo de 44100 Hz, ahora bien aunque Matlab toma esta frecuencia por defecto al leer un sonido, en este caso hubo que asignarsela debido a la lectura de la canción por medio de la interfaz, en la figura 7 se muestra un fragmento del código dedicado a esta parte del proceso. Después de esta parte se puede hacer todo el procesamiento. En primera instancia se tiene la canción que se va a analizar. En la figura 8 se muestra la gráfica de las señal que representa los primeros 30 segundos de la canción Cı́rculo de amor de El gran silencio. 3.4. Filtrado de la canción La canción que representa la figura 8 , ası́ como a todas las demás, va a ser filtrada en el rango que ya se habı́a explicado anteriormente, desde un Mi grave hasta un Si agudo, el cual corresponde en frecuencias desde 164.81 Hz hasta 990 Hz de acuerdo a las mediciones realizadas con Matlab. Para realizar el filtrado de la señal se utilizó un filtro butterworth que se diseñó mediante las herramientas de Matlab, Buttord y Butter, con lo cual se logró realizar el filtrado para las canciones seleccionadas y ası́ proseguir con su análisis. Las herramientas Buttord y Butter permiten diseñar filtros 27 Figura 7: Fragmento del código que muestra donde se extrae la canción y se asigna la frecuencia de muestreo Figura 8: Canción Cı́rculo de amor en el tiempo 28 Figura 9: Respuesta del filtro pasa-bandas análogos agregando el parametro ’s’ a sus especificaciones, pero para este caso se diseñó un filtro digital IIR por lo tanto se omite el parametro ’s’ en las herramientas. Lo que se hace es normalizar las frecuencias en valores entre 0 y 1 que para las frecuencias de 164.81 Hz y 990 Hz, mencionadas en el anterior párrafo, corresponden a 0.0075 y 0.045. Con los valores de frecuencias normalizadas se diseña el filtro con la siguiente función de transferencia H(z) donde los coeficientes del numerador estan multiplicados todos por 10−4 . H(z) = 0,1142−0,4566z −2 +0,6849z −4 −0,4566z −6 +0,1142−8 1−7,672z −1 +25,77z −2 −49,49z −3 +59,44z −4 −45,73z −5 +22z −6 −6,053z −7 +0,7292z −8 En la Figura 9 se puede observar el comportamiento del filtro diseñado para el objetivo de este proyecto y en la Figura 10 se observa el diagrama de polos y ceros del filtro en el plano z. 29 Figura 10: Polos y ceros en el plano z De acuerdo a lo que ya se ha explicado, la señal filtrada es la que se va a analizar ya que las notas que se van a buscar estarán dentro del rango antes mencionado. Algunos instrumentos podrı́an tocar notas más altas o más bajas que el rango definido y por lo tanto no entran el análisis, pero esta situación no conlleva inconvenientes ya que siempre se tendrán los acordes que hagan las guitarras y los instrumentos que toquen en ese rango que generalmente son todos los melódicos. En la Figura 11 se presenta la señal filtrada de la misma canción anteriormente mencionada y la cual será el objeto de estudio junto con otras canciones que también serán analizadas. En la Figura 12 se puede observar el espectro de la señal filtrada en rojo, superpuesta con la señal original en azul. Se puede apreciar que la atenuación es notable después del rango que se habı́a definido para analizar la señal por lo cual se puede hacer el análisis como se habı́a mencionado anteriormente. 30 Figura 11: Canción Cı́rculo de amor en el tiempo filtrada Figura 12: Espectro de la señal original y filtrada 31 3.5. Segmentación de la canción Cuando ya se tiene la señal filtrada, se procede a hacer la división de la misma para buscar acordes por segmentos y no en la canción completa, ya que esto dificultarı́a la asertividad en los acordes y la organización de los mismos dentro de la canción. Siguiendo este criterio se buscó una manera de segmentar la canción. Inicialmente se hizo la segmentación por amplitud de la onda considerando que cuando hay cambios de acordes se hace una especie de acento en la melodı́a, lo que supondrı́a una amplitud mayor en ciertos instantes pero esto se descartó después de algunos análisis e intentos ya que los valores de gran amplitud, no eran tan constantes en los instantes de tiempo como se esperaba, esto ocasionaba que los segmentos fueran muy irregulares confundiendo notas en los acordes. Debido a la situación anterior, se hizo una segmentación por tiempo cada segundo. En este lapso generalmente hay espacio para un acorde o un acorde y un pequeño tiempo donde empieza otro pero prevalecen las frecuencias de las notas que más se repiten. Si se hace una segmentación por un tiempo mas largo de 2, 3 o más segundos el sistema reconoce notas de un acorde y de otro, como todas se encuentran el mismo segmento al buscar el patrón de notas que forman un acorde se presentarı́an confusiones ya que, debido a las diversas notas encontradas, es mucho mayor la posibilidad de detectar un acorde distinto al del segmento buscado o distinto a los acordes presentes. En las imágenes que van desde la Figura 13 hasta la Figura 16 se pueden ver segmentos de un segundo de canción, ya filtrados y listos para análisis. 3.6. Busqueda de acordes en cada segmento Para lograr obtener las frecuencias de las notas que componen el acorde de cada segmento, se utilizó la transformada de Fourier que proporciona matlab. Esto se hizo con cada segmento buscando que acorde se formará de acuerdo a las notas que están componiendo el acompañamiento de una pieza. En ese orden de ideas a se muestran las imágenes de los espectros de los segmentos de la canción del ejemplo, desde la Figura 17 hasta la Figura 20, pero funciona de la misma manera para todos los casos. 32 Figura 13: Primer segmento filtrado Figura 14: Segundo segmento filtrado 33 Figura 15: Tercer segmento filtrado Figura 16: Cuarto segmento filtrado 34 Figura 17: Espectro del primer segmento Cabe aclarar que los espectros que se observan en las imágenes corresponden al espectro de cada segundo de la canción. Ahı́ se observan componentes de frecuencia que corresponden solo a ese segmento y es donde se buscan las notas del acorde que ahı́ debe estar presente. Cuando se tiene cada segmento por separado, los acordes se encuentran buscando que notas o patrón de notas, dependiendo del acorde, se encuentra presente en ese pequeño instante de tiempo. Para ello se deben comparar con los componentes frecuenciales muchos acordes, en este caso todos los que corresponden al estudio, que son los acordes mayores, menores, con sostenidos y bemoles (en este proyecto todos se han expresado amanera de sostenidos #) y muy atipicamente acordes con 7a . Por otro lado se debe tener en cuenta que existen los acordes con 5ta o llamados también acordes de poder. Este tipo de acordes es muy utilizado en canciones del rock que son más pesadas, pero su utilización es también común incluso en baladas rock e igualmente pop. La caracterı́stica especial de estos acordes es que están formados por la nota fundamental y la quinta, dependiendo de lo que se quiera se agrega la octava de la fundamental también. 35 Figura 18: Espectro del segundo segmento Figura 19: Espectro del tercer segmento 36 Figura 20: Espectro del cuarto segmento La utilización de acordes con 5ta presenta la particularidad de que se puede utilizar y suena bien sin importar si son acordes mayores o menores. Históricamente han existido canciones con acordes normales y para conciertos o mejores versiones se utilizan los acordes con 5ta. Por ejemplo una de las canciones más emblemáticas del rock en español es De música ligera Cuyo circulo armónico está compuesto por estos acordes: Bm G D A, pero para el concierto de despedida de la banda el primer verso se tocó con los acordes: B5 G5 D5 A5. En el ejemplo anterior se ve con mayor claridad como los acordes de poder encajan adecuadamente en las canciones sin discriminar si en un instante hay un acorde mayor o un acorde menor. 37 Figura 21: Diseño de la interfaz para el usuario 4. 4.1. Capı́tulo 4 Diseño de interfaz Después de haber realizado la parte más técnica, se debe tener en cuenta que debe existir un interfaz cómoda para el usuario. En matlab se van a obtener los resultados de acordes, en cifrado americano como se habı́a dicho, pero los resultados se dan en la ventana de la herramienta. Debido a esto se quiso diseñar una manera en que el usuario pueda utilizar el software cómodamente para lo cual se recurrió a la herramienta GUI (Graphic user interface) que también ofrece matlab. Esta opción permite crear un mejor ambiente visual para el manejo del usuario y una manera fácil de uso. El diseño que se llevó a cabo se muestra en la Figura 21 Como se puede apreciar en la Figura 21 se hizo una interfaz fácil de entender de tal forma que no se requiere ser un experto en sistemas para utilizar38 la. Esta interfaz cuenta con 3 botones. Examinar: Permite buscar el archivo (canción) Encontrar acordes: Es donde se activa el sistema y permite encontrar los acordes de la canción Limpiar: Borra los acordes y el nombre de la canción nuevamente Los acordes se van a mostrar en las ventanas grandes que se encuentran debajo de los botones. Por otro lado en las ventanas pequeñas que se encuantran justo debajo de los botones examinar y encontrar acordes se muestra cuando la acción se ha completado mediante la palabra listo. La ventana que se encuentra sobre espacio para la gráfica muestra el nombre de la canción que se esta analizando en el momento y finalmente en el espacio de gráfica se puede ver el espectro de la señal. 4.2. Resultados En esta sección se muestran los resultados obtenidos con el sistema creado para la detección de acordes en canciones que cumplen con las especificaciones mencionadas en el capı́tulo 2. Además de las comparaciones realizadas entre los acordes esperados (o reales) y los que genera el sistema, también se presenta un análisis de los espectros con sus respectivas gráficas para una mejor ilustración de lo que sucede al momento de obtener los acordes. Por otro lado cabe recalcar que se debe estudiar la influecia que tienen sobre el sistema ciertos sonidos como arreglos, instrumentos que tocan cosas diferentes al acorde, etc. Estos efectos no se pueden obviar ya que afectan la detección de los acordes. 4.2.1. Acordes detectados en las canciones En primer lugar se muestran los resultados obtenidos para hacer el respectivo análisis. Tal como se mencionó los acordes se presentan de forma escrita con el cifrado americano. 39 Figura 22: Tabla comparación de resultados En la Figura 22 se puede ver lo que ha sucedido, con los acordes esperados, de acuerdo a eso empecemos por los acordes con 5ta. Como se habia explicado en el capı́tulo anterior los acordes con 5ta funcionan sin importar si el acorde es mayor o menor, en este caso todos los resultados que tienen 5ta y corresponden a la misma tonalidad esperada son satisfactorios, uno de los casos es el de la canción de pies a cabeza de mana, que se encuentra segunda en la tabla de resultados. En esta canción hay además un acorde con 5ta que no correspondı́a a la tonalidad esperada, en este caso no es un acorde correcto, pero eso punto se va analizar más adelante. 4.2.2. Acordes detectados con quinta Antes de revisar el espectro revisemos por que se obtienen este tipo de acordes desde el punto de vista de la práctica musical. De pies a cabeza es una canción de rock por lo cual es muy probable que los arreglos de guitarras eléctricas toquen las 5tas de los acordes y utilicen distorsión, además de otros efectos que no hacen parte del foco de estudio de este proyecto. 40 Por otra parte puede o no haber guitarras acústicas o eléctricas, además de otros instrumentos, que estén tocando acordes en sus modos normales mientras las guitarras con distorsión sobresalen. El hecho de que sobresalgan las guitarras con distorsión hace que sea más prominente el acorde que estas tocan mientras que las demás estan acompañando y adornado el sonido junto con los demás instrumentos. Debido a esto lo que se esperarı́a es que los acordes con 5ta sobresalgan de manera significativa ya que al tocar acordes en modo normal también se tocan sus quintas. Entonces teniendo el concepto de lo que ocurre en la práctica pasemos a ver lo que ocurre con las señales y porque se obtuvierón acordes con 5ta. Se van a analizar 2 acordes debido a que el comportamiento de los demás es similar y entendiendo lo que ocurre con estos 2 se entiende lo que ocurre con los demás. En la Figura 23 se observan algunos armónicos significativos del segmento correspondiente al acorde de A de la canción de pies a cabeza. Estos armónicos, al igual que en los demás segmentos, son importantes porque brindan información de las frecuencias que ahı́ se encuentran las cuales corresponden a notas musicales. Según el patrón de notas presente se formará el acorde del segmento. Ahora con un zoom de estos armónicos se puede ver la parte significativa de las notas relevantes en ese segmento que además conforman el acorde que se esta tocando. En la Figura 24 se pueden obsevar unos armónicos significativos alrededor de la frecuencia de 220 Hz correspondiente a A, existen otros en otras frecuencias pero no son tan prominentes y algunos nisiquiera corresponden a notas musicales. En la Figura 25 y Figura 26 se pueden observar también que los armónicos significativos estan alrededor de las frecuencias 164.814 Hz y 329.628 Hz respectivamente aunque en la gráfica no se aprecien los valores ni sean exactos tampoco. En este caso los 2 corresponden a E y ya que se tenı́a un A se deduce que se formó un acorde de A5 en el segmento analizado, el cual el sistema después de las comparaciones y procesamiento logra reconocer. Ahora hagamos un analisis similar con el segmento que lleva el acorde de B. En primer lugar en la Figura 27 se ve el espectro del segmento el cual se va a ver más detalladamente. 41 Figura 23: Armónicos del segmento de A De pies a cabeza Figura 24: Acercamiento del espectro del segmento de A 42 Figura 25: Acercamiento de otro armónico del espectro del segmento de A Figura 26: Acercamiento de un tercer armónico del espectro del segmento de A 43 Figura 27: Armónicos del segmento de B De pies a cabeza Aquı́ se presentarón 2 armónicos importantes los cuales se muestran en la Figura 28 y Figura 29 y nos dierón las notas de F# y B respectivamente y mediante el procesamiento el sistema logró reconocer el acorde del segmento que en este caso es B5. En términos de frecuencia F# corresponde a 184.997 Hz y B corresponde a 246.942 Hz, también se encontraron valores con frecuencia al rededor de G#, lo cual es posible, porque G# corresponde a la escala de B, sin embargo no habia como formar acorde con esa nota y el sistema reconce B5. Se puede ver en la gráfica que los valores no son exactos, al igual que en el caso anterior, y de hecho en ningún caso los valores de frecuencias de las notas fueron exactos por eso se contempló un rango de error teniendo en cuenta que el módulo del valor ideal con el valor obtenido de la nota fuera menor que 6. 4.2.3. Acordes no esperados en segmentos Similar al análisis inmediatamente anterior primero revisemos conceptualmente desde la práctica musical porque el sistema puede llegar a reconocer 44 Figura 28: Acercamiento del espectro del segmento de B Figura 29: Acercamiento otro armónico del espectro del segmento de B 45 acordes que en realidad no se tocan en determinado segmento y posteriormente se analizará lo que sucede desde la parte técnica. Ası́ entonces, empecemos recordando los acordes relativos vistos en secciones anteriores, estos acordes comparten dos notas de 3, sumado a eso la tercera nota de un acorde se encuentra en la escala del otro, aunque no se utilice para hacer el acorde como tal, esto permite que esa nota se pueda usar para arreglos musicales o adornos al momento de tocar. Otro aspecto es que la escala pentatónica mayor es igual a su relativa menor, por ejemplo la pentatónica de do mayor es igual a la pentatónica de la menor. En la escala pentatónica estan presentes las notas que componen tanto el acorde que se esta tocando como su relativo, por ejemplo viendo la pentatónica de C que es la misma de Am se tiene Do-Re-Mi-Sol-La. En la escala estan presentes las notas Do-Mi-Sol del acorde de C y La-Do-Mi del acorde de Am. Ası́ que si un músico esta utilizando esta escala para hacer arreglos va a haber notas de ambos acordes. De acuerdo a esto el sistema podrı́a confundir un acorde con su relativo. En general al utilizar arreglos con diferentes escalas, no solo que tengan que ver con acordes relativos, se pueden presentar notas que se utilizarı́an en acordes diferentes al que se esta tocando, y afecta, en algunos casos, el análisis que el sistema hace, apesar de esto se ha mencionado que este sistema no incluye canciones con arpegios o solos complicados en la introducción de la canción, aun ası́ hay algunas que se pueden analizar con arpegios leves y no afectan de sobremanera el reconocimiento, sin embargo podrı́a haber cierta nota que no haga parte del acorde y se confunda con las demás, pero dadas las rectricciones y el procesamiento se ha tratado de minimizar esto. Teniendo lo anterior veamos que sucede desde los espectros. Para este caso veamos una canción diferente a la anterior con el fin de obtener variedad en el análisis, tomemos Mariposas de enanitos verdes que se encuentra en el numero 11 de la Figura 22. El acorde esperado después de Bm es G pero se obtiene un D. Analizando el espectro en la Figura 30 se puede ver una cantidad de armónicos la cual se va a detallar para analizar porque puede haber otro patrón de notas que el sistema esta reconociendo como un acorde, en este caso un D, que no se esperaba. Ahora bien, en la Figura 31, Figura 32 y Figura 33 se pueden ver unos armóni46 Figura 30: Armónicos del segmendo del acorde de G Mariposas cos muy especificos que estan al rededor de las frecuencias de 293.665 Hz, 184.997 Hz y 220 Hz que corresponden a las notas D-F#-A respectivamente, este patrón de notas resulta formando un acorde de D, porsupuesto también se encontrarón armónicos correspondientes a G pero no habia un patron de notas con el cual se pudiera formar el acorde. Si nos vamos a la parte musical, este patrón de notas encontradas también hace parte de la escala de G, es decir que desde el punto de vista práctico tiene sentido este resultado, el problema radica en que estas notas no se estan tocando juntas como acorde en ese segmento sin embargo estan ahi, esto se ve reflejado en el espectro de la onda (señal) en ese segmento, y el sistema reconoce el patrón. Lo que se puede ver es que el resultado de arreglos y acompañamientos de otros instrumentos que no estan tocando los acordes especificamente, afectan en mayor medida en cuanto mayor sea el acompañamiento que hacen con notas distintas al acorde, aunque suenen en armonı́a. 47 Figura 31: Acercamiento del espectro del segmento de G Figura 32: Acercamiento otro armónico del espectro del segmento de G 48 Figura 33: Acercamiento un tercer armónico del espectro del segmento de G 4.2.4. Registros finales Después de tener los resultados es bueno saber como interpretarlos para sacar un registro final de lo que ha sido satisfactorio o no. Retomando algo que ya se habı́a mencionado se tiene que los acordes con 5ta son validos siempre y cuando estén en la tonalidad esperada, no importa si es mayor o menor. En otros casos, por ejemplo donde se mostraba el mismo acorde seguido más de una vez el resultado es valido siempre y cuando se mantenga la organización de los acordes en el cı́rculo. Esto se puede presentar porque unos acordes pueden tener mayor duración que otros, también se ha tomado como valido el caso en que haya un acorde con 7 y se muestre solo el acorde, siempre y cuando esté en la tonalidad esperada, esto es valido ya que al tocar el acorde se obtiene un sonido que se acopla adecuadmente en la canción. Entonces teniendo la anterior información el registro de resultados quedarı́a como se observa en la Figura 34. Utilizando estos datos se obtuvo la gráfica de comparación que se muestra la Figura 35, ahı́ se puede apreciar que la tendencia es similar pero los resultados obtenidos están un poco más bajo porque no en todos los casos se alcanzó el número total de acordes esperados, 49 Figura 34: Registro de resultados sin embargo según las canciones estudiadas se tienen 58 acordes analizados de los cuales se obtuvieron 43 acordes según lo esperado, ası́ que de acuerdo con las canciones analizadas se tiene un precisión de 74,12 %. Teniendo en cuenta estos datos se aclara que en la Figura 35 el número de acordes obtenidos corresponde al número de acordes obtenidos correctamente, no significa que ese fue el total de acordes para cada canción, en la Figura 22 si se pueden ver los acordes obtenidos en su totalidad. Si se hace la comparación con el software riffstation mencionado en el capı́tulo 2, que ya se comercializa, el cual tiene una precisión del 85 % se puede decir que hay un buen resultado ya que este estudio cuenta con menos herramientas y menos equipo humano del que utiliza un software comercial, sin embargo se reconoce que aún quedan cosas por mejorar de tal forma que en un futuro cercano se pueda alcanzar una precisión del 100 % que serı́a lo ideal Por otro lado si bien, en el cuadro que muestra la Figura 34 se puede observar que en la mayorı́a de los casos los resultados han sido satisfactorios, soportado también con el análisis de la Figura 35 y los porcentajes de precisión, aun ası́ se presentan errores, los cuales se dan debido las explicaciones de los 50 Figura 35: Gráfica de comparación de resultados anteriores numerales de esta sección, esto pasa debido a que es muy difı́cil aislar ciertos sonidos que están presentes en la canción. Aislar estos sonidos se hace dificil por la naturaleza de los mismos, resulta que en la mayorı́a de los casos estos sonidos son de instrumentos similares o iguales a los que tocan los acordes, esto hace que se mezclen en los espectros de frecuencia como una nota más dentro del segmento que se ha separado y no se pueden quitar utilizando filtros ya que están dentro del rango de las notas que se quieren analizar. Finalmente se aclara que los conocimientos sobre las caracterı́sticas musicales, de los géneros y tipos de canciones que se han analizado, se obtuvierón por medio de los estudios y cursos de música que se han realizado, además de la consulta con músicos profesionales y academicos. Todo esto permitió entender, desde la práctica musical, lo que sucede con los resultados obtenidos y ası́ dar más claridad para la interpretación de resultados. 51 5. 5.1. Capı́tulo 5 Conclusiones Se logró una comprensión amplia sobre los cı́rculos armónicos utilizados en las canciones, además de entender que ocurre a nivel de sensaciones humanas, de acuerdo a lo visto en la sección 1.3, y cómo esto afecta a la hora de poner música en una canción logrando ver que en muchas de las canciones comerciales incluso a nivel mundial se utiliza un patrón sencillo de acordes pero es por la sensación que puede provocar. Se diseñó una interfaz útil y cómoda para la utilización del usuario, contando con una serie de botones y ventanas muy especı́ficas dando claridad al usuario de como debe proceder sin tener que leer un manual necesariamente. En cada etapa del proyecto se encontró una manera eficaz de utilizar las herramientas de procesamiento que Matlab ofrece, esto permitió obtener un sistema funcional y adecuado para las personas a quienes va dirigido y aunque quedan aspectos por mejorar se logró un desempeño satisfactorio. A pesar de que las herramientas de procesamiento permitierón obtener unos resultados satisfactorios es conveniente seguir con investigación en este tema ya que serı́a importante lograr detectar cambios de ritmo o compases para tener más herramientas que permitan aislar cierto tipo de sonidos que con los filtros no se puede hacer por el rango en que se encuentran, esto permitirı́a analizar canciones muy complejas con resultados acertados. Debido a la naturaleza de las canciones el sistema puede encontrar los acordes en modo mayor, menor o detectar el acorde con quinta, en todos los casos con sus sostenidos, lo que da una mirada más amplia sobre como tocar para un estudiante de música (que ya conozca de acordes) y permite expandir su contexto y posibilidades musicales. 52 6. Anexos A. Muestra gráfica del funcionamiento del sistema 1. Se utiliza el botón examinar para buscar la canción desde el ordenador Figura 36: Función del botón Examinar 53 Figura 37: Canción lista 2. Se utiliza el botón Buscar acorde para activar todo el sistema y buscar los acordes de la canción que ya ha sido ingresada. En las ventanas pequeñas azules se despliegan los acordes encontrados y en la ventana blanca grande se muestra un espectro de la canción para efectos de mejora visual simplemente. 54 Figura 38: Función del botón Buscar acorde 3. Finalmente el botón Limpiar borra los acordes y la canción para utilizar nuevamete el sistema. 55 Figura 39: Función del botón Limpiar Referencias [Ber02] Luis I. Ortiz Berenguer. IDENTIFICACIÓN AUTOMÁTICA DE ACORDES MUSICALES. PhD thesis, UNIVERSIDAD POLITÉCNICA DE MADRID, 2002. [BF09] Vı́ctor Morales Benı́tez and Valentino López Fuentes. Separación de Flauta Dulce de un Archivo de Audio Compuesto por Piano y Flauta Dulce. ESCUELA SUPERIOR POLITÉCNICA DEL LITORAL, 2009. [Chi99] Michel Chion. El Sonido: música, cine y literatura. Barcelona : Paidós Ibérica, 1999. [Dar78] Thurston Dart. INTERPRETACIÓN DE LA MÚSICA, chapter Capı́tulo 9. 1978. [DV07] Miguel Durán and Sindreu Viader. DISEÑO E IMPLEMENTACIÓN DE UN FILTRO PASO BANDA DE BANDA ESTRECHA CON TOPOLOGÍA INTERDIGITAL A FRECUENCIAS UHF Y MICROONDAS. Universitat Autonoma de Barcelona, 2007. [Gon97] Genaro González. Series de fourier, transformadas de fourier y aplicacones. Divulgaciones matematicas, 1997. 56 [Her95] Enric Herrera. TEORÍA MUSICAL Y ARMONÍA MODERNA Vol. II. Antoni Bosch editor, S.A., 1995. [Mac12] Julio Martı́n Macı́as. Diseño e implementación de un detector automático de acordes. Technical report, UNIVERSIDAD CARLOS III DE MADRID, 2012. [Miy00] Federico Miyara. Acustica y sistemas de sonido. UNR, 2000. [Miy04] Federico Miyara. FILTROS ACTIVOS. UNR, 2004. [PM98] John G. Proakis and Dimitris G. Manolakis. Tratamiento digital de seÃales. Prentice Hall, 1998. [Rif] Riffstation. Riffstation. urlhttp://www.riffstation.com/chords-forguitar.html. [Row99] Lewis Rowell. INTRODUCCIÓN A LA FILOSOFÍA DE LA MÚSICA. Gedisa Editorial, 1999. [SSV05] Gabriela Saráchaga, Virginia Sartori, and Laura Vignoli. IDENTIFICACIÓN AUTOMÁTICA DE RESUMEN EN CANCIONES. Universidad de la republica, 2005. [Zam12] Camilo Zambrano. La musica electronica, un movimiento cultural cargado de energia, 2012. 57