🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: es.comp.lenguajes.java
5 messages
5 total messages Started by Daniel Sánchez-Gil Wed, 05 Sep 2007 10:31
JFlashPlayer (reproducir Flash con Java)
#419
Author: Daniel Sánchez-Gil
Date: Wed, 05 Sep 2007 10:31
20 lines
1838 bytes
Buenos días a todos.

¿Alguien ha probado esta librería?  ( http://www.jpackages.com/jflashplayer/
)

Quería saber si alguien la está usando y si ha tenido problemas,
porque yo la adquirí hace unos meses, y resulta que me he hecho una
especie de marquesina en flash, pero que al cabo de unas horas de
estar funcionando, la CPU llega al 100%...

En el código hago llamadas explícitas al System.gc() y a
System.runFinalization() , por si acaso es por temas del recolector de
basura.

PD: También he escrito al soporte, pero mientras me responden, quiero
saber las opiniones de los demás.

Un saludo.
  Daniel Sánchez-Gil
Re: JFlashPlayer (reproducir Flash con Java)
#420
Author: Leto Atreides
Date: Wed, 05 Sep 2007 10:50
25 lines
2062 bytes
Daniel S�nchez-Gil escribi�:
> Buenos d�as a todos.
> 
> �Alguien ha probado esta librer�a?  ( http://www.jpackages.com/jflashplayer/
> )
> 
> Quer�a saber si alguien la est� usando y si ha tenido problemas,
> porque yo la adquir� hace unos meses, y resulta que me he hecho una
> especie de marquesina en flash, pero que al cabo de unas horas de
> estar funcionando, la CPU llega al 100%...
> 
> En el c�digo hago llamadas expl�citas al System.gc() y a
> System.runFinalization() , por si acaso es por temas del recolector de
> basura.
> 
> PD: Tambi�n he escrito al soporte, pero mientras me responden, quiero
> saber las opiniones de los dem�s.
> 
> Un saludo.
>   Daniel S�nchez-Gil
> 

�Bajo qu� sistema operativo est�s trabajando? Te lo comento porque me
parece que tengo problemas similares con JAVA cuando lo utilizo en un
Mac OS X.
Re: JFlashPlayer (reproducir Flash con Java)
#428
Author: Daniel Sánchez-Gil
Date: Wed, 19 Sep 2007 12:59
50 lines
3048 bytes
On 5 sep, 12:50, Leto Atreides <leto...@eresmas.com> wrote:
> Daniel Sánchez-Gil escribió:
>
>
>
> > Buenos días a todos.
>
> > ¿Alguien ha probado esta librería?  (http://www.jpackages.com/jflashplayer/
> > )
>
> > Quería saber si alguien la está usando y si ha tenido problemas,
> > porque yo la adquirí hace unos meses, y resulta que me he hecho una
> > especie de marquesina en flash, pero que al cabo de unas horas de
> > estar funcionando, la CPU llega al 100%...
>
> > En el código hago llamadas explícitas al System.gc() y a
> > System.runFinalization() , por si acaso es por temas del recolector de
> > basura.
>
> > PD: También he escrito al soporte, pero mientras me responden, quiero
> > saber las opiniones de los demás.
>
> > Un saludo.
> >   Daniel Sánchez-Gil
>
> ¿Bajo qué sistema operativo estás trabajando? Te lo comento porque me
> parece que tengo problemas similares con JAVA cuando lo utilizo en un
> Mac OS X.

Hola Leto Atreides, perdona la tardanza en contestar, es que estaba de
vacaciones :)

Uso Windows XP Home Edition.

La película Flash consta de 4 frames. En el primero leo de un
fichero .dat un código html y lo meto en una caja de texto. El 2o y el
3er frame hace el movimiento del texto, y cuando cruza la pantalla le
mando al 4o que hace un stop.

Desde Java, con el JFlashPlayer, le mando un play(), le pregunto
isPlaying() hasta que de false, hago un rewind(), espero un tiempo y
vuelvo a hacer play() y así sucesivamente. Y sin embargo pasadas unas
horas la CPU está a tope... no lo entiendo, porque no tengo nada más
en el programa Java...

¿Alguna idea?

Gracias y un saludo.
Re: JFlashPlayer (reproducir Flash con Java)
#429
Author: Leto Atreides
Date: Thu, 20 Sep 2007 06:32
38 lines
2638 bytes
Daniel S�nchez-Gil escribi�:
> On 5 sep, 12:50, Leto Atreides <leto...@eresmas.com> wrote:
>> Daniel S�nchez-Gil escribi�:
> 
> Hola Leto Atreides, perdona la tardanza en contestar, es que estaba de
> vacaciones :)
> 
> Uso Windows XP Home Edition.
> 
> La pel�cula Flash consta de 4 frames. En el primero leo de un
> fichero .dat un c�digo html y lo meto en una caja de texto. El 2o y el
> 3er frame hace el movimiento del texto, y cuando cruza la pantalla le
> mando al 4o que hace un stop.
> 
> Desde Java, con el JFlashPlayer, le mando un play(), le pregunto
> isPlaying() hasta que de false, hago un rewind(), espero un tiempo y
> vuelvo a hacer play() y as� sucesivamente. Y sin embargo pasadas unas
> horas la CPU est� a tope... no lo entiendo, porque no tengo nada m�s
> en el programa Java...
> 
> �Alguna idea?
> 

S�, creo que es cuando reiteras sobre el isPlaying(). Si haces esto:

while(isPlaying());

seguramente te ocupar� todo la CPU puesto que haces un bucle muy r�pido.
Te aconsejo que lo sustituyas por algo as�:

while(isPlaying()) Thread.sleep(tiempo_de_espera);

Y pon, como tiempo de espera, 1s, 500ms � 200ms. Aunque ser�a mejor que
usaras eventos. Mira a ver si la librer�a lanza eventos y, si es as�,
intenta capturar el de t�rmino de la reproducci�n.

Un saludo,
  Jos� M:
Re: JFlashPlayer (reproducir Flash con Java)
#430
Author: Daniel Sánchez-Gil
Date: Thu, 20 Sep 2007 15:33
63 lines
3890 bytes
On 20 sep, 08:32, Leto Atreides <leto...@eresmas.com> wrote:
> Daniel Sánchez-Gil escribió:
>
>
>
> > On 5 sep, 12:50, Leto Atreides <leto...@eresmas.com> wrote:
> >> Daniel Sánchez-Gil escribió:
>
> > Hola Leto Atreides, perdona la tardanza en contestar, es que estaba de
> > vacaciones :)
>
> > Uso Windows XP Home Edition.
>
> > La película Flash consta de 4 frames. En el primero leo de un
> > fichero .dat un código html y lo meto en una caja de texto. El 2o y el
> > 3er frame hace el movimiento del texto, y cuando cruza la pantalla le
> > mando al 4o que hace un stop.
>
> > Desde Java, con el JFlashPlayer, le mando un play(), le pregunto
> > isPlaying() hasta que de false, hago un rewind(), espero un tiempo y
> > vuelvo a hacer play() y así sucesivamente. Y sin embargo pasadas unas
> > horas la CPU está a tope... no lo entiendo, porque no tengo nada más
> > en el programa Java...
>
> > ¿Alguna idea?
>
> Sí, creo que es cuando reiteras sobre el isPlaying(). Si haces esto:
>
> while(isPlaying());
>
> seguramente te ocupará todo la CPU puesto que haces un bucle muy rápido.
> Te aconsejo que lo sustituyas por algo así:
>
> while(isPlaying()) Thread.sleep(tiempo_de_espera);
>
> Y pon, como tiempo de espera, 1s, 500ms ó 200ms. Aunque sería mejor que
> usaras eventos. Mira a ver si la librería lanza eventos y, si es así,
> intenta capturar el de término de la reproducción.
>
> Un saludo,
>   José M:

Hola José!, gracias por responder.

Sí, uso un sleep de 1 segundo. Lo de los eventos es lo mejor, pero no
se cómo hacerlo, ya investigaré a ver.

Respecto al problema de la CPU, creo haber averiguado el causante, y
es el propio archivo Flash. Resulta que en el Flash me creo un objeto
LoadVars, y sobre ese flash desde Java le hago constantemente
un .rewind() y play(), por lo que el player se sobrecarga con tantas
instancias del LoadVars. Aunque haga luego un dispose() y un delete
loadvars en el Flash, sigue igual.
Lo que he hecho ha sido poner en el primer frame del Flash, la
creación del LoadVars, y en el segundo hago la lectura al archivo de
datos, y desde Java no uso el rewind(), sino el setCurrentFrame(2), y
así evito el que player cree más instancias de LoadVars.
Por el momento lo estoy probando y funciona, no parece que se
ralentice, lo dejaré algunos días funcionando a ver qué tal.

Gracias!!
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads