Post on 07-Aug-2020
1
Escue
la P
olit
écnic
a S
uperi
or
de L
inare
s
UNIVERSIDAD DE JAÉN Escuela Politécnica Superior de Linares
Trabajo Fin de Grado
______
ORQUESTA VIRTUAL BASADA EN
REALIDAD AUMENTADA
Alumno: David Sánchez Illescas
Tutor: Prof. D. Raúl Mata Campos Depto.: Ingeniería de Telecomunicación
Octubre, 2019
2
3
AGRADECIMIENTOS
A mis padres, que durante este largo
período me han sabido proporcionar todo
lo que he necesitado: amor, apoyo y libertad.
A mi novia, que ha sido capaz
confiar en mí hasta en los momentos
en los que ni yo era capaz de hacerlo,
a la que estaré eternamente agradecido.
A mis amigos, que sin saberlo,
eran mi vía de escape para poder
trabajar cada día más duro que el anterior.
A Raúl Mata Campos, tutor de este
proyecto, que desde el primer día me ha
motivado para realizar este proyecto con total
libertad y me ha prestado su ayuda
siempreque lo he necesitado.
A todos los compañeros y profesores de universidad
que he disfrutado a lo largo de estos cuatro años,
de los que he tenido la suerte de aprender tantísimo
y a los que siempre los tendré presentes en mi vida laboral.
4
ÍNDICE:
1. RESUMEN……………………………………………………………pág. 5
2. INTRODUCCIÓN……………………………………………………pág. 7
2.1. Realidad Aumentada (RA) vs Realidad Virtual (RV).
2.2. Realidad Aumentada (RA).
2.3. Herramientas de RA para diseñadores (DART).
2.4. Unity.
2.5. Teoría Musical.
2.6. Protocolo MIDI.
3. OBJETIVOS………………………………………………………pág. 23
4. METODOLOGÍA………………………………………………....pág. 25
4.1. Aplicaciones musicales basadas en RA.
4.2. Metodología de “Orquesta Virtual RA”.
4.2.1. Estructura y desarrollo de la escena.
4.2.2. Reproducción del archivo MIDI.
4.2.3. Configuración final.
4.2.4. Menú del proyecto.
5. RESULTADOS Y DISCUSIÓN…………………………………...pág. 51
6. CONCLUSIONES………………………………………………….pág. 63
7. ANEXOS…………………………………………………………….pág. 65
7.1. ANEXO I: Manual de usuario para incorporar un instrumento nuevo.
7.2. ANEXO II: Manual de usuario para incorporar una obra musical
nueva.
8. LÍNEAS FUTURAS………………………………………………pág. 76
9. REFERENCIAS BIBLIOGRÁFICAS……………………………pág. 77
10. VÍDEOS INFORMATIVOS………………………………………pág. 79
5
1. RESUMEN
La Realidad Aumentada (RA) es una tecnología que permite añadir
capas de información visual sobre el mundo real que nos rodea, utilizando la
tecnología, dispositivos como pueden ser nuestros propios teléfonos móviles.
Esto nos ayuda a generar experiencias que aportan un conocimiento relevante
sobre nuestro entorno, y además recibimos esa información en tiempo real.
Cada vez más demandada, en 2020 se convertirá en un negocio que roce los
120.000 millones de dólares a nivel mundial.
En este proyecto se desarrolla una aplicación para smartphone, tablet o
pc, basada en Realidad Aumentada, siendo capaz de reproducir multitud de
partituras MIDI, con el fin de que el usuario retransmita al mismo tiempo tantas
fuentes de cierta canción como desee. Se ha llevado a cabo con el prestigioso
programa Unity.
El funcionamiento de esta app se basa en la utilización de diferentes
marcadores que corresponden con diferentes instrumentos musicales, que son
captados por la cámara del dispositivo en cuestión, es decir, la cámara del
móvil, de la tablet o la WebCam del ordenador. Una vez captados los
marcadores, se reproducirán las partituras MIDI de la obra musical deseada con
los instrumentos deseados.
Agradezco la oportunidad que se me ha brindado de crear una app
basada en RA para desarrollar mi aprendizaje sobre esta materia, debido a la
oportunidad empresarial que hay en el momento.
6
1. ABSTRACT
Augmented Reality (AR) is a technology that allows us to add layers of
visual information about the real world around us, using technology, devices
such as our own mobile phones. This helps us to generate experiences that
provide relevant knowledge about our environment, and we also receive that
information in real time. Increasingly demanded, in 2020 it will become a
business that is close to 120,000 million dollars worldwide.
In this project an application is developed for smartphone, tablet or pc,
based on Augmented Reality, being able to reproduce multitude of MIDI scores,
in order that the user retransmits at the same time as many sources of certain
song as he wants. It has been carried out with the prestigious program Unity.
The operation of this app is based on the use of different markers that
correspond to different musical instruments, which are captured by the camera
of the device in question, ie the camera of the mobile, the tablet or the WebCam
of the computer. Once the markers have been captured, the MIDI scores of the
desired musical work will be played with the desired instruments.
I am grateful for the opportunity to create an RA-based app to develop my
learning about this subject, due to the business opportunity at the moment.
7
2. INTRODUCCIÓN
2.1. Realidad Aumentada (RA) vs Realidad Virtual (RV)
La RV construye un mundo nuevo en el que nos sumergimos, mientras
que, en la RA, nuestro propio mundo se convierte en el soporte, todo se
produce en un entorno real, y gracias a la cámara y la pantalla de un
dispositivo, podremos ver elementos que no están presentes en el mundo real
y, también, interactuar con los mismos. Por su parte la realidad Mixta, (RM) es
un híbrido entre la RV y la RA, que permite crear nuevos espacios en los que
interactúan tanto objetos y/o personas reales como virtuales.
La otra gran diferencia entre las tres, se encuentra en los dispositivos
necesarios para su uso. Mientras la realidad virtual y la realidad mixta,
necesitan de un elemento aportado por el individuo como unas gafas o un
dispositivo específico, en el caso de la realidad aumentada, bastaría una
aplicación en el móvil o tablet
2.2. Realidad Aumentada (RA)
El término lo acuñó en 1992 el científico e investigador Thomas P.
Caudell mientras desarrollaba uno de los aviones más famosos del mundo: el
Boeing 747. Caudell observó que los operarios encargados del ensamblaje de
la nueva aeronave perdían demasiado tiempo interpretando las instrucciones y
pensó: ¿Qué pasaría si tuvieran acceso a una pantalla que les guiase durante
la instalación? El invento no triunfó, pero en ese preciso momento nacía el
concepto de Realidad Aumentada (RA).
8
Surgía entonces y no en el verano de 2016, como muchos creemos,
cuando nos vimos contagiados por la fiebre de Pokémon GO, un videojuego
que consistía en buscar y capturar diferentes personajes de la saga japonesa y
que, en su momento más álgido, alcanzó la astronómica cifra de 45 millones de
usuarios diarios activos.
Pokémon GO popularizó la RA, la acercó al gran público —a todos los
públicos—, pero por aquel entonces ya eran muchas las empresas de muy
diversos sectores (sanidad, educación, arquitectura, servicios, retail, etc.) que la
empezaban a utilizar con el objetivo de crear experiencias de valor para sus
clientes.
Mediante la realidad aumentada el mundo virtual se entremezcla con el
mundo real, de manera contextualizada, y siempre con el objetivo de
comprender mejor todo lo que nos rodea. Un doctor puede estar viendo las
constantes vitales de su paciente, mientras le opera; un turista puede alzar su
cámara y encontrar puntos de interés de la ciudad que visita, apuntando hacia
los lugares que quiere visitar; o un operario puede realizar labores de
mantenimiento en una sala de máquinas, obteniendo información de dónde se
encuentra cada componente, simplemente apuntando con su tablet, y sin
necesidad de consultar un complicado mapa. La realidad aumentada permite
esto y mucho más. Muchas son las multinacionales de prestigio que están
apostando por aplicaciones basadas en esta gran tecnología, tales como:
9
IKEA Place:
Con IKEA Place es posible ver cómo quedan los muebles en tu casa sin
salir de ella. Y sin apretar un solo tornillo.
Fuente: newsroom.inter.ikea.com
GE Augmented Reality:
GE está implantando la realidad aumentada de varias maneras. Por
ejemplo, ahora los técnicos pueden inspeccionar las máquinas industriales y
repararlas de un modo más eficiente.
Fuente: ge.com
10
ARkit AMERICAN AIRLINES:
American Airlines ha desarrollado un prototipo de realidad aumentada que
superpone, en tiempo real, información sobre lo que te rodea en las terminales
de los aeropuertos. Así encontrarás fácilmente las cafeterías, los baños y, por
supuesto, tu puerta de embarque.
Fuente: mobile-ar.reality.news
AUDI eKurz:
Audi ha creado su app de RA con diferentes objetivos, es decir, en la
aplicación es posible desde visitar el catálogo en 3D de sus productos, hasta
prestar ayuda en tiempo real para un simple cambio de aceite de cualquiera de
sus modelos.
Fuente: autoviva.com
11
LEGO AR:
La gran compañía Lego, además de incluir sistemas de RA en sus tiendas
físicas para que los jóvenes sean capaces de observar la estructura final de sus
juguetes montados, ha diseñado su propia app simulando un juego similar a
“Los Sims” destinado a un público de menor edad.
Fuente: augmented.com
2.3. Herramientas de realidad aumentada para diseñadores (DART)
Existen multitud de herramientas para realizar apps que integren esta
tecnología, cito algunas de ellas a continuación:
Layar: El uso de la realidad aumentada para crear imágenes interactivas
que sirvan para promocionar los productos de una marca es sin duda una de
las tendencias de moda. Layar te permite crear contenido interactivo y acceder
al mismo desde catálogos, revistas, folletos informativos o códigos impresos en
los productos. También permite la inserción de vídeos o versiones alternativas
al producto que este observando el cliente en ese momento.
Augment: Esta herramienta te permite mostrar los productos de tu
catálogo con imágenes virtuales en 3D, de tal modo que los clientes puedan
observarlo desde todos los ángulos y perspectivas. Es una herramienta
relativamente fácil de usar que además puedes probar durante 30 días de
forma gratuita.
12
Metaio: Cuenta con un gran número de funcionalidades especialmente
orientadas a los sectores del marketing, la impresión, la automoción y la
industria. Marcas como Lego, Audi o Ikea han desarrollado proyectos utilizando
esta herramienta.
Aurasma: Una de las herramientas más extendidas del mercado. Esta
herramienta te permite crear experiencias interactivas complejas ya que la capa
virtual puede contener más de una acción. Es decir, puedes mostrar un vídeo y
una imagen 3D a la misma vez
Total Immersion: Otra de las plataformas más potentes del mercado.
Permite la creación de aplicaciones para varios sistemas operativos. Está muy
enfocada a la aplicación de la realidad aumentada al marketing y a las ventas.
ZooBurst: Esta herramienta está enfocada al ámbito educativo, permite a
los usuarios crear libros interactivos en 3D, cuenta con un banco de imágenes,
aunque también puedes usar las tuyas propias.
Hoppala: está enfocada a la creación de contenidos de realidad
aumentada geolocalizada. Perfecta para museos o establecimientos que
quieran mostrar puntos de interés e información sobre los mismos.
Clickarapp: Cerramos con una herramienta muy parecida a Layar pero
que además cuenta con plantillas ya diseñadas para que te sea más fácil crear
contenido interactivo.
ARTool Kit: Se trata de una herramienta libre con la que puedes
desarrollar apps de realidad aumentada para móviles, ideal para iniciarte en
este mundo.
Después de inspeccionar las posibilidades, decidí realizar el
proyecto con Vuforia. A pesar de no ser apropiado para principiantes, lo elegí
debido a que es el software más utilizado a nivel empresarial del momento y
porque es la herramienta más adecuada para trabajar con formato MIDI.
13
Debido a que es el más conocido, existen muchas librerías que facilitan la
programación, además de diferentes prefabs, que son los elementos visuales
que expone Vuforia en 3D en la aplicación.
Fuente: avrspot.com
Otra clara ventaja de trabajar con Vuforia es que funciona como
complemento al conocido software de programación “Unity”.
2.4. Unity
Unity es un motor de videojuego multiplataforma creado por Unity
Technologies. Unity está disponible como plataforma de desarrollo para
Microsoft Windows, OS X, Linux. La plataforma de desarrollo tiene soporte de
compilación con diferentes tipos de plataformas. Son muchas las empresas que
en la actualidad trabajan con este software, las cuales necesitan cada vez más
gente cualificada capaces de obrar en este entorno.
Fuente: unity.com
La empresa Unity Technologies fue fundada en 2004 por David Helgason,
Nicholas Francis, y Joachim Ante en Copenhague, Dinamarca, después de su
primer juego, GooBall, que no obtuvo éxito. Los tres reconocieron el valor del
motor y las herramientas de desarrollo y se dispusieron a crear un motor que
cualquiera pudiera usar a un precio asequible. Unity Technologies ha recibido
financiación de Sequoia Capital, Capital WestSummit y Socios iGlobe. La
primera versión de Unity se lanzó en la Conferencia Mundial de
14
Desarrolladores de Apple en 2005. El éxito de Unity ha llegado en parte debido
al enfoque en las necesidades de los desarrolladores independientes que no
pueden crear ni su propio motor del juego ni las herramientas necesarias o
adquirir licencias para utilizar plenamente las opciones que aparecen
disponibles. El enfoque de la compañía es "democratizar el desarrollo de
juegos", y hacer el desarrollo de contenidos interactivos en 2D y 3D lo más
accesible posible a tantas personas en todo el mundo como sea posible.
Unity cuenta con grandes iniciativas como es Asset Store. En noviembre
de 2010 se lanzó como un recurso disponible en el editor de Unity. Más de
150.000 usuarios de Unity pueden acceder a la colección de más de 4.400
paquetes de Assets en una amplia gama de categorías, incluyendo modelos
3D, texturas y materiales, sistemas de partículas, música y efectos de sonido,
tutoriales y proyectos, paquetes de scripts, extensiones para el editor y
servicios en línea.
Posee una interfaz intuitiva, con varios accesos directos y atajos, que
tratan de facilitar la tarea del programador en cuestión de una manera
interactiva y fluida.
Captura de pantalla del entorno de Unity de la aplicación “Orquesta Virtual
RA”
15
2.5. Teoría musical
Los sonidos que componen cualquier melodía o composición musical se
pueden representar en una partitura. La partitura está formada por una
notación simbólica de la misma manera que las letras representan el habla
humana. La representación de los sonidos con las notas no es suficiente para
describir una composición, es necesario incluir información sobre otros
aspectos como la velocidad de interpretación, la intensidad y matices de
interpretación para que la melodía quede completamente descrita.
Fuente: byebyebeethoven.com
Los elementos básicos que conforman la notación simbólica tradicional
son los que se describen a continuación:
● Evento : unidad básica en música que representa un sonido con un
determinado pitch o frecuencia fundamental (f0) que se encuentra activo
durante un determinado intervalo temporal. Las notas musicales se ordenan
dentro de las escalas musicales. En la teoría musical occidental se suele dividir
cada escala en doce notas: siete notas sin alteración y cinco notas con
alteración (símbolos que modifican la entonación), todas ellas ordenadas de
grave a agudo. Estas divisiones de doce notas también se denomina escala
cromática. En ellas el intervalo entre dos notas adyacentes se denomina
semitono .
➢ Según el sistema de notación latina, las siete notas sin alteración
son: Do - Re - Mi - Fa - Sol - La - Si. Las notas con alteración son: (Do# ó Re
♭, Re# ó Mi ♭, Fa# ó Sol ♭, Sol# ó La ♭, La# ó Si ♭) y se generan
incrementando o disminuyendo un semitono las anteriores.
➢ Según el sistema de notación inglesa o denominación literal (ver
figura 2.2), las siete notas musicales sin alteración se representan mediante
16
una letra desde la A hasta la G (A,B,C,D,E,F, y G). La nota latina Do es la
equivalente a la nota ingles C, siguiendo esa equivalencia, la relación entre los
dos sistemas se puede obtener de manera directa. Por analogía, en el sistema
inglés hay cinco notas con alteración que son las siguientes: o A ♭, A# o B ♭ o
C# o D ♭, D# o E ♭, F# o G ♭, G#
● La octava a la que pertenece una nota se representa mediante un
número que sigue a la letra correspondiente (la nota A4 es la nota A de la
escala musical 4).
● En la música occidental, la escala musical más importante es la
escala diatónica. Esta escala está compuesta por un conjunto de notas que
difieren 2; 2; 1; 2; 2; 2; 1 semitonos entre cada una. Estas separaciones dan
lugar a las siete notas sin alteración.
● El pentagrama son cinco lÍneas horizontales y cuatro espacios que
se usa para escribir sobre él los símbolos musicales. Por convenio se sigue la
misma dirección de izquierda a derecha que en la escritura del lenguaje natural,
por tanto, el pentagrama es una línea de tiempo, las notas situadas más a la
izquierda se tocan antes que las que se encuentren a su derecha. Cuando el
pentagrama se usa para instrumentos armónicos la posición del símbolo indica
el pitch o frecuencia fundamental del sonido, cuando se trata de pentagramas
para percusión, cada posición (en el eje vertical) corresponde a un instrumento
distinto.
● La clave es un símbolo musical que se usa para indicar el pitch de
las notas escritas sobre el pentagrama. Se sitúa sobre una de las líneas al
comienzo del pentagrama e indica el nombre y pitch de las notas que se sitúen
sobre dicha línea. Existen tres claves, clave de Sol, la clave de Fa y la clave de
Do. Su nombre designa a la nota que se sitúe en la línea del pentagrama sobre
la que se escriba cada clave.
17
● La duración de cada nota se representa mediante figuras musicales.
Cada figura tiene una duración relativa respecto a las demás, por ejemplo, si
como referencia de duración se establece la figura negra, el resto de figuras
tienen las siguientes relaciones: redonda (4), blanca (2), negra (1), corchea
(1/2), semicorchea (1/4), fusa (1/8) y semifusa(1/16).
Redon
da
Blanc
a
Negra Corch
ea
Semicor
chea
Fusa Semif
usa
● El pentagrama se encuentra dividido, en la línea temporal, por unas
líneas verticales que dividen la pieza en fragmentos, cada uno de ellos se
denomina compás y se usan para organizar y hacer más cómoda la lectura de
la partitura. Una división más gruesa y doble indica el comienzo y el final de la
pieza musical. En ocasiones los compases se marcan con números para
facilitar su localización, comenzando con el número 1 para el primer compás y
continuar de manera creciente. Los compases son una herramienta para
marcar el ritmo de la música. Al principio del pentagrama se indica mediante
dos números en forma de fracción el ritmo del compás. El numerador indica el
número de tiempos que tendrá el compás y el denominador indica la unidad de
tiempo, es decir, la figura que ocupa un tiempo completo del compás. Por
ejemplo un compás 4/4 indica que la unidad de tiempo es la negra y que cada
compás se compone de 4 negras, si el compás fuese 2/4 habría 2 negras en
cada compás.
18
En el contexto del análisis musical cada evento o nota musical puede
caracterizarse por tres parámetros básicos:
❏ El Pitch es un atributo perceptual que permite ordenar los sonidos en
una escala de frecuencia logarítmica, el pitch representa la nota asociada a un
evento musical. Un sonido presenta un determinado pitch "si la frecuencia de
una sinusoide de amplitud arbitraria puede ser relacionada con el sonido
percibido". Esto indica que un sonido tendrá un pitch sólo si ambos son
relacionados entre sí por el sistema auditivo humano. El concepto físico
asociado al pitch se denomina frecuencia fundamental f0 que se define
únicamente para señales periódicas o cuasi-periódicas. En este proyecto los
términos pitch y frecuencia fundamental son considerados similares y se
emplearán indistintamente a pesar de la leve diferencia de concepto que no
afecta a su uso.
❏ Onset se define como el instante de tiempo en el que se inicia un
nota musical.
❏ Duración es el intervalo temporal durante el cual una nota musical
se encuentra activa en la señal de audio. Comienza en el instante de onset.
En la música occidental, los eventos musicales (notas) se ordenan en una
escala logarítmica de manera similar al comportamiento logarítmico del oído
humano. Por ello, la frecuencia fundamental, f0 (Hz) de cada evento se puede
representar como en la ecuación (2.5.1) mediante el uso de la escala musical
temperada (equal-tempered), suponiendo un teclado de un piano estándar con
88 teclas
f0 (Hz) = f0ref * 2 n/12, n = -48, …, 0, ...39 (2.5.1)
donde n es el número de semitonos entre la frecuencia de referencia
(f0ref), y la frecuencia deseada f0. Consideremos f0ref como la frecuencia
fundamental del evento A4 (f0A4 = 440 Hz) subir un semitono nos lleva al evento
A4# cuya frecuencia fundamental se obtiene con f0A4# = f0A4 * 21/12 = 466,2
Hz.
19
● En la teoría musical, se define como intervalo musical a la distancia
en frecuencia de dos notas que comparten el tiempo de activación, es decir,
son concurrentes.
● Un acorde en música es una combinación de dos o más notas
sonando de manera simultánea o casi simultánea. Los acordes más frecuentes
son las triadas, que son acordes de tres notas. Un acorde puede ser
consonante o disonante dependiendo de la relación entre las frecuencias de los
parciales que componen dichos sonidos armónicos. Concretamente, un acorde
consonante es la combinación de notas que producen un sonido agradable para
la mayoría de las personas, mientras que uno disonante provocará una
sensación molesta o desagradable.
● El concepto de armonía musical está relacionado con el uso de
varios pitchs simultáneos o acordes. La armonía analiza la relación existente
entre las frecuencias fundamentales que componen un acorde y a la vez la
relación entre el acorde y sus adyacentes.
● La melodía se define como una sucesión temporal de notas
musicales que se perciben como una entidad única. Habitualmente, las
melodías consisten en uno o más pasajes que son cantados por un vocalista o
por solos instrumentales, estos pasajes son repetidos durante la canción de
varías formas distintas.
2.6. Protocolo MIDI
El estándar MIDI (Musical Instrument Digital Interface) es comúnmente
usado para representación de información musical en dispositivos de audio.
Fue creado en 1982, y en la actualidad se sigue trabajando con él en diferentes
ámbitos como en cine, grabación musical, TV, presentaciones multimedia,
incluso en algunas máquinas tragaperras. El sistema MIDI lleva mensajes de
eventos que especifican notación musical, tono y velocidad; señales de control
para parámetros musicales como lo son la dinámica, el vibrato, paneo, cues y
señales de reloj que establecen y sincronizan el tempo entre varios dispositivos.
20
Estos mensajes son enviados mediante un cable MIDI a otros dispositivos que
controlan la generación de sonidos u otras características. Estos datos también
pueden ser grabados en un hardware o software llamado secuenciador, el cual
permite editar la información y reproducirla posteriormente.
Fuente: cavsi.com
Este protocolo ofrece una relación entre Hertzios y la numeración MIDI
(números naturales). Para traducir una frecuencia f0 a notación MIDI se emplea
la siguiente ecuación:
NMIDI = [69 + 12*log2(f0(Hz)/440)]
en sentido opuesto, para convertir de la notación MIDI a hercios se
emplea la ecuación:
f0 (Hz) = 440*2[(NMIDI-69)/12]
Por convenio, la nota MIDI 69 se ha asignado a la nota A4 con f0 = 440
Hz. En la siguiente tabla, se relacionan las frecuencias f0 en hercios a cada
nota MIDI para todas las notas musicales de las nueve octavas. Se puede ver
que cubren un rango de 7900 Hz. Cada columna representa una escala musical
y cada fila es un evento de la escala. En cada celda se muestran, en primer
lugar la frecuencia fundamental (Hz) y en segundo lugar, entre paréntesis el
número de nota MIDI correspondiente.
21
Notas musicales (Hz - MIDI)
Nota/
Octava
0 1 2 3 4 5 6 7 8
C 6.35
(12)
2.70
(24)
5.41
(36)
130.8
(48)
61.6
(60)
23.3
(72)
047.0
(84)
093.0
(96)
186.0
(108)
C# 7.32
(13)
4.65
(25)
9.30
(37)
38.6
(49)
77.2
(61)
54.4
(73)
109.0
(85)
217.0
(97)
435.0
(109)
D 8.35
(14)
6.71
(26)
3.42
(38)
46.8
(50)
93.7
(62)
87.3
(74)
175.0
(86)
349.0
(99)
978.0
(111)
D# 9.45
(15)
8.89
(27)
7.78
(39)
55.6
(51)
11.1
(63)
22.3
(75)
245.0
(87)
489.0
(99)
978.0
(111)
E 0.60
(16)
1.20
(28)
2.41
(40)
64.8
(52)
29.6
(64)
59.3
(76)
319.0
(88)
637.0
(100)
274.0
(112)
F 1.83
(17)
3.65
(29)
7.31
(41)
74.6
(53)
49.2
(65)
98.5
(77)
397.0
(89)
794.0
(101)
588.0
(113)
F# 3.12
(18)
6.25
(30)
2.50
(42)
85.0
(54)
70.0
(66)
40.0
(78)
480.0
(90)
960.0
(102)
920.0
(114)
G 4.50
(19)
9.00
(31)
8.00
(43)
96.0
(55)
92.0
(67)
84.0
(79)
568.0
(91)
136.0
(103)
272.0
(115)
G# 5.96
(20)
1.91
(32)
03.80
(44)
07.7
(56)
15.3
(68)
30.6
(80)
661.0
(92)
322.0
(104)
645.0
(116)
A 7.50
(21)
5.00
(33)
10.0
(45)
20.0
(57)
40.0
(69)
80.0
(81)
760.0
(93)
520.0
(105)
040.0
(117)
A# 9.14
(22)
8.27
(34)
16.50
(46)
33.1
(58)
66.2
(70)
32.3
(82)
865.0
(94)
729.0
(106)
459.0
(118)
22
B 0.87
(23)
1.74
(35)
23.50
(47)
46.9
(59)
93.9
(71)
87.8
(83)
976.0
(95)
951.0
(107)
902.0
(119)
Tabla: Relación entre todas las notas musicales y escalas con la
nomenclatura MIDI
Ventajas del formato MIDI:
● Los archivos de datos MIDI tienen un tamaño insignificante. Una
secuencia MIDI típica utiliza sólo unos 10 Kb por minuto.
● Ofrece la posibilidad de editar la música con facilidad.
● Permite alterar la velocidad de reproducción y la altura tonal de los
sonidos de forma independiente.
Estructura de un mensaje MIDI:
En esencia la estructura de un mensaje MIDI se reduce a:
○ 1 bit SPACE como señal de Start.
○ 1 bye con información
○ 1 bit MARK como señal de Stop.
Fuente: domuno.es
23
3. OBJETIVOS
1. Adquirir nuevos conocimientos en técnicas avanzadas de
procesamiento de imagen/video y audio, así como de realidad aumentada AR.
En concreto, en este trabajo se pretende desarrollar una herramienta para
creación de orquestas virtuales con aplicación para el entretenimiento pudiendo
sintetizar diferentes obras por distintos instrumentos.
2. Estudio de aplicaciones vigentes en el mercado para pc, móviles o
tablets de realidad aumentada, así como analizarlas para entender el
funcionamiento y poder aplicar técnicas diferentes a la aplicación.
3. Adquirir nuevos conocimientos sobre programas informáticos
presentes en el trabajo de empresas actuales. En este caso, se deberá de
trabajar con programas conocidos del ámbito de la realidad aumentada,
tecnología en la cual se basan numerosos proyectos empresariales actuales.
4. Mediante gafas de AR y la aplicación desarrollada pueda realizarse
la reproducción de una partitura con diferentes instrumentos seleccionables
según los marcadores que definan los instrumentos. Pudiendo alcanzar como
objetivo principal el interpretar una misma partitura por los instrumentos que la
componen, reproduciendo sólamente los que el usuario desee en cada preciso
momento, de forma sincronizada. Puede añadirse una instrumento real con el
acompañamiento virtual que generará una nueva interpretación musical.
5. Estudiar y trabajar con el protocolo MIDI, de modo que la aplicación
sea capaz de procesar y reproducir las partituras únicamente en formato MIDI.
6. Debe proporcionar un interfaz cómodo, intuitivo y sencillo de utilizar
para facilitar su uso con finalidad de aplicación para el ocio y entretenimiento.
Además se pretende que atraiga visualmente al cliente, añadiendo estructuras
vistosas al proyecto. Presentando al inicio un menú instintivo.
24
7. Una vez finalizada la implementación de la aplicación, comprobar el
correcto funcionamiento de la aplicación, cumpliendo así los objetivos marcados
por la propuesta inicial.
25
4. METODOLOGÍA
4.1. Aplicaciones musicales basadas en AR
Antes de entrar en detalle sobre esta app, será conveniente citar algunas
aplicaciones musicales basadas en realidad aumentada, con las que se
establecen ciertas similitudes. Es necesario mencionar que es un campo en el
que no se ha trabajado mucho hasta el momento, lo cual impide encontrar
varias aplicaciones de este tipo para tomar ideas o basarse en algún proyecto
en concreto:
- VinylARt - Music discovery Augmented Reality App: aplicación
basada en realidad aumentada que trata de reconocer la portada de los discos
musicales en formato de vinilo y reproducir las diferentes composiciones que
dispone dicho vinilo. Posee una interfaz muy llamativa, desarrollando sobre la
misma portada del vinilo diferentes ondas de diferentes formatos y colores
sincronizadas con las frecuencias de la propia obra musical. En el siguiente
enlace se puede observar su funcionamiento:
https://www.youtube.com/watch?v=uwRWNJ7WvAE
“VinylARt - Music discovery Augmented Reality App” en funcionamiento
26
- Augmented Reality Music Education Demo: se trata de una
aplicación destinada a atraer la atención de los más pequeños, ya que esta app
reconoce como marcador AR cierta partitura impresa y superpone un llamativo
personaje tocando la partitura con un instrumento. La aplicación se puede
inspeccionar en el siguiente enlace:
https://www.youtube.com/watch?v=X5YSQasFJ3A
“Augmented Reality Music Education Demo” en funcionamiento.
- AR Rahman. Augmented Reality Music Composition: El
funcionamiento de esta app aplica la realidad aumentada para crear varios
instrumentos virtuales, es decir, utiliza varios botones virtuales AR, explicados
en detalle más adelante en el apartado “4.2.4. Reproducción del archivo MIDI”,
asociando cada nota musical a estos botones virtuales, creando así diferentes
instrumentos como un piano virtual, un órgano virtual o un xilófono virtual. El
enlace donde se puede encontrar en detalle esta app es el siguiente:
https://www.youtube.com/watch?v=Pp-MwmSbOYo
27
“AR Rahman. Augmented Reality Music Composition” en funcionamiento.
4.2. Metodología de “Orquesta Virtual RA”
Como se ha mencionado anteriormente, este proyecto trata de crear una
aplicación para smartphone, tablet o pc, basada en Realidad Aumentada,
siendo capaz de reproducir multitud de partituras MIDI, con el fin de que el
usuario retransmita al mismo tiempo tantas fuentes de cierta canción como
desee. El nombre que ha recibido esta app ha sido “Orquesta Virtual RA”.
Para construir esta app, después de estudiar las posibles opciones, se ha
utilizado el conocido programa Unity, especializado en la programación de
videojuegos pero con una extensa variedad de módulos que los hacen
competente en diferentes ámbitos, como en la Realidad Aumentada. Es Vuforia
el módulo encargado de que Unity pueda trabajar con aplicaciones basadas en
RA. La fusión Unity+Vuforia, a pesar de no ser recomendada para principiantes,
es una buena elección porque existen muchas librerías que hacen que trabajar
sea cómodo, rápido y eficaz, de ahí que sea el programa más utilizado a nivel
empresarial del momento en el ámbito de programación de videojuegos y apps
basadas en RA.
28
La metodología de trabajo ha sido claramente a base de prueba y error,
debido a que antes de comenzar con esta aplicación mi conocimiento sobre la
materia era muy reducido, tanto en Unity como en la programación de
videojuegos. Debo de aclarar que esta app no es un videojuego pero los
métodos de programación son similares.
La funcionalidad de esta aplicación se describe a continuación
detalladamente a través del diagrama de flujo que presenta los cuatro bloques
necesarios que se han instaurado para obtener la solución deseada:
● Estructura y desarrollo de la Escena: En amarillo, bloque dedicado a
la programación de la aplicación en Unity necesaria.
● Reproducción del Archivo MIDI: En azul, el bloque que se encarga de
la reproducción musical.
● Menú del proyecto: En verde, el bloque que hace posible un menú
preciso y su correcto funcionamiento.
29
Diagrama de flujo propio de la funcionalidad de la aplicación “Orquesta
Virtual RA”
30
4.2.1. Estructura y Desarrollo de la escena:
● Configuración AR Camera: Para comenzar, una vez creado el
proyecto en Unity, es necesario situarlo en el ámbito de la realidad aumentada.
Por lo tanto se debe de instalar en la escena de la aplicación una cámara
basada en RA, siendo capaz de captar el mundo real a través de la cámara del
dispositivo al que está destinado, en este caso, la WebCam de cualquier
ordenador o la cámara de un smartphone o tablet.
Para realizar este proceso es necesario obtener la licencia de Vuforia, a
través de su plataforma https://vuforia.developer.com y dotar con esta clave a la
cámara del proyecto, para así poder trabajar con Vuforia en Unity con total
libertad. Es muy importante configurarla para que sea capaz de reconocer el
número máximo de marcadores como sean necesarios en nuestra aplicación.
Esta característica se denomina Max simultaneous T1 y se encuentra en la
sección Vuforia Configuration Engine.
Vuforia Configuration Engine de Unity
31
● Reconocimiento de Marcadores: Los marcadores son los
elementos que Vuforia necesita captar a través de la cameraAR para realizar
cualquier actividad de RA sobre ellos. En este paso, eran posibles cuatro
opciones que la realidad aumentada presenta como formas de trabajo.
- Nivel 0 (enlazado con el mundo físico): Mediante el uso de código de
barras y códigos QR, las aplicaciones hiperenlazan el mundo físico a otros
contenidos, sin registro alguno de 3D.
- Nivel 1 (RA con marcadores): Las aplicaciones utilizan imágenes de
cualquier tipo en 2D, pudiendo trabajar con registros 3D.
- Nivel 2 (RA sin marcadores): Se utilizan superficies del entorno, el
GPS y la brújula de los dispositivos móviles para determinar la localización y
orientación del usuario y superponer puntos de interés sobre las imágenes del
mundo real.
- Nivel 3 (Visión aumentada). Estaría representado por dispositivos
como Google Glass, HoloLens, lentes de contacto de alta tecnología u otros
que, en el futuro, serán capaces de ofrecer una experiencia completamente
contextualizada, inmersiva y personal.
Con las características del proyecto en cuestión, fue adecuado optar por el
Nivel 1, de manera que fuese posible el reconocimiento de imágenes de
instrumentos en 2D para la reproducción del correspondiente archivo MIDI y
aparición de instrumentos 3D, cuando dicho marcador (instrumento) entre en
escena.
Para que una imagen haga un buen papel como marcador, es conveniente
que disponga de un alto contraste. La aplicación será capaz de reconocer los
marcadores deseados creando la base de datos “Instrumentos” en la plataforma
de Vuforia para más tarde descargarla e importarla al proyecto.
32
El diseño de algunos de los marcadores son los siguientes:
Marcadores de los instrumentos propios de la aplicación “Orquesta Virtual
RA”
● Asignación de prefabs: Los prefabs son los elementos multimedia
que Unity reproduce en la escena de la aplicación sobre los marcadores. El
formato de estos puede ser textos, imágenes 2D, vídeos, figuras 3D sin
movimiento, figuras 3D con animaciones o sonidos.
La selección de prefabs de este proyecto han sido:
- Figuras en 3D de los instrumentos que componen cada obra musical.
Se han añadido prefabs de instrumentos a cada marcador, de modo que se
reproduzcan en escena la imagen del instrumento que se desea escuchar.
33
La obtención de estas figuras ha sido a través del “Asset Store” de Unity,
en el cual existen prefabs libres para múltiples aplicaciones. Estas figuras
provienen del siguiente enlace:
https://assetstore.unity.com/packages/3d/props/musical-instruments-pack-
20066
Prefabs de instrumentos en escena añadidos a sus respectivos
marcadores
- Figuras en 3D de notas musicales flotantes en movimiento. Se han
añadido notas musicales a cada instrumento que aparezca en escena, para
ilustrar la reproducción de música de dicho instrumento. La obtención de estas
figuras ha sido a través del “Asset Store” de Unity, su respectivo enlace es
https://assetstore.unity.com/packages/vfx/particles/floating-music-note-particle-
system-105933
34
Prefabs de instrumentos en escena con notas musicales flotantes
Gracias a esta combinación de elementos 3D la aplicación resulta más
llamativa e interactiva para el usuario, haciéndola más apropiada para todos los
públicos e intentando despertar interés en los más pequeños por el mundo de la
música.
● Detección de marcador: Esta sección es la encargada de hacer
saber al módulo de ‘Reproducción de archivos MIDI’ que cierto marcador
(instrumento) ha aparecido en escena para hacerlo sonar. Para ello ha sido
necesario editar los scripts predefinidos por Vuforia. A lo largo de la creación de
la app, han sido varios los planteamientos para este fin. Finalmente, la opción
más apropiada ha sido la siguiente:
(1) Se ha creado un objeto 3D de tamaño invisible para cada
instrumento de la escena (cubo, esfera, cilindro…).
(2) Se ha asignado una “etiqueta” a cada uno de los objetos para que el
propio instrumento sea capaz de reconocer el objeto deseado.
(3) Estos objetos comienzan activados.
(4) Una vez que aparezca el marcador (instrumento) en escena, estos
objetos se desactivan.
En el siguiente paso se explica cómo estos objetos se utilizarán como
variables para hacer saber cuando se realiza cierta acción. Para que estos 4
sencillos pasos funcionen es necesario el siguiente script, explicado
detalladamente a continuación, en cada uno de los marcadores, el cual se
35
encarga del reconocimiento de dicho marcador y de activar dicho objeto, en
este caso el cubo.
Código del script “CubeActive”
La funcionalidad del script anterior “CubeActive” trata de detectar el
marcador cuando se presente ante la cámara del dispositivo y aplicar la acción
deseada sobre el mismo. Para ello se ha generado este script que detalladamente
se basa en lo siguiente:
a) En la función “Start” se encuentran dos acciones diferenciadas. Una de
ellas desde la línea de código 17 hasta 19 las cuales son el código
necesario para que la cámara detecte a esta imagen como marcador de
realidad aumentada. La siguiente línea, la línea 20, trata de reconocer la
variable distinguida “Cube” para este script, para que en las próximas líneas
de código se pueda trabajar con ella.
36
b) En la función “OnTrackableOnStateChanged” se trabaja con las tres
acciones que puede sufrir el marcador: aparecer en la escena, desaparecer
de la escena y no haber aparecido en la escena. Para acceder al momento
en el que el marcador aparece en escena son necesarias las líneas desde
la 29 hasta la 32, una vez accedido a este momento, se indica a través de
la línea 34 que la variable distinguida, en este caso “Cube”, sea
desactivada de la escena. Desde la línea 36 hasta el final del código se
trabajan las demás opciones, desaparecer y no haber aparecido en escena,
que se establece la variable destinguida, en este caso“Cube”, activada para
ambos casos.
● Conocimiento del Animator: El Animator es la sección de Unity que
se encarga de realizar una animación tras recibir cierta orden. Una animación
puede ser desde la encargada del movimiento de algún objeto animado de la
escena (como realiza las notas musicales flotantes anteriormente
mencionadas), hasta la encargada de la modificación de cualquier variable del
proyecto. En este caso la animación que se realiza es la necesaria para
reproducir el archivo MIDI del instrumento deseado, que se explica con detalle
en el apartado “Creación de Animación” del módulo “4.2. Reproducción del
Archivo MIDI”.
El Animator reproduce la animación cuando recibe la orden de que las
variables Cube, Sphere, Cylinder, etc. están desactivadas del proyecto,
consiguiendo así la unión entre distintos módulos para la correcta solución.
Para que el Animator conozca la actividad del objeto es necesario el
siguiente script.
37
Código del script “CubeHierachy”
4.2.2. Reproducción del archivo MIDI
● Configuración de Unity para archivos MIDI: En primer lugar, es
necesario aclarar que Unity no está predefinido para trabajar con archivos MIDI,
ya que no es un programa dedicado especialmente a trabajos del mundo
musical. Sin embargo, está preparado para trabajar con archivos musicales de
formato MP3 o WAV, para la reproducción de sonidos que pueda poseer
cualquier videojuego como sonidos de ambiente, movimientos de los
personajes o intros. Los primeros pasos del proyecto fueron trabajados con este
tipo de formato para explorar la configuración musical de Unity y el rendimiento
que se pudiera obtener.
Entonces, para que el proyecto pudiese reconocer y producir
partituras MIDI, ha sido necesario la importación del módulo “Unity MIDI Player”
al proyecto, el cual es un extenso conjunto de scripts modificables. Para este
módulo es necesario crear una base de datos interna al proyecto con las
partituras MIDI con las que se deseen trabajar. Es un módulo intuitivo y fácil de
compilar. El módulo está programado para recibir un sólo archivo y reproducirlo
al compilar. De modo que para adaptarlo al proyecto:
38
- Se ha duplicado el módulo (script) tantas veces como instrumentos
participen en la obra musical.
- Se han renombrado cada módulo con el nombre de cada uno de los
instrumentos, de este modo será más sencillo añadir nuevas obras musicales si
el usuario lo desea.
Los primeros pasos para conseguir el objetivo final con este módulo
comenzaron tratando de editar estos scripts, como más adelante se explica
detalladamente en el apartado “Creación de la Animación”, aunque para la
solución final adoptada no se ha necesitado editarlos, sino que se han buscado
alternativas diferentes.
● Separación de fuentes MIDI: Para la importación de archivos MIDI
al proyecto es necesario fraccionar la partitura original en las partituras de cada
uno de los instrumentos que la componen. Para el estudio de los resultados de
la aplicación ante distintas configuraciones, se ha propuesto trabajar con tres
composiciones musicales de distintos géneros:
- Música clásica: Mozart. Piano cuarteto y cuerdas Nº .1 en G-, K.478.
39
- Flamenco: Paco de Lucía. Entre dos aguas.
- Rock: AC/DC. Back in Black.
La edición de archivos MIDI se ha realizado con el programa “MIDIEditor”.
Debido a que en cada partitura del protocolo MIDI, un byte es dedicado al tipo
de instrumento con el que se está recitando la obra musical, es sencillo obtener
las partituras MIDI de cada instrumento desde la partitura original:
40
Paco de Lucía - Entre dos aguas fraccionado en instrumentos en
MIDIEditor
En este caso, es la obra musical de Paco de Lucía - Entre dos aguas, que
se compone de guitarra española, bajo eléctrico y timbales. Cada secuencia de
notas del mismo color representa la partitura MIDI de cada instrumento, en este
caso la partitura amarilla representa el bajo eléctrico, la partitura verde
representa a los timbales y la partitura roja representa a la guitarra española.
De modo que filtrando la partitura original, podremos obtener cualquier partitura
que se desee. En la siguiente figura se obtiene filtrada la partitura MIDI de la
guitarra española propia de la obra musical en cuestión:
Partitura MIDI de guitarra española propia de Entre dos aguas de Paco de
Lucía
41
● Importación de archivos MIDI: Una vez separadas las fuentes de la
partitura MIDI, es necesario importarlas al proyecto. Para ello es necesario
crear una base de datos interna al proyecto, como se mencionó anteriormente,
con las obras musicales con las que se desean trabajar. En el Anexo I “Manual
de usuario: cómo añadir nuevas obras musicales”, se explica detalladamente el
proceso para añadir nuevas partituras MIDI al proyecto.
Una vez añadidas a la base de datos de “Unity MIDI Player” las
partituras separadas, se deben de importar a la escena en la sección Select
MIDI del script. Lo importante de este paso es añadir cada una de las partituras
a su respectivo script (a su respectivo instrumento), anteriormente renombrado
para evitar confusiones. Por ejemplo, en el caso de la obra musical “Mozart.
Piano cuarteto y cuerdas Nº .1 en G-, K.478.” se han creado cuatro script
independientes, uno para cada instrumento que lo componen.
Script de Unity MIDI Player perteneciente a la partitura de viola de la obra
de Mozart. Piano cuarteto y cuerdas Nº .1 en G-, K.478.
Se ha creído conveniente para esta aplicación que se acceda a los
contenidos multimedia de la app de forma local, ya que se trabaja con archivos
MIDI que disponen de un tamaño muy reducido, los cuales se encuentran entre
8,40 KB el menor y 27,5 KB el mayor fichero. Teniendo en cuenta que acceder
42
de forma local presenta diferentes ventajas ante acceder de forma remota,
como:
a) El acceso a los ficheros es más sencillo y rápido.
b) No se requiere de conexión externa.
Debido al tamaño reducido de los archivos MIDI no será concluyente
acceder de forma remota, algo que sí cobraría sentido si se tratase de archivos
de vídeo, grandes volúmenes de imágenes o de audios, etc.
● Creación de la Animación: Este es el paso más significativo de
todos, debido a que se encarga de reproducir el número de partituras
convenientes simultáneamente, sincronizadas al mismo tiempo. Para llegar a
esta solución se han considerado otras muchas opciones, que no han resultado
ser convenientes para obtener la solución deseada por diferentes motivos. Por
ejemplo:
1) En Unity es posible añadir sonidos a un marcador en el momento
que aparece, esto es muy útil para aplicaciones basadas en juegos de RA, para
que en el momento que el usuario muestre el marcador, la aplicación realice un
sonido característico notificando su presencia en la escena.
De modo que los primeros pasos fueron apoyados sobre esta
configuración. El resultado no fue satisfactorio debido a que no era compatible
con archivos MIDI y que no era posible reproducir los diferentes archivos de
manera sincronizada.
2) Como segunda opción se valoró la opción de llevarlo a cabo a través
de un botón virtual de realidad aumentada. Es una herramienta muy útil, que
trata en crear un espacio en el que si se detecta movimiento de las manos
sobre él, la aplicación genera una acción. El funcionamiento se basaba en la
reproducción de un archivo de música tras presionar el botón virtual de PLAY y
hacerlo parar cuando se presionara el mismo botón de STOP.
43
Intento de la app “Orquesta Virtual RA” con botón virtual de Play
No presentó éxito debido a los mismos motivos anteriores, no era
compatible con archivos MIDI y además no cabía la posibilidad de reproducir
las obras musicales de forma sincronizada.
3) Una vez instalado el módulo “Unity MIDI Player”, la primera opción
fue llamar a la función Play.music() cada vez que se reconociese la presencia
de dicho marcador en escena.
Tampoco presentó éxito porque de nuevo no era posible la reproducción
de los archivos de forma sincronizada.
4) Como enmienda para solucionar la sincronización entre partituras,
fue una buena idea trabajar sobre el volumen de cada partitura, habiéndose
reproducido todas al mismo tiempo. De modo que el siguiente paso fue la
edición del script Midi.Volume(), para que cada vez que se reconociese cierto
marcador el volumen del instrumento fuese notable.
A pesar de ser un buen avance para la solución final del proyecto, no
supuso éxito porque todos los módulos se rigen por la misma cadena de scripts,
de modo que no fue posible editar cada script para cada instrumento, lo cual
suponía que el volumen de todos los instrumentos se editaba por igual al mismo
tiempo.
44
Como solución final ha sido estudiada la opción de incorporar lo que en
Unity se conoce como una animación. Como anteriormente ha sido explicada,
una animación trata de una opción de Unity que se encarga de la edición de
variables presentes en la escena una vez reproducida la misma, es decir,
edición de variables de la escena, tras ocurrir algún motivo que la justifique.
Puede ser de forma continua como el movimiento de un personaje del
videojuego, o como en este caso, de forma discontinua, que sólamente se
modifica la variable una sola vez (cuando se detecta el marcador). Se ha
llevado a cabo de la siguiente manera:
1) Ha sido apropiado definir el volumen de los archivos MIDI como una
variable accesible.
2) Se ha creado la animación y el Animation correspondiente a cada
instrumento. El Animation es el módulo de Unity encargado a la adjudicación y
edición de sus propias animaciones. La animación creada corresponde a la
edición del volumen de su respectivo instrumento. Han sido necesarias dos
animaciones conjuntas para cada Animation, una para disminuir la variable
volumen y otra más para aumentarla.
Animation correspondiente al piano de la obra de Mozart, Piano cuarteto
y cuerdas Nº .1 en G-, K.478. Animación encargada de aumentar el
volumen.
45
Como se puede apreciar en la curva de la variable, la animación, la
encargada en este caso de aumentar el volumen del piano de la obra propia de
Mozart, es constante en el valor 0.7, valor suficiente para apreciar que la obra
se está reproduciendo en la app. Por el contrario, como se puede apreciar en la
siguiente figura, la animación encargada de disminuir el volumen de la obra
propia de Mozart, será constante en el valor 0.
Animation correspondiente al piano de la obra de Mozart, Piano cuarteto
y cuerdas Nº .1 en G-, K.478. Animación encargada de disminuir el
volumen
.
Este paso es necesario para cada uno de los instrumentos que componen
la obra musical en cuestión, es decir, para la obra propia de Mozart han sido
necesarios los Animations llamados “Piano”, “Viola”, “Violín y “Cello”; para la
obra de Paco de Lucía han sido necesarios “Timbales”, “Guitarra Española” y
“Bajo” y los correspondientes a la obra de AC/DC han sido “Batería”, “Bajo”,
“Guitarra Eléctrica” y “Vocal”. Cada uno de estos con sus respectivas
animaciones para disminuir y aumentar el volumen.
3) El Animation necesita conocer el motivo por el cual aplicar la
animación de aumentar el volumen o disminuirlo. Para ello es imprescindible la
configuración del Animator. El Animator es el módulo de Unity encargado de
realizar el cambio de una animación a otra.
46
Animator correspondiente al piano de la obra de Mozart, Piano cuarteto y
cuerdas Nº .1 en G-, K.478.
Como se puede contemplar en la figura anterior, el Animator se
compone de las animaciones que el Animation posee, y de las transiciones que
existen entre ellas. Las transiciones se realizarán en el momento en que la
variable distinguida, anteriormente explicadas (Cube, Sphere, Cylinder, etc),
estén desactivadas de la escena. En este caso, la variable a inspeccionar es el
Cylinder, por tanto, si Cylinder se encuentra desactivada de la escena, se
ejecutará la transición desde la animación base “bajar_Piano” hacia
“subir_Piano”, de modo que sonará la partitura del piano, y viceversa. Para
que todo este proceso tenga sentido y pueda compilar es indispensable añadir
el siguiente script a cada uno de los marcadores (instrumentos).
Script “ActiveHierachy”, encargado de conocer el estado de la variable
distinguible en la escena.
47
4) Por último es irremediable marcar la casilla “Play at Startup” en el
menú del Unity MIDI Player para que la reproducción de las partituras se
adquiera al iniciar la escena, con esto se logra que todas las partituras estén
sincronizadas, ya que comienzan en el mismo instante.
Es indispensable realizar estos cuatro pasos para cada uno de los
marcadores (instrumentos). Por lo tanto, con esta solución propuesta se
alcanzará la reproducción de tantas partituras MIDI como la obra posea de
forma sincronizada, obteniendo así el objetivo principal del proyecto.
4.2.3. Configuración final:
El correcto funcionamiento de la aplicación se alcanzará elaborando en el
inspector de cada escena un conjunto de los parámetros que se han ido
mencionando y describiendo a lo largo de la descripción del funcionamiento de
la app. Para cada instrumento de cada escena es inevitable crear los siguientes
parámetros:
- Un marcador, a poder ser con la imagen del instrumento en cuestión
para que sea más intuitivo.
- Variable distinguida (Cube, Sphere, Cylinder, etc).
- MidiFilePlayer, con su respectivos MidiPlayerGlobal y
VoiceTemplate, el cual engloba a su vez a AudioSource.
- Prefabricado 3D del respectivo instrumento.
- Notas musicales flotantes grandes
- Notas musicales flotantes pequeñas
48
Parámetros del inspector perteneciente a Piano cuarteto y cuerdas Nº .1
en G-, K.478 (Mozart), con el apartado del violín desglosado
4.2.4. Menú del proyecto
● Producción de diferentes obras musicales: Como se ha
mencionado anteriormente, se han planteado tres obras musicales para
observar y estudiar el comportamiento de la aplicación frente a diferentes
configuraciones. Se han propuesto obras pertenecientes a diferentes géneros
musicales: música clásica, flamenco y rock. “Piano cuarteto y cuerdas Nº .1 en
G-, K.478” (Mozart), “Entre dos aguas” (Paco de Lucía) y “Back in Black”
(AC/DC), respectivamente. Cada una de estas obras poseen un número de
instrumentos diferentes, lo cual implica un número diferente de partituras
reproduciéndose sincronizadamente.
Para implementar esta propuesta en el proyecto, ha sido apropiado
crear tres escenas, cada escena correspondiente a un género musical
diferente, es decir, tres diseños con sus respectivas partituras, configuraciones
e instrumentos.
49
Configuración final de la escena propia de la obra de Mozart
Configuración final de la escena propia de la obra de Paco de Lucía
Configuración final de la escena de la obra propia de AC/DC
● Diseño del menú: Cuando se inicializa la aplicación se obtiene un
menú llamativo, sencillo e intuitivo para el usuario, desde el cual se puede
seleccionar la partitura con la que se desea deleitar.
50
Este menú es capaz de reconocer las tres escenas diferentes y acceder a
la que el usuario desee en cada momento gracias a su determinado script, el
encargado de saltar desde la escena 0 (el menú) hasta la escena 1 (obra de
Mozart), 2 (obra de Paco de Lucía) ó 3 (obra de AC/DC).
Menú propio de la aplicación “Orquesta Virtual RA”
51
5. RESULTADOS Y DISCUSIÓN
Después de haber compilado diferentes intentos del proyecto, se han
obtenido diferentes resultados, que uno a uno han ido asistiendo a confeccionar
la solución final. Como resultado final se han conseguido cubrir los objetivos
iniciales satisfactoriamente, proporcionando así una aplicación capaz de
reproducir las partituras MIDI de diferentes instrumentos al mismo tiempo de
forma sincronizada. Además, presenta una interfaz llamativa e intuitiva,
presentando modelos 3D de los instrumentos que componen cada obra
musical. Esta app ha sido analizada en diferentes entornos musicales, como
música clásica, flamenco y rock.
“Orquesta Virtual RA” reproduciendo los instrumentos propios de la obra
de Mozart
Esta app está diseñada para que sea capaz de reproducir cualquier
partitura musical que se encuentre en formato MIDI. Gracia al diseño de ésta,
es capaz de reproducir cualquier partitura en cuanto a número de instrumentos
se refiere, es decir, no supondrá un problema el número de instrumentos del
que se componga la obra. El número máximo que se ha experimentado ha sido
con 7 instrumentos reproduciendo a la misma vez. La actual configuración es
capaz de reproducir un máximo de 4 instrumentos simultáneamente, sin
embargo, modificar este valor no supondrá ningún problema si se es lo que se
desea. En las siguientes figuras se demuestra que es capaz de reproducir
52
tantos instrumentos como se desee sin que influya en la reproducción de los
demás.
“Orquesta Virtual RA” reproduciendo 1 instrumento.
“Orquesta Virtual RA” reproduciendo 2 instrumentos.
53
“Orquesta Virtual RA” reproduciendo 3 instrumentos.
“Orquesta Virtual RA” reproduciendo 4 instrumentos.
Además, la aplicación es capaz de identificar los instrumentos necesarios
para la obra musical necesaria, es decir, si para la obra de Mozart se muestran
la guitarra española y la guitarra eléctrica en escena, no supondrán
contratiempo alguno. Es más, como se muestra en la siguiente figura, no se
mostrarán sus respectivos modelos 3D en escena, enfatizando así que dichos
instrumentos no pertenecen a dicha obra.
54
“Orquesta Virtual RA” reproduciendo la obra de Mozart y diferenciando los
instrumentos necesarios
Para que la aplicación funcione como es debido, no debe de presentar
problemas en el momento que se modifique el estado de los marcadores
presentes en la escena, es decir, que se puedan retirar los marcadores
presentes y añadir otros diferentes sin que esto altere el correcto
funcionamiento de la app. Las siguientes capturas de la aplicación muestra este
punto:
“Orquesta Virtual RA” reproduciendo la obra propia de Mozart con 3
instrumentos.
55
“Orquesta Virtual RA” reproduciendo la obra propia de Mozart después de
retirar el marcador del violín de escena.
“Orquesta Virtual RA” reproduciendo la obra propia de Mozart después de
retirar el marcador del violín e incluir el marcador del piano en la escena.
Debido a que la app trabaja con una cámara de realidad aumentada,
presenta algunas restricciones:
a) Como se puede apreciar en la siguiente imagen, el ángulo formado
entre la cámara y el marcador no presenta inconveniente alguno, ya que se
56
trata de la cantidad de marcador que es captado, no del ángulo que presenta la
cámara con la superficie del mismo.
“Orquesta Virtual RA” reconociendo el marcador del violín con un dificultoso
ángulo.
b) En cuanto a la iluminación mínima del ambiente que necesita la
aplicación para reconocer sus marcadores, es complicado establecer un valor
exacto de luminosidad, de modo que para que la explicación sea más clara, se
adjuntan las próximas figuras que presentan la cantidad de iluminación límite
que soporta la app, tanto para reconocer el marcador como el momento en el
que no es capaz de registrarlo:
57
Figura 1: Iluminación límite para que la aplicación reconozca los marcadores
Figura 2: Iluminación límite para que la aplicación no reconozca los marcadores
c) En cuanto a los problema de reconocimiento del marcador debido a
las sombras que se puedan producir sobre éste, se ha demostrado tras varias
pruebas, que si la sombra no produce un nivel de luminosidad menor que el
anteriormente expuesto, no supondrá problema alguno. Como se muestra en la
siguiente figura, la sombra producida sobre el marcador presenta una alta
oscuridad y la aplicación es capaz de reconocer de qué marcador se trata:
58
Captura realizada a la aplicación “Orquesta Virtual RA” que muestra la cantidad
de sombra producida sobre un marcador que es capaz de soportar.
d) El reconocimiento del marcador se ha medido en tanto por cien. Es
decir, tras varias pruebas, se ha observado que en todos los marcadores se
repite que la aplicación es capaz de reconocer un marcador cuando la cámara
capta al menos un 20% del diseño del marcador, en las siguientes figuras se
aprecia visualmente:
59
Figura 1: Representa la parte izquierda visible necesaria para que la aplicación
funcione
Figura 2: Representa la parte inferior visible necesaria para que la aplicación
funcione
Figura 3: Representa la parte superior visible necesaria para que la aplicación
funcione
Figura 4: Representa la parte derecha visible necesaria para que la aplicación
funcione
e) Como se demuestra en la siguiente imagen, todas estas pruebas se
mantienen si el número de marcador es mayor que uno, es decir, la cantidad de
luminosidad, las sombras, el ángulo que forma la cámara con la superficie del
marcador, etc. se mantendrán aunque exista más de un sólo marcador. En la
siguiente figura se muestra como se mantiene el correcto funcionamiento de la
aplicación con 4 instrumentos y una luminosidad baja.
60
“Orquesta Virtual RA” en funcionamiento con 4 instrumentos y una baja
luminosidad.
f) El marcador que esté visible en escena se deberá de retirar de ella con
cierta delicadeza, es decir, no es conveniente retirarlo excesivamente
rápido ya que podría quedarse presente algún modelo 3D, ya sean
instrumentos o notas flotantes, en la escena.
Situación en la que queda presente el modelo 3D sin que exista su marcador en
escena, en este caso del piano, debido al exceso de velocidad a la hora de
retirar el marcador
61
g) A la hora de la reproducción musical presenta un mínimo desfase
temporal desde el momento que se presenta el marcador hasta que se
reproduce la partitura de dicho instrumento, casi imperceptible, de exactamente
0.204 segundos. Este desfase temporal se debe al tiempo que necesita la
animación para elevar la variable volumen desde 0 hasta 1, ya que lo hace de
forma progresiva.
h) Debido a que el menú no posee escena de realidad aumentada, es
decir, que no utiliza la cámara del dispositivo sino que presenta un fondo opaco,
en el momento de acceder a la escena de la obra musical deseada desde el
propio menú se aprecia cierta lentitud, tarda 4.405 segundos en cargar la
escena RA. Este retraso es un valor aceptable, ya que no presenta una
tardanza excesivamente larga ni mucho menos insoportable.
i) Si esta aplicación se utiliza para ordenador, no será conveniente
utilizar la WebCam de un ordenador portátil, será más apropiado una WebCam
auxiliar para poder apoyar los marcadores en algún soporte horizontal, como
una mesa.
El máximo rendimiento de esta app se alcanzará utilizando las gafas de AR.
Las cuales nos proporcionarán una fácil y cómoda manipulación de la app, más
aún si se la aplicación se utiliza como acompañamiento de un instrumento real.
Gafas AR, totalmente recomendadas para la utilización de esta aplicación.
62
Para que se pueda observar el funcionamiento real de la aplicación, se ha
creado un canal de Youtube propio de la app, donde se encuentran diferentes
vídeos describiendo el funcionamiento íntegro de la misma:
https://www.youtube.com/channel/UCyXVhO5tBJCrhbeB9-UZ1qg
63
6. CONCLUSIONES
Como principal conclusión de este proyecto será idóneo reiterar que se
han conseguido superar todos los objetivos planteados, cumpliendo así las
expectativas expuestas en la propuesta del propio Trabajo de Fin de Grado.
Desarrollando así, los conocimientos apropiados y necesarios para llevarlo a
cabo.
Para llevar a cabo esta aplicación ha sido necesario estudiar, entender y
saber aplicar de una manera correcta conocimientos de realidad aumentada,
tecnología que es potencialmente utilizada a nivel empresarial y que el número
de aplicaciones basadas en esta tecnología están experimentando una
crecimiento exponencial. También ha sido necesario la ampliación de
conocimientos basados en separación de fuentes, en este caso musicales,
aplicada para la reproducción e identificación de diferentes partituras. Además,
se ha debido de estudiar y comprender el funcionamiento del protocolo MIDI.
A través de estos puntos necesarios para implementar el proyecto se ha
conseguido cubrir diferentes finalidades, como trabajar e implementar
aplicaciones con herramientas y tecnologías nuevas y actuales o manipular
proyectos basados en el procesamiento de señales, en este caso, el audio.
Personalmente me siento afortunado de haber podido trabajar con estas
tecnologías, ya que a nivel curricular me siento capaz de afrontar cualquier
puesto de trabajo relacionado con el conocimiento de estas. En particular, el
ámbito en el que más me siento preparado en este momento gracias a este
proyecto sería en la programación de aplicaciones basadas en realidad
aumentada.
Durante el proceso de realización del proyecto, han surgido diferentes
ideas para la ampliación de este proyecto en el futuro, es decir, existen diversas
líneas futuras, que más adelante explicaré detalladamente. Es más, ya existe la
propuesta de la continuación del mismo para que otros compañeros puedan
complementar sus conocimientos en esta interesante materia. Esta es una
buena noticia, debido a que se ha iniciado una línea de trabajo de la propuesta
64
de Trabajos de Fin de Grado incorporando los contenidos musicales basados
en realidad aumentada, ya que hasta ahora se restringían a contenidos
visuales.
Honestamente, ha sido complicado dado que era un campo inexplorado
hasta el momento pero me alegra saber que supone un punto de inicio de
nuevos desarrollos y aplicaciones como se verá en el capítulo “Líneas de
futuro” y en futuros proyectos de la escuela.
Llegado a este punto, es importante para mí subrayar la fantástica actitud
de mi tutor de cara a este proyecto, fomentando en todo momento mi
creatividad y apoyándome para respaldarme en los documentos e información
que, personalmente, creía apropiada, para realizar el proyecto con total libertad
y para incorporar y trabajar con mi estilo propio.
65
7. ANEXOS
7.1. ANEXO I: Manual de usuario para incorporar un instrumento
nuevo.
Si se está trabajando con alguna obra musical que necesite de algún
instrumento nuevo que no se haya implementado hasta el momento, será
necesario seguir los siguientes pasos para incorporarlo a la aplicación. Se
expone como ejemplo la incorporación del instrumento “Xilófono”:
1) En el inspector de Unity, se crea una nueva imagen del futuro
marcador con el nombre perteneciente al instrumento. En este caso
“XILÓFONO”. El marcador se crea clickando con el botón derecho del ratón en
la ARCamera del inspector, una vez desplegado el menú, se accede al menú
de “Vuforia Engine” y desde ahí clickar en “Image”. De esta manera ya se
obtiene la nueva del imagen del marcador, por último, será conveniente
renombrarlo.
2) Para crear el marcador, es decir, para que Unity reconozca la imagen
del instrumento en la aplicación y aplique alguna acción sobre ella, es necesario
obtener una imagen del instrumento en cuestión desde Google Imágenes, por
ejemplo (el diseño del marcador se podría editar al gusto) y acceder a
66
https://developer.vuforia.com/vui/develop/databases con una cuenta de usuario
propia. Después de acceder a esta página, se accede al apartado de “Target
Manager”:
3) Este paso sólamente se realizará la primera vez que se añada un
instrumento: Se deberá de crear una nueva base de datos en el apartado de la
derecha “Add Database”. Se nombra de la manera que se desee y se
selecciona “Device”.
67
4) Accediendo a la nueva base de datos, se accede al apartado de la
izquierda “Add Target”. Se seleccionará “Single Image”, se examinará para
añadir la imagen del instrumento descargada anteriormente, será preciso añadir
la anchura de la imagen a añadir, y se nombrará el marcador como se desee.
5) Una vez creada y subida la imagen a la nueva base de datos, Vuforia
nos determinará la calidad de la imagen para llevar a cabo la función de
marcador para realidad aumentada. Si la calidad es buena (es recomendable
mínimo 4 estrellas, a poder ser 5 estrellas) se clickará en el botón “Download
Database (All)” de la parte derecha, seleccionando “Unity Editor” para que lo
compile en el formato apropiado.
68
6) Una vez compilada y descargada la base de datos, sólamente
haciendo click sobre el archivo descargado, se abrirá en Unity una ventana
informándonos de los archivos que posee la base de datos que queremos
importar, click en “Import”:
7) Una vez importada la base de datos, se selecciona el marcador en
cuestión desde el Hierarchy de Unity (menú de la izquierda). Se abrirán sus
69
características correspondientes en la parte derecha de Unity, en el Inspector.
Una de sus características será “Image Target Behaviour (Script)” que contará
con 3 opciones desplegables: En “Type” se seleccionará “Predefined”, en
“Database” se seleccionará la base de datos que hemos importado y en “Image
Target” se seleccionará la imagen correspondiente al instrumento que se está
añadiendo. De modo que ya obtendremos en la escena de Unity el marcador
deseado.
8) El último paso es añadir los prefabs adecuados al marcador
(instrumento). De modo que desde el apartado de project de Unity (abajo e
izquierda), se seleccionará la carpeta “MusicalInstrumentsPack”, dentro de ella
“Prefabs” que ahí se encuentran los modelos 3D de los instrumentos. En este
caso se buscará el modelo 3D del xilófono y se arrastrará al marcador
correspondiente situado en el Hierarchy de Unity (arriba e izquierda). Se
repetirá este paso pero ahora se añadirán las notas musicales flotantes, esta
vez el nombre de la carpeta es “MusicNotes_PartyclesSystem” y los modelos
3D son los dos prefabs que contiene esta carpeta.
70
Y así quedará en la aplicación:
“Orquesta Virtual RA” incluyendo el xilófono como un nuevo instrumento
71
7.2. ANEXO II: Manual de usuario para incorporar una obra musical
nueva.
Si se desea incorporar una nueva obra musical a la aplicación, los
pasos a seguir son los siguientes. Como ejemplo se incluirá la canción de
AC/DC “Back in Black”:
1) El primer paso trata de separar las fuentes de la partitura principal,
se podría llevar a cabo con distintos programas de edición de archivos MIDI, en
mi caso he utilizado “MIDIEditor”, o simplemente hallándolas separadas. En la
imagen se muestra el bajo filtrado de Back in Black:
2) Una vez que dispongamos de las partituras de todos los
instrumentos que componen la obra musical en cuestión, pasamos a la edición
de la aplicación en Unity. En primer lugar se deberá de crear una escena nueva
en el proyecto. Para ello en la carpeta “Scenes”, se clickará con el botón
derecho y en “Create” clickar en “Scene”.
72
3) Será necesaria una cámara de realidad aumentada. Para ello, clickar
con el botón derecho en el Hierarchy de la escena, “Create” → “Vuforia Engine”
→ “AR Camera”
4) En la carpeta “Instrumentos Prefabricados” del proyecto se
encuentran los prefabs de los instrumentos que se han utilizado hasta el
momento. Si la obra musical se compone de instrumentos que se encuentran
en la carpeta, sólamente se necesitará arrastrar al Hierarchy los instrumentos
73
deseados. Si se necesita algún otro instrumento, se podrá añadir siguiendo los
pasos del “Anexo I: Manual de usuario para incorporar un instrumento nuevo”.
En este caso los instrumentos a añadir son guitarra eléctrica, bajo, batería y
vocal:
5) Incluir el prefab de MIDI a cada uno de los instrumentos. Para ello
abrir el apartado “MPTK” del menú después de clickar con el botón derecho en
el instrumento → “MidiFilePlayer”:
74
6) En la parte superior izquierda, abrir el menú MPTK → Midi File Setup
→ Add Midi File y seleccionarán las partituras de los instrumentos:
7) Seleccionando el “MidiFilePlayer” de cualquier instrumento, se abrirá
el menú MIDI en la parte derecha. Seleccionar “Select MIDI” y seleccionar la
partitura adecuada. Repetir este paso para todos los instrumentos:
75
8) Para finalizar se creará para cada instrumento una variable (Cube,
Sphere, Cylinder, ect), clickando con el botón derecho en él y seleccionando
“3D Object” → “Cube”. Arrastrar desde la carpeta “Scripts” los scripts
“ActiveCube” y “CubeHierarchy” a dicha variable, arrastrar las animaciones
“subir_volumen” y “bajar_volumen” y también arrastrar el animator
“Volume_Animation”. Repetir este paso con cada uno de los instrumentos.
76
8. LÍNEAS FUTURAS
- Orquesta Virtual RA con separación de fuentes real: Se trataría de la
misma aplicación, añadiendo separación de fuentes al principio de la misma,
así la app será capaz de reconocer una canción deseada por el usuario,
analizarla y distinguir los instrumentos que ésta posea, para después separarlos
y poder trabajar con ellos. Así se evitaría la separación de fuentes manual que
se ha aplicado en este proyecto.
- Orquesta Virtual RA con aumento y disminución de volumen según la
posición del marcador: Esta idea será propuesta para la próxima convocatoria,
y tratará sobre continuar sobre esta app, modificándose para conseguir que el
volumen de los instrumentos de la obra musical varíe dependiendo de la
posición de los marcadores; por ejemplo, si se encuentra el violín más elevado
que el piano, el volumen del violín será mayor que el del piano.
- Orquesta Virtual RA adaptada a música del momento: Tratará de
continuar con el funcionamiento de esta aplicación, con la diferencia de que
existirá una base de datos enorme donde existirán toda la música actual y
antigua, es decir, que el cliente utilice la app con sus canciones favoritas y así
despertar mayor curiosidad en el cliente sobre el mundo musical.
- Orquesta Virtual RA adaptada a la producción: De la mano de la
anterior propuesta, nace la siguiente. Generar esta app con grandes bases de
datos donde se incluyan sonidos MIDI libres dedicados a la producción musical,
para que el usuario pueda añadir y retirar sonidos de la escena para conseguir
producciones musicales nuevas, se tratará de un jugabilidad muy cómoda y
llamativa.
Como se ha mencionado anteriormente, ya existen algunos Trabajos de
Fin de Grado propuestos como continuación de la aportación de este en cuanto
a gestión y reproducción de contenidos musicales MIDI, donde se ampliarán
sus funcionalidades. En concreto se trata de aplicaciones para enseñanza
musical o recreación de orquesta 3D considerando la ubicación de los
marcadores.
77
9. REFERENCIAS BIBLIOGRÁFICAS
[1] Francisco José Rodríguez Serrano. Separación de fuentes sonoras en
señales musicales.
http://ruja.ujaen.es/bitstream/10953/646/1/9788484398783.pdf
[2] Realidad Aumentada: el mundo real con otros ojos.
https://www.iberdrola.com/innovacion/que-es-realidad-aumentada
[3] WANNABY. AR Commerce Company. https://wanna.by/
[4] Realidad aumentada para iOS.
https://www.apple.com/es/ios/augmented-reality/
[5] Realidad aumentada: 10 herramientas para crear apps móviles
https://madridnyc.es/realidad-aumentada-en-apps/
[6] Realidad Aumentada - Wikipedia, enciclopedia libre
https://es.wikipedia.org/wiki/Realidad_aumentada#Software_para_la_realidad_a
umentada
[7] Unity www.unity.com
[8] IKEA www.newsroom.inter.ikea.com
[9] GE www.ge.com
[10] Mobile AR www.mobile-ar.reality.news
[11] Autoviva www.autoviva.com
[12] Augmented www.augmented.com
[13] AVRSpot www.avrspot.com
78
[14] ByeByeBeethoven www.byebyebeethoven.com
[15] Cavsi www.cavsi.com
[16] Domuno www.domuno.es
[17] So much potential... Where's the MIDI Support? - Unity Forum -
https://forum.unity.com/threads/so-much-potential-wheres-the-midi-
support.411015/
[18] Floating Music Note Particle System - Asset Store -
https://assetstore.unity.com/packages/vfx/particles/floating-music-note-particle-
system-105933
[19] Musical Instruments Pack - Asset Store -
https://assetstore.unity.com/packages/3d/props/musical-instruments-pack-
20066
79
10. VÍDEOS INFORMATIVOS
[1] Crear proyecto Vuforia https://www.youtube.com/watch?v=i1wt4UoIXdY
[2] Tutorial para empezar con Unity 2018 desde cero -
https://www.youtube.com/watch?v=GmRlon_KmX8
[3] Tutorial Básico | Como programar en unity3d explicado para bebés -
https://www.youtube.com/watch?v=D74ehvM0TuU
[4] Tutorial Introducción a la Programación de Scripts con Unity -
https://www.youtube.com/watch?v=wB7uoIveeiw
[5] Tutorial de Animación con Inverse Kinematics en Unity -
https://www.youtube.com/watch?v=xDrLLPTDStQ
[6] Curso de Unity -
https://www.youtube.com/playlist?list=PLpOqH6AE0tNiPHU2BCm_ei3C2BmjN9
IGt
[7] TRINIT - Español importar imagen marcador y demás -
https://www.youtube.com/watch?v=a117dxLgbks
[8] FASE 1 - 08 Activar y desactivar audio o video al detectar marcador -
https://www.youtube.com/watch?v=C3BEKoU-lqg
[9] F209 Audio en Realidad Aumentada -
https://www.youtube.com/watch?v=r3P5qMBug08
[10] Guitarra: Play and Stop Music -
https://www.youtube.com/watch?v=yo9MRucWj80
[11] Audio, RA con Audio y Vídeo con Audio en Unity y vuforia -
https://www.youtube.com/watch?v=2mGz_P7m57c
80
[12] F208 UI y Panel Description -
https://www.youtube.com/watch?v=2sBUKOwDZ4s
[13] F208 UI y Botones para navegar entre escenas -
https://www.youtube.com/watch?v=b2v-THageW4
[14] AR band flyer example w/ basic sound spectrum analyzer -
https://www.youtube.com/watch?v=-0izdVqUfEE
[15] Unity MIDI Player - https://www.youtube.com/watch?v=HezNWMclZIs
[16] MIDI Bridge Unity - https://www.youtube.com/watch?v=RSxRc19br94
[17] Unity - Adding Music to Your Game -
https://unity3d.com/learn/tutorials/topics/audio/adding-music-your-game
[18] Crear proyecto Vuforia -
https://www.youtube.com/watch?v=i1wt4UoIXdY
[19] Canal de Realidad Aumentada -
https://www.youtube.com/channel/UCtnHnd3rvgeYxxG_2GeKxcg
[20] F210 Joystick para Realidad Aumentada -
https://www.youtube.com/watch?v=0fOHRG3IPU4
[21] F208 - Introducción a Realidad Aumentada UNITY -
https://www.youtube.com/watch?v=r-IMPnuS3So
[22] Creating AR Content with Vuforia Live 2018/1/24 -
https://www.youtube.com/watch?v=9XikHnTiukk&list=PLX2vGYjWbI0Thl0pOCb
KWrbbiw7RWiRG7