2009-12-31 8 views
8

Estoy buscando crear una pequeña aplicación que le permita al usuario visualizar y controlar (principalmente) la música clásica, para reconocer mejor estructuras como el canon. ¿Cuál sería una estructura de datos y archivos apropiada para almacenar la música?Representación semántica (o simbólica) de la música

Sé muy poco sobre música, por lo que esta será una experiencia de aprendizaje en dos niveles para mí. Me gustaría comenzar con una visualización básica, como resaltar notas en una partitura, ya que la música se reproduce a velocidad controlada. Me gustaría hacer esto en WPF con C#, leyendo música de archivos estructurados.

+0

Wow eso es abierto. ¿Hay alguna manera de que puedas reducir eso? ¿Sugerencias del lenguaje de programación? Preferencias para otras tecnologías como la base de datos relacional? –

+0

@ S.Lot, he agregado lo que puedo. Intenté deliberadamente evitar los detalles de la plataforma en mi pregunta, ya que está bastante lejos de cualquier capa de implementación. – ProfK

+0

He estado trabajando en una aplicación para analizar puntajes de música en documentos XPS (como guardados/"impresos" de otras aplicaciones como Acrobat Reader, ya que un documento XPS es esencialmente XAML) y mostrarlos y reproducirlos en WPF. WPF es una buena plataforma, pero me gustaría haber visto la respuesta sobre MusicXML antes, en lugar de analizar las puntuaciones yo mismo. Demasiado tarde ahora para mí ... – AndrewS

Respuesta

6

Lo que necesita es un formato de música simbólico contra un formato de audio. Como se trata de música clásica, use el MusicXML format. Es compatible con más de 160 aplicaciones, incluidas todas las principales aplicaciones de notación musical como Finale y Sibelius, por lo que tiene una amplia gama de herramientas para trabajar.

Sin embargo, tenga en cuenta que hacer un tipo de visualización y resaltar de lo que está hablando es un trabajo complejo. MusicXML exportado desde Finale simplifica la programación al incluir gran cantidad de formatos, por lo que no tiene que hacer las partes similares a AI del diseño de notación musical, pero sigue siendo complicado. Es posible que desee echar un vistazo a las herramientas existentes y ver qué hace el trabajo. ¿Quizás pueda incorporar un reproductor/reproductor MusicXML gratuito como el Zong! Viewer, o un editor de notación como MuseScore? Consulte el MusicXML application list para más opciones. Como MusicXML está definido en XML, también puede usar las mismas herramientas XML que usa en cualquier otro proyecto para leer y escribir los archivos MusicXML.

GUIDO es otro formato simbólico, pero solo fue compatible con un par de aplicaciones de nicho y su desarrollo fue abandonado hace muchos años. MEI es otro formato simbólico que prácticamente no admite aplicaciones. Muchos formatos simbólicos se desarrollaron hace unos 10 años, pero MusicXML es el único comúnmente utilizado en la actualidad. MIDI es un formato de intercambio más antiguo que es universal para la reproducción de instrumentos electrónicos, pero carece de la semántica necesaria para representar con precisión la notación.

¡Buena suerte!

+0

MEI (Music Encoding Initiative) es otro formato, especialmente para uso académico, con el que he estado trabajando recientemente. –

1

Puede ser un poco críptico para trabajar, pero MIDI podría ser un buen formato para esto.

2

Probablemente terminará queriendo usar un sistema existente como GUIDO. La música es algo complicado de modelar y GUIDO ya hizo el trabajo por usted. Le recomendaría encarecidamente check it out.

Cuestiones relacionadas