viernes, 30 de abril de 2010

No ha podido ser


Ya se han dado a conocer los finalistas de la IV del Concurso Universitario de Software Libre y por desgracia DrumSim no esta entre ellos... pero bueno como se dice en estos casos los importante es participar y otra vez será, aunque en este caso si que es verdad ya que por mi parte he aprendido un monton y lo que me queda hasta terminar al 100% la primera versión completa que aunque el concurso ya casi haya acabado el trabajo en el proyecto continuará!

Felicidades a tod@s los finalistas y que gane el mejor.

domingo, 18 de abril de 2010

Manual de usuario

Para terminar de lanzar esta primera versión (aun a falta de las versiones para linux) he preparado un pequeño manual de usuario para torpes que de momento documenta principalmente como instalar DrumSim en Windows y como utilizar la aplicación. Le podeís echar un vistazo aquí.

lunes, 12 de abril de 2010

OpenAl


Si habeís probado la primera versión de DrumSim es posible que os de un aviso de error por la consola al inicializar la aplicación y después no haga nada al tratar de tocar los intrumentos. Esto se debe a que es necesario instalar las librerías de OpenAl en el sistema lo cual podeís hacer con el siguiente programa de instalación que os he dejado en la forja.

sábado, 10 de abril de 2010

DrumSim 0.5. para Windows

Por fin ya está disponible la versión 0.5 beta de DrumSim de la que podeís descargar, de momento, el instalble (creado con NSIS) para Windows desde la forja o directamente aquí.

Como se trata de una versión beta es posible que se produzca algún que otro fallo por lo que podeís reportar los bugs que econtreís aquí.

Además, en los próximos días si encuentro algo de tiempo seguiré investigando a ver si por fin soy capaz de crear algún paquete para Linux (Fedora y Unbutu) o por lo menos una versión con Autotools.

domingo, 4 de abril de 2010

Icono DrumSim


Antes de publicar definitivamente la aplicación os dejo el que será el icono con el que se intentificará una vez se instale (que sin duda representa una batería) :P y si los quereís os podeís bajar el set desde la forja aquí.

viernes, 12 de marzo de 2010

Primera versión

Y por fin después de varias semanas de codificando y peleando con librerías y demás ya está disponible (de momento solo a través de SVN) la versión 0.5 de la aplicación funcionando aunque aun falta alguna que otra cosa como por ejemplo la configuración (que de momento se puede hacer manualmente a través del fichero drumsim.config), la adición y eliminación de instrumentos y la modificación en dinámica de la intensidad de los sintrumentos (es decir mientras se tocan). De momento con lo que si que cuenta la aplicación es con:
  • Interfaz de la ventana principal terminada. (aunque el efecto de la reproducción de los intrumentos no me ha quedado como esperaba).
  • 15 sonidos distintos de batería.
  • Modificación de la intensidad de los sonidos.
  • Y ya :P.
En los próximos días me dedicaré a crear algun que otro paquete, una versión para Windows, documentar (comentar código dónde aun falte, manual de usuario, licencia, etc.) y preparar algún artículo para su promoción enn algún blog para cuando ya estén disponibles los instalables.

Por último, os dejo una última captura de la aplicación funcionando.

lunes, 8 de marzo de 2010

Interfaz ventana principal

Hoy os dejo otra captura más desde Gnome, en esta ocasión se trata de la ventana principal ya más o menos con su look definitivo a falta de algún instrumento por defecto más. Al igual que con la anterior captura he actualizado todo en el SVN incluyendo los icons y los sonidos con los que trabajará la aplicación, aunque de momento como digo solo es funcional la interfaz y la lectura y escritura de los ficheros de configuración.

lunes, 1 de marzo de 2010

Primera captura

Os dejo la primera captura de la aplicación en funcionamiento, y ya disponible en el repositorio de la forja, creada con FLTK 1.1.10 y en la que como vereís se presenta la ventana principal con el típico menú y el logo de la aplicación.



martes, 23 de febrero de 2010

Código


Y por fin llego el día... ya ha empezado el trabajo duro y de darse de palos con las librerías, el entorno (Eclipse), la forja con su SVN y todo lo demás pero es fácil si se intenta y hoy por fin a partir del diagrama de clases creado con Umbrello he autogenerado código, lo he editado un poco y ya se encuentra la estructura del programa en la forja.

lunes, 22 de febrero de 2010

Diagrama de clases

Por fin de vuelta tras el parón examenil, una pequeña mudanza y un merecido descanso es hora de volver a continuar con el proyecto. A partir del análisis de requisitos y del díagrama de casos de uso ya se puede empezar a definir las diferentes clases que foromaran la aplicacion. Así, por ejemplo, a partir del diagrama de casos de uso se observa que se pueden definir tres clases de interfaz de usuario. Una de ellas y la principal de la aplicación sera (como en casí cualquier aplicación) la ventana principal y en la cual se realizará presentación de los intrumentos disponibles y se visualizará el hecho de que el usuario toca algún intrumento para lo cual se controlará los eventos de teclado y ratón (dsWinMain).

Por otro lado también se necesitarán interfaces que permitan al usuario tener la posibilidad de añadir un nuevo instrumento y la configuración de cada uno de los ya existentes para lo que serán necesarias otras dos clases adicioneles (dsWinAddIntrumento y dsWinConfigIntrumento). Por último también y por relacionar los posibles elementos de interfaz que puedan presentarse para ilustrar undeterminado instrumento será necesario definir un control (dsCrlIntrumento). Estas clases de interfaz heredarán todas de sus clases bases dentro de la librería FLTK por lo que las ventanas heredern de la clase Fl_Window y el control dsCrlIntrumento de la clase Fl_Control.
Por otro lado en cuanto a las clases que no pertenecen al interfaz es obvio que será necesario definir una clase que describa a cada intrumento y en la cual se guardarán los diferentes datos sobre este (fuente de sonido, intensidad, ...) y efectuar todas las operaciones que ya se han mencionado en la especificación de requisitos (cargar sonido, tocar sonido, subir y bajar la intensidad, ...) para lo que se define la clase dsIntrumento.

Además y como ya se ha dicho se pretende que los intumentos no se reproduzcan de forma idividual sino que lo hagan mezclandose entre ellos de forma que compongan una determinado ritmo (que será una clase futura para cuando interese guardad los sonidos), de modo que se define otra clase adicional (dsMixer) en la que se realizara dicha composición y que es la que se encargará finalmente de reporoducir los diferentes intrumentos que se vallan tocando. Con todo ello ya se puede definir el siguiente diagrama UML de clases en el que se detalla (más o menos) cada una de las clases descritas:

jueves, 7 de enero de 2010

Interfaz de usuario


Va siendo hora de decidirse por alguna de las GUI existentes para crear el interfaz de usuario de DrumSim. En este caso y como se ha definido en los requisitos debe ser compatible con X11 (es decir cualquier escritorio Linux y tambén Mac) y con Windows. Además como en la aplicación se requiere el procesamiento en tiempo real de sonido cuanto menos ocupe y necesite el interfaz mejor. Ah! Y claro está tiene que ser libre.

En este caso y sobre todo por que es una de las GUI más eficientes he optado por Fast Light Toolkit (FLTK) que es compatible con sistemas Linux\UNIX con X11, Microsoft Windows, Mac OS X, etc. por lo que se adapta perfectamente a la especificación propuesta. Es si, tiene un pero, y es que debido a que en su desarrollo se ha enfocado a la eficiencia y al ahorro de recursos, se ha dejado a un lado el aspecto visual por lo que las aplicaciones quizas no sean tan resultonas como con otras GUI.

domingo, 3 de enero de 2010

Casos de uso

A paritr de lo expuesto a lo largo del Análisis de requisitos se puede resumir la interacción entre el usuario y el sistema así como las funcionalidades principales a desarrollar de la siguiente forma mediante el diagrama de casos de uso: