principal
nivel superior
enviar artículo
buscar
administrar
acerca de ...
rdf
rss
main
|
Posted by ernesto on Tuesday January 13, @11:12AM el 2009
from the del reportero solitario dept.
He aquí mi reporte...
Terminado
- Ya cumplí la semana de trabajo que debía (de ahí que reporte tan tarde).
- Hay dos módulos nuevos: csd_parts.py y csd_generator.py. Éstos sirven para generar un "string" .csd (contiene la orquesta y el score que necesita csound) que tenga "n" instancias de un instrumento, cada una con un canal de control en tiempo real distinto. Esto sirve para poder controlar cada armónico independientemente, mientras esté sonando; de acuerdo con el modelo de control diseñado (ver reporte del 26 de diciembre).
- Edité Csound_Note.py y Csound_Interface.py para que funcionaran con el "string" .csd arriba mencionado.
En proceso:
- Implementar el modelo de control antes mencionado. El lado Csound de él ya está listo. Hice un thread de control (en Background_sound.py) como prueba de ello. Dicho thread funciona con parametros aleatorios y da variedad al sonido de fondo. El siguiente paso es que el control venga de la simulación. Esa es mi siguiente meta.
Pendiente:
- Mejorar el ritmo y las envolventes de amplitud (una vez que Birdcage esté controlando el audio).
- Implementar movimiento de alturas. El modelo ya está diseñado y los módulos Python programados pero, como mencioné antes, necesito que Birdcage controle el sonido para implementar dichos módulos.
Es todo.
Saludos,
Ernesto
<
reporte
|
wixi is working =)
>
|
|
The Fine Print: The following comments
are owned by whoever posted them.
( Reply )
|
Re: Reporte 9-I-09
by jergas on Wednesday January 14, @01:31AM
|
Exception in thread Thread-4:
Traceback (most recent call last):
File "/usr/lib/python2.5/threading.py", line 486, in __bootstrap_inner
self.run()
File "/home/edgar/ouroborus/birdcage/Background_sound.py", line 193, in run
channels1 = backgroundSound1().run().channelNos
AttributeError: 'NoneType' object has no attribute 'channelNos'
|
[
Reply to this ] |
Re: Reporte 9-I-09
by ernesto on Wednesday January 14, @02:18AM
|
Que vergüenza. No sé que pasó. Probé el código, y aunque lo hice cansado, no entiendo como se me pasó algo así. Mientras escribo esto inicia mi Debian y repararé el error.
|
[
Reply to this ]
|
Re: Reporte 9-I-09
by ernesto on Wednesday January 14, @02:39AM
|
Mi código si funciona. No entiendo que pasa, pero igual voy a seguir investigando. ¿Alguien más tuvo el mismo problema?
Edgar: si aún estás despierto, ¿me llamarías? De cualquier manera yo te busco a una hora en la que (pienso) será seguro que no te despierte.
|
[
Reply to this ]
|
Re: Reporte 9-I-09
by ernesto on Wednesday January 14, @02:41AM
|
Aclaro: al referirme a mi código, me refiero a mi versión de Birddcage, revisión 62.
|
[
Reply to this ]
|
Re: Reporte 9-I-09
by jergas on Wednesday January 14, @04:18AM
|
bueno, ya lo ablamos, pero nomas para no dejar en la oscuridad a los demas miembros del proyecto, lo repito:
sip, a Panx tambien se le presento el error, para reproducirlo hay que dejar que acabe la ejecucion.
porfas explica aqui la solucion cuando la tengas, pa que los demas vayamos entendiendo, je.
|
[
Reply to this ]
|
Re: Reporte 9-I-09
by ernesto on Wednesday January 14, @10:15AM
|
Ya entiendo porque no detecté el bug: desde que la simulación dura tan pocas iteraciones, salgo de Birdcage antes de que termine de correr.
En fin, el problema ya está resuelto y los cambios subidos a SVN. Lo que pasaba es que a pesar de que el loop de control estaba programado para terminar cuando terminaran las iteraciones de la simulacion (main_sequence),el thread de control seguía andando suficiente tiempo como para pedir datos de los threads de reproducción, que ya se habían detenido.
La solución fue utilizar el método de threading "isAlive()" para saber si los threads de reproducción aún corrían, y hacer al loop de control dependiente de que estos siguieran activos.
|
[
Reply to this ]
|
|
The Fine Print: The following
comments are owned by whoever posted them.
( Reply )
|
|