EN: |[[english]]0|[[español]]1|[[català]]2| EN: [[Home]] EN: [[Faq]] EN: [[Doc]] EN: [[Wiki]] EN: [[Devel]] EN: [[Planet]] EN: [[TestFarm]] EN: [[About]] EN: [[Download]] EN: [[Screenshots]] EN: [[Mailinglist]] EN: [[Bugreporting]] EN: [[CLAM FAQ]] EN: [[Will CLAM suit my needs?]] ES: [[¿Es CLAM lo que estoy buscando?]] EN: [[What should be my background in order to use CLAM?]] ES: [[¿Cuáles deberían ser mis conocimientos para usar CLAM?]] EN: [[What can CLAM do?]] ES: [[¿Qué puede hacer CLAM?]] EN: [[Why does CLAM depend on so many 3rd party libraries?]] ES: [[¿Por qué depende CLAM de tantas librerías externas?]] EN: [[Is CLAM a "library" or a framework?]] ES: [[¿CLAM es una librería o un entorno?]] EN: [[Are there any similar frameworks?]] ES: [[¿Existe algún otro entorno de trabajo similar?]] EN: [[Who is behind CLAM?]] ES: [[¿Quién está detrás de CLAM?]] EN: [[How should I approach CLAM?]] ES: [[¿Cómo debería acercarme a CLAM?]] EN: [[What is the future of CLAM?]] ES: [[¿Cuál es el futuro de CLAM?]] EN: [[What if I want to use CLAM in a Proprietary system?]] ES: [[¿Qué pasa si uso CLAM en un sistema privativo?]] EN: This is of course the million dollar question. It is difficult to be sure whether [[CLAM]] can suit your needs until you really try it out. Nevertheless, here are a few hints that may help you decide: ES: Esta es sin duda la pregunta del millón de dólares. Es difícil de estar seguro de si [[CLAM]] puede satisfacer tus necesidades hasta que realmente lo pruebes. Sin embargo, aquí hay algunas pistas que pueden ayudarte a decidir: EN: [[CLAM]] can be used for audio analysis and synthesis It is specially well-suited for spectral analysis/synthesis ES: [[CLAM]] puede usarse para el análisis y la síntesis de audio. Está hecho sobretodo para el análisis/síntesis espectral. EN: It includes features that make it suitable for Music Information Retrieval ES: Tiene características que lo hacen indicado para la recuperación de información musical. EN: It can be used to build real-time, efficient applications ES: Se puede usar para construir aplicaciones eficientes que funcionen a tiempo real. EN: In any case you should keep on reading the rest of this FAQ as well as any other [[CLAM]] documentation that can help you out in the decision. ES: En cualquier caso, deberías continuar leyendo el resto de las FAQ, así como cualquier otra documentación de [[CLAM]] que te pueda ayudar en la decisión. EN: [[Back]] ES: [[Volver]] EN: [[CLAM]] can be used at many different levels and for different purposes so you background may vary depending on your particular requirements. In this sense we can distinguish at least the following three levels of usage: ES: [[CLAM]] se puede usar a diferentes niveles y para diferentes propósitos así que tus conocimientos pueden variar dependiendo de sus necesidades. En este sentido podemos distinguir al menos los tres niveles de utilización siguientes: EN: You just want to use a pre-compiled example such as SMSTools: In this case you are only required to have some previous signal processing knowledge in order to understand what is going on ES: Sólo quieres usar una aplicación precompilada como SMSTOOLS o NetworkEditor: En este caso sólo requiere que tengas algún conocimiento previo de procesado de señal para entender que es lo que pasa. EN: You want to use one of the provided examples: Then you will need to install [[CLAM]]0 and compile the example you are interested on. Installing is quite straightforward (please refer to the download page). In any case, once [[CLAM]]1 is deployed in your system all you will have to do is compile the required example. ES: Si quieres usar uno de los ejemplos proporcionados: Entonces tendrás que instalar [[CLAM]]0 y compilar el ejemplo en el que estés interesado. Instalarlo es bastante sencillo (mira las paginas de descarga de tu distribución). En cualquier caso, una vez tengas [[CLAM]]1 desplegado en el sistema, todo lo que tendrás que hacer es compilar el ejemplo. EN: You want to develop your own application: Appart from the previous requirements you will need some knowledge in C++ programming. It is true that some people learn [[CLAM]] and C++ at the same time but this might not be a gentle way of learning a language such as C++. ES: Quieres desarrollar tu propia aplicación: Aparte de los requerimientos anteriores necesitarás algún conocimiento en programación con C ++. Es cierto que algunas personas aprenden [[CLAM]] y C ++ al mismo tiempo pero no es la forma más adecuada de aprender un lenguaje como C ++. EN: You want to become a [[CLAM]] developer: All you need after the previous step is to send us in your code! ES: Quieres desarrollar [[CLAM]]: Todo lo que necesitas después del paso anterior es enviarnos tu código! EN: Although [[CLAM]]0 can be used for many different purposes a good way to learn what it can do is to review the functionalities illustrated in the examples available in the repository. According to these examples you may use [[CLAM]]1 to: ES: Aunque [[CLAM]]0 pueda usarse para muchos y diferentes objetivos, una buena manera de aprender lo puede hacer es repasar las funcionalidades ilustradas en los ejemplos disponibles. Según estos ejemplos se puede usar [[CLAM]]1 para: EN: Read and write multichannel audio files in virtually any format (wav, aiff, mp3, ogg...) ES: Leer y escribir archivos de varios canales de audio en prácticamente cualquier formato (wav, aiff, mp3, ogg...). EN: Implement filters in the frequency domain ES: Colocar filtros en el dominio de la frecuencia EN: Implement applications based on the FFT ES: Realizar aplicaciones basadas en FFT. EN: Compute statistical descriptors on the sound and its spectral features ES: Calcular descriptores estadísticos sobre el sonido y sus rasgos espectrales EN: Passivate/activate objects into XML ES: Pasivar/Activar objetos en XML EN: Use graphical plots to debug signal data objects ES: Usar utensilios gráficos para depurar objetos de datos EN: Implement applications based on the LPC model ES: Realizar aplicaciones basadas en el modelo LPC. EN: Play audio in any platform Use frame-based signal constructs and dump them into XML or SDIF ES: Utilizar descomposiciones de una señal basadas en frames y volcar los datos a XML o SDIF. EN: Connect simple Processing objects dynamically to form Networks ES: Conectar dinámicamente objetos de procesado simple para formar Redes. EN: Use the event-based Control mechanism to control run-time behaviour of Processing objects ES: Utilizar el mecanismo de control basado en eventos para controlar el comportamiento de los objetos de procesado EN: Create statical compositions of Processing objects ES: Crear composiciones estáticas de objetos de procesamiento EN: Convert MIDI files into XML ES: Convertir archivos MIDI a XML. EN: Implement a basic MIDI-controlled synthesizer ES: Realizar un sintetizador básico controlado por MIDI. EN: Input and output MIDI messages into a system ES: Entrada y salida de mensajes MIDI al sistema. EN: Implement spectral analysis based applications ES: Implementar aplicaciones basadas en análisis espectral. EN: Implement a complex synthesizer based on the SMS model ES: Implementar aplicaciones basadas en análisis espectral. EN: Implement analysis/synthesis applications including transformations and graphical user interface ES: Realizar aplicaciones de análisis/síntesis incluyendo transformaciones e interfaz gráfica de usuario EN: Create real-time spectral-domain analysis/synthesis applications, controlled from a GUI ES: Crear aplicaciones de análisis/síntesis a tiempo real en el dominio espectral, controladas por un GUI EN: Define Processing Networks graphically and dynamically so as to build rapid prototypes ES: Definir Redes de Procesamiento gráfica y dinámicamente para construir prototipos rápidos EN: ... EN: [[CLAM]]0 aims at offering all necessary services for building an audio and music application. This implies many different tools and possible requirements. Some of those tools already exist and, as it makes no sense implementing them from scratch, all we do is take them and adapt them to the [[CLAM]]1 interface or "way of doing things". Put in other words, [[CLAM]]2 would be unthinkable without the great work of all those developers. ES: [[CLAM]]0 aspira a ofrecer todos los servicios necesarios para desarrollar una aplicación de audio y música. Esto implica muchas herramientas diferentes para dar respuesta a todos los posibles requisitos. Algunos de estas herramientas ya existen y, como no tiene sentido que los implementemos partiendo de cero,lo que hacemos es adaptarlos a la interfaz o " al modo de hacer las cosas " de [[CLAM]]1. Dicho de otra manera, [[CLAM]]2 sería inconcebible sin el gran trabajo de todos aquellos que han implementado esas librerías. EN: [[Is CLAM a "library" or a "framework"?]] ES: [[¿CLAM es una biblioteca o un entorno de trabajo (framework)?]] EN: [[CLAM]]0 is a software framework as defined by Ralph E. Johnson. [[CLAM]]1 does not only offer a set of functionalities but also provides a conceptual metamodel or way of doing things. Read X. Amatriain's [[phd]]2 if you are interested on this theoretical discussion. ES: [[CLAM]]0 es un entorno de trabajo (framework) como lo ha definido Ralph E. Johnson. [[CLAM]]1 no sólo ofrece un conjunto de funcionalidades, sino que también proporciona un metamodelo conceptual o modo de hacer las cosas. Si estás interesado en esta discusion puedes leer la [[tesis]]2 de X. Amatriain. EN: There are a few frameworks that overlap with [[CLAM]]'s goals. If you are only interested in audio analysis and feature extraction you should check: ES: Hay varios entornos con objetivos similares a [[CLAM]]. Si sólo estás interesado en el análisis de audio y la extracción de atributos deberías conocer: EN: [[Marsyas]] EN: [[Maaate]] EN: If you are interested only in audio synthesis you should check: ES: Si sólo estás interesado en síntesis de audio deberías conocer: EN: [[STK]] EN: [[Open Sound World]] EN: [[Aura]] EN: And if you are looking for a framework with both analysis and synthesis capabilities check: ES: Y si buscas un entorno con ambas capacidades de análisis y síntesis mira: EN: [[CSL]] EN: [[ SndObj]] EN: In any case, [[CLAM]]0 presents both conceptual and practical differences with all of them. If you are interested in a thorough presentation of [[CLAM]]1 alternatives and how they compare to our framework please refer to X. Amatriain's [[phd]]2. ES: En cualquier caso, [[CLAM]]0 presenta tanto diferencias conceptuales como prácticas con todos ellos. Si estás interesado en una presentación detallada de alternativas a [[CLAM]]1, por favor, consulta la [[tesis]]2 de X. Amatriain. EN: [[CLAM]]0 is currently supported and developed by some members of the Music Technology Group at the Universitat Pompeu Fabra and CREATE at the University of California, Santa Bargara. Our group is distributed between sunny Barcelona and also sunny Santa Barbara. The team is lead by Xavier Amatriain from California and Pau Arumi from Barcelona. [[CLAM]]1 has always had a stable core of four to 6 developers though none of us can really work even halftime on it ES: [[CLAM]]0 actualmente está apoyada y desarrollada por algunos miembros del Grupo de Tecnología Musical en la Universitat Pompeu Fabra y de CREATE en la Universidad de Santa Barbara, California. Nuestro grupo se encuentra distribuido entre la soleada Barcelona y la también soleada Santa Barbara. El equipo está liderado por Xavier Amatriain desde California y Pau Arumi desde Barcelona. [[CLAM]]1 siempre ha tenido un núcleo estable de cuatro a 6 personas, aunque ninguno de nosotros pueda realmente trabajar ni a media jornada en ello EN: [[CLAM]] has had support from a number of public European projects such as AGNULA or SIMAC and is used in many of our internal projects. At this moment it is being developed under a grant from the Catalan Government. ES: [[CLAM]] ha tenido el apoyo de proyectos públicos europeos como AGNULA o SIMAC y se usa en muchos de nuestros proyectos internos. En estos momentos recibe apoyo de la Generalitat de Catalunya. EN: There are different ways to approach [[CLAM]]0 that depend on your previous background. Our usual way to introduce [[CLAM]]1 to newbies is to point them to the "Introduction" and then to the [[CLAM]]2 "tutorial". This tutorial, though, is quite long and introduces other concepts appart from [[CLAM]]3 (such as the SMS model). In your case it might be easier to start off by reading some simpler examples. You will have to do it anyhow at some point. ES: Hay diferentes modos de acercarse a [[CLAM]]0, dependiendo de tus conocimiento previos. Nuestro modo habitual de introducir [[CLAM]]1 a neófitos es mostrándoles la “Introducción" y luego el "tutorial" de [[CLAM]]2. Sin embargo, este tutorial es bastante largo e introduce otros conceptos a parte de [[CLAM]]3 (como el modelo espectral de sinusoides y ruido). En tu caso podría ser más fácil comenzar leyendo algunos ejemplos más simples. Tendrás que hacerlo de todos modos en algún momento. EN: [[CLAM]]0 should soon be more stable once it reaches its 1.0 release. Read the [[CLAM]]1 [[Roadmap]]2 to learn what are the previsions. [[CLAM]]3 will be used internally so its continuity is more or less guaranteed. Nevertheless we hope that it can soon become more "collaborative" and we can start accepting contributions from external users. ES: [[CLAM]]0 debería ser pronto más estable una vez alcance su versión 1.0 . Lee el [[Mapa de Ruta]]2 de [[CLAM]]1 para aprender cuales son las previsiones. [[CLAM]]3 será usada internamente para garantizar más o menos su continuidad. Sin embargo esperamos que pronto pueda hacerse más "colaborativo" y podamos comenzar a aceptar contribuciones de usuarios externos. EN: [[What if I want to use CLAM in a non-Free project?]] ES: [[¿Qué pasa si uso CLAM en un sistema privativo?]] EN: [[CLAM]]0 is GPL and therefore Free as defined by the Free Software Foundation. This means that you can use it with no restrictions as long as the result remains Free. If you want to use it from within a proprietary application then you should definitely talk to us. We use a double licensing scheme (ala FFTW) so [[CLAM]]1 can be (and as a matter of fact has already been) licensed for non-free usages. EN: [[Back]] _uacct = "UA-1058020-1"; urchinTracker();