Article View: es.comp.lenguajes.java
Article #430Re: JFlashPlayer (reproducir Flash con Java)
From: Daniel Sánchez-Gil
Date: Thu, 20 Sep 2007 15:33
Date: Thu, 20 Sep 2007 15:33
63 lines
3890 bytes
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!!
Technical Details
Message-ID:
<1190302417.296216.285420@y42g2000hsy.googlegroups.com>Path:
arc1-ca.pugleaf.net!g2news2.google.com!postnews.google.com!y42g2000hsy.googlegroups.com!not-for-mailReferences:
<1188988263.894734.279020@22g2000hsm.googlegroups.com> <fbm22k$5ri$1@serrella.cpd.ua.es> <1190206753.607166.11110@o80g2000hse.googlegroups.com> <fct48j$5ip$1@serrella.cpd.ua.es>Show Full Headers
Complete Article Headers
X-Google-Thread: 1116f3,64e89c70908aa25c X-Google-Attributes: gid1116f3,public,usenet X-Google-Language: SPANISH,ASCII Path: arc1-ca.pugleaf.net!g2news2.google.com!postnews.google.com!y42g2000hsy.googlegroups.com!not-for-mail From: Daniel Sánchez-Gil <dsanchez@prainter.com> Newsgroups: es.comp.lenguajes.java Subject: Re: JFlashPlayer (reproducir Flash con Java) Date: Thu, 20 Sep 2007 08:33:37 -0700 Organization: http://groups.google.com Lines: 65 Message-ID: <1190302417.296216.285420@y42g2000hsy.googlegroups.com> References: <1188988263.894734.279020@22g2000hsm.googlegroups.com> <fbm22k$5ri$1@serrella.cpd.ua.es> <1190206753.607166.11110@o80g2000hse.googlegroups.com> <fct48j$5ip$1@serrella.cpd.ua.es> NNTP-Posting-Host: 217.126.181.7 Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-Trace: posting.google.com 1190302417 12892 127.0.0.1 (20 Sep 2007 15:33:37 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Thu, 20 Sep 2007 15:33:37 +0000 (UTC) In-Reply-To: <fct48j$5ip$1@serrella.cpd.ua.es> User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7,gzip(gfe),gzip(gfe) Complaints-To: groups-abuse@google.com Injection-Info: y42g2000hsy.googlegroups.com; posting-host=217.126.181.7; posting-account=ps2QrAMAAAA6_jCuRt2JEIpn5Otqf_w0