Un plugin de secuenciador euclidiano para estaciones de trabajo de audio digital
Loading...
Official URL
Full text at PDC
Publication date
2022
Advisors (or tutors)
Editors
Journal Title
Journal ISSN
Volume Title
Publisher
Citation
Abstract
La constancia en el desarrollo y la innovación en la informática desde que la conocemos ha supuesto a lo largo del tiempo una revolución en muchos sectores. En esta ocasión nos centraremos en el musical, ya que, echando la vista atrás varias decenas de años, para realizar una composición musical eran necesarios muchos medios e instrumentos que hacían de esta, una tarea a veces ardua y compleja que muy pocos podían llevar a cabo. Sin embargo, todo esto ha cambiado ya que hoy en día cualquier persona puede ser productor de música con el simple hecho de tener un ordenador a su alcance.
Que esto sea posible se lo debemos a las DAWs, del inglés Digital Audio Workstations o estaciones de trabajo de audio digital. Una DAW es básicamente un programa o software que permite grabar, editar, procesar y mezclar múltiples pistas de audio, además de escribir música y hacerla sonar mediante instrumentos virtuales. A parte de la infinidad de funcionalidades por defecto, las DAWs pueden ser extendidas mediante plugins externos. Dentro de este gran abanico de plugins, cabe destacar por su relación con este proyecto, a los secuenciadores. La función de estos es la de secuenciar música o, en otras palabras, programar eventos musicales en el tiempo. Esto es posible haciendo uso de cierta información proporcionada por el usuario en forma de acordes, parámetros, etc. u otros datos recogidos de la interfaz gráfica de usuario.
El fin de este proyecto es desarrollar un plugin de secuenciador euclidiano, que está basado en los ritmos euclidianos, cuyos orígenes provienen, como más adelante se explica, del Algoritmo de Euclides. Resumidamente, usando el máximo común divisor logra colocar elementos en una secuencia de la manera más uniforme posible en una división de tiempo dada, estableciendo un número de pasos y de eventos que definen un patrón rítmico.
De este modo, gracias a la función que realiza este plugin de generación de eventos musicales, si lo combinamos con otro de instrumento virtual, se estaría generando música de manera casi automática.
The constancy in the development and innovation in computer science since we know it has meant over the years a revolution in many fields. Let us focus on the music field, since, looking back several years, to make a musical composition many tools and instruments were necessary, making it an arduous and complex task that very few people could carry out. However, all this has changed since nowadays anyone can be a music producer with the simple fact of having a computer at their fingertips. This is possible thank to the DAWs (Digital Audio Workstations). A DAW is basically a program or software that allows to record, edit, process and mix multiple audio tracks, in addition to writing music and making it sound using virtual instruments. In addition to an infinity of default tools, we can acquire and extend these functionalities using plugins. Within this wide range of plugins, we will mention for its relevance int this project, the sequencers. The goal of these plugins is to sequence music, or in other words, program musical events. This is possible by making use of certain information provided by the user in the form of chords, parameters, etc. or other data collected from the graphical user interface. The purpose of this project is to develop a Euclidean sequencer plugin, which is based on Euclidean rhythms, whose origins come, as explained later, from Euclid’s Algorithm. Summarizing, using the maximum common two-number divisor, it manages to place elements in a sequence as evenly as possible in a set division of time. What in a practical way is establishing a number of steps and events that define a rhythmic pattern. In this way, thanks to the work performed by this plugin generating musical events, if we combine it with another plugin of virtual instrument, music would be generated.
The constancy in the development and innovation in computer science since we know it has meant over the years a revolution in many fields. Let us focus on the music field, since, looking back several years, to make a musical composition many tools and instruments were necessary, making it an arduous and complex task that very few people could carry out. However, all this has changed since nowadays anyone can be a music producer with the simple fact of having a computer at their fingertips. This is possible thank to the DAWs (Digital Audio Workstations). A DAW is basically a program or software that allows to record, edit, process and mix multiple audio tracks, in addition to writing music and making it sound using virtual instruments. In addition to an infinity of default tools, we can acquire and extend these functionalities using plugins. Within this wide range of plugins, we will mention for its relevance int this project, the sequencers. The goal of these plugins is to sequence music, or in other words, program musical events. This is possible by making use of certain information provided by the user in the form of chords, parameters, etc. or other data collected from the graphical user interface. The purpose of this project is to develop a Euclidean sequencer plugin, which is based on Euclidean rhythms, whose origins come, as explained later, from Euclid’s Algorithm. Summarizing, using the maximum common two-number divisor, it manages to place elements in a sequence as evenly as possible in a set division of time. What in a practical way is establishing a number of steps and events that define a rhythmic pattern. In this way, thanks to the work performed by this plugin generating musical events, if we combine it with another plugin of virtual instrument, music would be generated.
Description
Trabajo de Fin de Grado en Ingeniería Informática, Facultad de Informática UCM, Departamento de Sistemas Informáticos y Computación, Curso 2021/2022.
Carpeta con todo el código fuente del proyecto. https://github.com/ SpringJoe1/Euclidean-Sequencer