An Object-oriented metamodel for digital signal processing with a focus on audio and music

Author

Amatriain, Xavier

Director

Serra, Xavier

Date of defense

2005-01-27

Pages

399 p.



Department/Institute

Universitat Pompeu Fabra. Departament de Tecnologies de la Informació i les Comunicacions

Doctorate programs

Programa de doctorat en Tecnologies de la Informació i les Comunicacions

Abstract

Classical models for information transmission such as Shannon and Weaver's still tend to be looked at as the only possible scenarios where signal processing applications can be formally modeled. Meanwhile, other disciplines like Computer Science have developed different paradigms that offer the possibility of looking at the same problem from a different perspective. One of the most favored approaches for software analysis and design is the Object Oriented paradigm, which proposes to model a system in terms of objects and relations between objects. An object is an instance of a real world or abstract concept and it is made up of an identity, a state, and a behavior. An object oriented system is thus described in terms of its internal objects, messages that are passed in between them and the way these objects respond to incoming messages by executing a particular method. Although object oriented technologies have been applied to signal processing systems, no previous comprehensive approach has been made to translate all the advantages and consequences, both practical and formal, of this paradigm to the signal processing domain. This dissertation defends the thesis that a generic signal processing system can be thoroughly and effectively described using the object oriented paradigm. For doing so, the Digital Signal Processing Object Oriented Metamodel offers a classification of signal processing objects in terms of their role in a DSP system. Objects are classified into two main categories: objects that process and objects that act as data containers. This 00 metamodel turns out to be closely related to Dataflow Process Networks, a graphical model of computation that has already proven useful for modeling signal processing systems. In our study we highlight the similarities of both models to conclude that object-orientation is in fact a superset of process-oriented models and therefore the object-oriented paradigm can be proposed as a general approach for system modeling. Furthermore, it turns out that nowadays the natural target for many signal processing applications is the computer and its software environment and the objectoriented paradigm becomes a natural conceptual framework where the different development phases fit. CLAM (C++ Library for Audio and Music) is a framework for developing music and audio applications that has been designed bearing this conceptual model in mind. CLAM is both the origin and the proof of concept of the Metamodel. On one hand its design process and rationale has led to the definition of the metamodel. On the other hand, it demonstrates that the metamodel proposed is more than an abstract wish-list and can be used to model working and efficient applications in the music and audio domain. The basic Object Oriented metamodel for signal processing systems can be extended to include the idea of Content Based Processing. 00 concepts like Inheritance Hierarchies, Polymorphism or Late Binding can be used to model run-time classification of media objects and to deal with the semantic information present in the signal rather than just treating the signal itself. This leads us to the definition of a new metamodel of information transmission that, unlike the traditional ones, does care about meaning. Finally, the 00 paradigm can also be used to model higher-level symbolic domains related to signal processing. For example, music (as a whole) can be effectively modeled using the 00 paradigm. An 00 model for music is proposed as an instance of the basic signal processing metamodel and the MetriX language is presented as its proof of concept.


Els models clàssics de transmissió de Ia informació com el de Shannon i Weaver encara se solen considerar com els únics escenaris possibles en els que aplicacions de processament del senyal es poden modelar formalment. Mentrestant, altres disciplines com Ia Informàtica han desenvolupat paradigmes diferents que ofereixen Ia possibilitat de mirar el mateix problema des d'una perspectiva different. Una de les aproximacions més utilitzades per anàlisi i disseny de programari és el paradigma Orientat a I'Objecte, el qual proposa modelar un sistema en objectes i relacions entre objectes. Un objecte és una instància de un concepte abstracte o del món real que està composat d'una identitat, un estat i un comportament. D'aquesta manera un sistema orientat a l'objecte es descriu en funció dels seus objectes interns, els missatges que es passen entre ells i Ia forma que aquests objectes responen als missatges entrants executant un mètode concret. Tot i que les tecnologies orientades a l'objecte s'han aplicat a sistemes de processament del senyal, no hi ha cap intent previ de traslladar tots els avantages i conseqüències, tant pràctiques com formals, d'aquest paradigma al domini del processament del senyal. Aquest treball defensa Ia tesi de que un sistema de processament del senyal genèric es pot descriure completament i de forma efectiva utilitzant el paradigma orientat a I'objecte. Per fer-ho, el Metamodel de Processament Digital del Senyal Orientat a l'Objecte ofereix una classificació d'objectes segons el seu rol en un sistema. Els objectes es classifiquen en dues categories principals: objectes que processen i objectes que actuen com a contenidors de dades. Aquest metamodel 00 resulta estar molt proper a les Xarxes de Processos amb Fluxe de Dades, un model gràfic de computació que ja ha mostrat Ia seva utilitat per a modelar sistemes de processament del senyal. En el nostre estudi destaquem les similituds dels dos models per concloure que Ia orientació a l'objecte és de fet un supra conjunt dels models orientats al procés i que, par tant, el paradigma orientat a l'objecte pot ser proposat com una aproximació genèrica al modelatge de sistemes. A més a més, resulta que avui dia l'entorn destí de moltes aplicacions de processament del senyal és l'ordinador i el seu programari associat i el paradigma orientat a l'objecte esdevé un entorn conceptual natural on les diverses fases de desenvolupament s'adapten. CLAM (C++ Library for Audio and Music) és un entorn per a desenvolupar aplicacions d'àudio i música que s'ha dissenyat tenint en ment aquest model conceptual. CLAM és tant I'origen com Ia prova de concepte del Metamodel. Per una banda el seu procés de disseny ha conduit a Ia definició del metamodel. Per altra banda, demostra que el metamodel proposat és més que una Ilista de desitjos abstracta i que pot ser utilitzat per a modelar aplicacions pràctiques i eficients en el domini concret de l'àudio i de Ia música. EI metamodel bàsic de processament de senyal Orientat a l'Objecte es pot extendre per a incloure Ia idea de Processament Basat en el Contingut. Conceptes 00 com ara Jerarquies d'Herència, Polimorfisme o Enllaç Tardà es poden utilitzar per a modelar classificació en temps d'execució d'objectes media o per gestionar Ia informació semàntica present en el senyal, en comptes de només tractar el senyal en ell mateix. Això ens porta a Ia definició d'un nou metamodel de transmissió de Ia informació que, a diferència dels tradicionals, es preocupa del significat. Finalment, el paradigma 00 també es pot utilitzar per a modelar dominis simbòlics de més alt nivell relacionats amb el processament del senyal. Per exemple Ia música (en tot el seu abast) es pot modelar de forma efectiva utilitzant el paradigma 00. Es proposa un model 00 de Ia música com una instància del metamodel bàsic de processament del senyal, i el Ilenguatge MetriX es presenta com Ia seva prova de concepte.


Los modelos clásicos de transmisión de información com el de Shannon y Weaver todavía se suelen considerar como los únicos escenarios posibles en los que aplicaciones de procesado de señal se pueden modelar formalmente. Mientrastanto, otras disciplinas como la Informática han desarrollado paradigmas diferentes que ofrecen la posibilidad de mirar el mismo problema des de una perspectiva diferente. Una de las aproximaciones más utilizadas para el análisis y diseño de software es el paradigma Orientado a Objetos, el cual propone modelar un sistema en objetos y relaciones entre objectos. Un objeto es una instancia de un concepto abstracto o del mundo real compuesto de una identidad, un estado y un comportamiento. De este modo un sistema orientado a objetos se describe en función de sus objetos internos, los mensajes que se pasan entre ellos y la forma que estos objetos responden a los mensajes entrantes ejecutando un método concreto. Aunque las tecnologías orientadas a objectos se han aplicado a sistemas de procesado de señal, no hay ningún intento previo de trasladar todas las ventajas y consecuencias, tanto prácticas como formales, de este paradigma al dominio del procesado de señal. Este trabajo defiende la tesis de que un sistema de procesado de señal genérico se puede describir completamente y de forma efectiva utilizando el paradigma orientado a objetos. Para hacerlo, el Metamodelo de Procesado de Señal Orientado a Objetos ofrece una clasificación de objetos según su rol en un sistema. Los objetos se clasifican en dos categorías principales: objetos que procesan y objetos que actúan como contenedores de datos. Este metamodelo OO resulta estar muy cercano a las Redes De Procesos con Flujos de datos, un modelo gráfico de computación que ya ha mostrado su utilidad para modelar sistema de procesado de señal. En nuestro estudio destacamos las similitudes de los dos modelos para concluir que la orientación a objetos es de hecho un supra conjunto de los modelos orientados al proceso y que, por lo tanto, el paradigma orientado a objetos se puede proponer como una aproximación genérica al modelado de sistemas. Además, resulta que hoy en día el entorno destino de muchas aplicaciones de procesado de señal es el ordenador y su software asociado y el paradigma orientado a objetos resulta un entorno conceptual natural donde las diversas fases de desarrollo se adaptan. CLAM (C++ Library for Audio and Music) es un entorno para desarrollar aplicaciones de audio y música que se ha diseñado teniendo en mente este model conceptual. CLAM es tanto el origen como la prueba de concepto del Metamodelo. Por un lado su proceso de diseño ha conducido a la definición del metamodelo. Por otro lado, demuestra que el metamodelo propuesto es más que una lista de deseos abstracta y que puede ser utilizado para modelar aplicaciones prácticas y eficientes en el dominio concreto del audio y la música. El metamodelo básico de procesado de señal Orientado a Objetos se puede extender para incluir la idea de Procesado Basado en el Contenido. Conceptos 00 corn las Jerarquías de Herencia, el Polimorfismo o el Enlace Tardío se pueden utilizar para modelar la clasificación en tiempo de ejecución de objetos media o para gestionar la información semántica presente en la señal, en vez de tan sólo tratar la señal en ella misma. Esto nos lleva a la definición de un nuevo metamodelo de transmisión de la información que, a diferencia de los tradicionales, sí que se preocupa del significado. Finalmente, el paradigma 00 también se puede utilizar para modelar nuevos dominios simbbólicos de más alto nivel relacionados con el procesado de señal. Por ejempló, la música (en todo su alcance) se puede modelar de forma efectiva utilizando el paradigma 00. Se propone un modelo 00 de la música como instancia del metamodelo básico de procesado de señal, i el lenguaje MetriX se presenta como su prueba de concepto.

Keywords

Matemáticas; Lenguajes de programación; Diseño y componentes de sistemas de información

Subjects

62 - Engineering. Technology in general

Documents

txa.pdf

4.214Mb

 

Rights

ADVERTIMENT. L'accés als continguts d'aquesta tesi doctoral i la seva utilització ha de respectar els drets de la persona autora. Pot ser utilitzada per a consulta o estudi personal, així com en activitats o materials d'investigació i docència en els termes establerts a l'art. 32 del Text Refós de la Llei de Propietat Intel·lectual (RDL 1/1996). Per altres utilitzacions es requereix l'autorització prèvia i expressa de la persona autora. En qualsevol cas, en la utilització dels seus continguts caldrà indicar de forma clara el nom i cognoms de la persona autora i el títol de la tesi doctoral. No s'autoritza la seva reproducció o altres formes d'explotació efectuades amb finalitats de lucre ni la seva comunicació pública des d'un lloc aliè al servei TDX. Tampoc s'autoritza la presentació del seu contingut en una finestra o marc aliè a TDX (framing). Aquesta reserva de drets afecta tant als continguts de la tesi com als seus resums i índexs.

This item appears in the following Collection(s)