SlideShare uma empresa Scribd logo
1 de 23
Flash Player Internals Alberto González Sr. Technical Consultant
Bio Director de Tecnología en Activ (Adobe Authorized Training Center) +9 años de experiencia trabajando con la plataforma Flash, ActionScript y tecnologías de servidor. Co-manager del grupo de usuarios, oficial de Adobe, enfocado a Rich Internet Applications ( RIActive – www.riactive.com ) Consultor de Adobe Mex enfocado en tecnologías de programación Conferencista en diversos eventos internacionales como Software Guru, Adobe en vivo, Adobe Hispano, presentación de productos: CS3 – CS4, Flex y AIR, Flash Builder, Flash Catalyst,…
Flash Player Mismo código base para todos los dispositivos ( 80% es “core” ) Actualizamos/mejoramos el “core” y se aplica de forma automática Otra parte del código es específico de la plataforma Mobile* (Palm, Symbian, …) Desktop (Mac, Window, Linux) Mismo código, misma liberación, misma estrategia para dispositivos móviles y escritorio.
Flash Player en laptops, desktop, dispositivos Consistente Multi-plataforma Optimizado Existen diferencias mayores Memoria y CPU (QuadCore, Palm, Core 2 Duo, …) Resolución (1600x1280, 320x260, …) Mouse, teclado, touchscreen
Flash Player Hay que ser cuidadoso // Fallará el flash player en un móvil con 100MB de RAM for( inti=0; i<10; ++i ) { 	data[i] = new BitmapData( 1600, 1600 ); }
Infraestructura Flash Player
Modelo de ejecución (Flash) : Basado en “frames”
Modelo de ejecución // Este código no hace lo que esperaríamos // El “Render” no es invocado for( var i:int; i < 100; i++){ clip.x++; 	… }
Modelo de ejecución // Siempre hay unaexcepción. start = getTimer(); bitmapData.draw(…); end = getTimer();
Modelo de ejecución (Flash) : Basado en “frames”
Modelo de ejecución (Flex) : Basado en eventos
Prioridades de performance en Flash Player Sonido streaming Video ActionScript + Rendering
Versiones Versión del Flash Player  vs  versión del SWF La “versión” es virtual Aplica a: Funcionalidades APIs Bugfixes
ActionScript
ActionScript VMs ActionScript 2 se ejecuta en AVM1 Interpretado ActionScript 3 se ejecuta en AVM2 “Tamarin VM” JIT – Convierte el ABC (ActionScript Byte Code) a “código máquina” ejecutable Nanojit, nuevo!!! Nanojit tiene soporte de la comunidad Nanojit soporta múltiples procesadores Nuevo en Flash Player 10.1 Clase “String” mejorada de manera interna GC ha sido mejorado Mobile principalmente Pocas mejoras en multi-plaforma
GarbageCollector (Recolector de basura) Tipos primitivos, referencias y objetos Recolección de basura no es manejo de memoria Si el manejo de memoria realmente importa en tu aplicación Comienza desde el principio Utiliza dos algoritmos: Conteo de referencias Mark and sweep Código de ayuda flash.system.System.gc(); Flash Player >= 9.0.115
Alchemy Podemos “inyectar” código C / C++ directo a los SWFs Soporte limitado pero útil Ideal para utilizar librerías de C / C++ en aplicaciones web (Flash Player) y escritorio (Adobe AIR) Manipulación de datos Decodificación de audio/video “Parseo” de XML u otros formatos Funciones criptográficas Simulaciones físicas No es una alternativa para evadir la seguridad en la plataforma Proyecto Alchemy( http://labs.adobe.com/technologies/alchemy )
Rendering…
GPU vs Software Rendering “Rendereo” por software: “Rendereo” por GPU +
Video y optimización de bitmaps Video decodificado en GPU H.264 Soportado en todos los “wmodes” JPEG descompresión bajo demanda Instancias por superficie La memoria sin utilizar es liberada
Vectores en GPU Dispositivos Móviles Reemplaza el render por software con render GPU Teoría: Mover lo gráfico de la computación del CPU al GPU
Performance ActionScript Utilizar ActionScript 3 Tener cuidado con los intervalos y los altos “framerates” DisplayList (móviles) Mantenerla lo más pequeña posible Video Resoluciones, formatos y “framerate” apropiados
Q & A Alberto González E-mail: agonzalez@activ.com.mx Twitter: @albertx Blog: http://x-geom.net/blog

Mais conteúdo relacionado

Mais procurados

Mais procurados (12)

Adobe After Effects CS4.
 Adobe After Effects CS4. Adobe After Effects CS4.
Adobe After Effects CS4.
 
Lady sànchez 2a4
Lady sànchez 2a4Lady sànchez 2a4
Lady sànchez 2a4
 
Trabajo de edición de vídeo
Trabajo de edición de vídeoTrabajo de edición de vídeo
Trabajo de edición de vídeo
 
Presentación postgresql
Presentación postgresqlPresentación postgresql
Presentación postgresql
 
Entrega 4 Exposicion final
Entrega 4   Exposicion finalEntrega 4   Exposicion final
Entrega 4 Exposicion final
 
Palomino Tania
Palomino Tania Palomino Tania
Palomino Tania
 
Filmora
FilmoraFilmora
Filmora
 
ventajas y desventajas de programas informaticos
ventajas y desventajas de programas informaticosventajas y desventajas de programas informaticos
ventajas y desventajas de programas informaticos
 
After Effects
After EffectsAfter Effects
After Effects
 
After effects
After effectsAfter effects
After effects
 
Preguntas test
Preguntas testPreguntas test
Preguntas test
 
Tutoriales
TutorialesTutoriales
Tutoriales
 

Destaque

Destaque (7)

Flash Player security
Flash Player securityFlash Player security
Flash Player security
 
Tendencias de seguridad en pagos por eCommerce
Tendencias de seguridad en pagos por eCommerceTendencias de seguridad en pagos por eCommerce
Tendencias de seguridad en pagos por eCommerce
 
Advanced Action Script 3.0
Advanced Action Script 3.0Advanced Action Script 3.0
Advanced Action Script 3.0
 
Desarrollo Plataforma Flash
Desarrollo Plataforma FlashDesarrollo Plataforma Flash
Desarrollo Plataforma Flash
 
Flash Platform
Flash PlatformFlash Platform
Flash Platform
 
Flash player 10.1
Flash player 10.1Flash player 10.1
Flash player 10.1
 
Flash player security
Flash player securityFlash player security
Flash player security
 

Semelhante a Flash Player Internals

Bajaña mera maria 2b2
Bajaña mera maria 2b2Bajaña mera maria 2b2
Bajaña mera maria 2b2mariabajana
 
Bajaña mera maria 2b2
Bajaña mera maria 2b2Bajaña mera maria 2b2
Bajaña mera maria 2b2mariabajana
 
Bajaña mera maria 2b2
Bajaña mera maria 2b2Bajaña mera maria 2b2
Bajaña mera maria 2b2mariabajana
 
Sanchez montesdeoca angela 2 b2
Sanchez montesdeoca angela 2 b2Sanchez montesdeoca angela 2 b2
Sanchez montesdeoca angela 2 b2angelasanchezM
 
Sanchez montesdeoca angela 2 b2
Sanchez montesdeoca angela 2 b2Sanchez montesdeoca angela 2 b2
Sanchez montesdeoca angela 2 b2angelasanchezm29
 
Desarrollo de aplicaciones sobre plataformas flash
Desarrollo de aplicaciones sobre plataformas flashDesarrollo de aplicaciones sobre plataformas flash
Desarrollo de aplicaciones sobre plataformas flashFutura Networks
 
Historia de flash por
Historia de flash por Historia de flash por
Historia de flash por alexmorang
 
Historia de Flash por Alex Moran
Historia de Flash por Alex MoranHistoria de Flash por Alex Moran
Historia de Flash por Alex Moranalexmorang
 
Artec alternativas moviles
Artec alternativas movilesArtec alternativas moviles
Artec alternativas movilespmorillo
 
Análisis de Alternativas para el Desarrollo de Aplicaciones Gráficas 3D
Análisis de Alternativas para el Desarrollo de Aplicaciones Gráficas 3DAnálisis de Alternativas para el Desarrollo de Aplicaciones Gráficas 3D
Análisis de Alternativas para el Desarrollo de Aplicaciones Gráficas 3DRubén Talón Argente
 
Grupo 12 de TM. 5º Enxeñería Informática, ESEI@UVIGO
Grupo 12 de TM. 5º Enxeñería Informática, ESEI@UVIGOGrupo 12 de TM. 5º Enxeñería Informática, ESEI@UVIGO
Grupo 12 de TM. 5º Enxeñería Informática, ESEI@UVIGOIria Rey Varela
 
Herramientas Y Programas Utiles
Herramientas Y Programas UtilesHerramientas Y Programas Utiles
Herramientas Y Programas UtilesJairo Gatjens
 
Integrando Nuevas Tecnologías Web
Integrando Nuevas Tecnologías WebIntegrando Nuevas Tecnologías Web
Integrando Nuevas Tecnologías Webjuliocasal
 

Semelhante a Flash Player Internals (20)

Romina izquierdo 2 b2
Romina izquierdo 2 b2Romina izquierdo 2 b2
Romina izquierdo 2 b2
 
Bajaña mera maria 2b2
Bajaña mera maria 2b2Bajaña mera maria 2b2
Bajaña mera maria 2b2
 
Bajaña mera maria 2b2
Bajaña mera maria 2b2Bajaña mera maria 2b2
Bajaña mera maria 2b2
 
Bajaña mera maria 2b2
Bajaña mera maria 2b2Bajaña mera maria 2b2
Bajaña mera maria 2b2
 
Sanchez montesdeoca angela 2 b2
Sanchez montesdeoca angela 2 b2Sanchez montesdeoca angela 2 b2
Sanchez montesdeoca angela 2 b2
 
Sanchez montesdeoca angela 2 b2
Sanchez montesdeoca angela 2 b2Sanchez montesdeoca angela 2 b2
Sanchez montesdeoca angela 2 b2
 
Desarrollo de aplicaciones sobre plataformas flash
Desarrollo de aplicaciones sobre plataformas flashDesarrollo de aplicaciones sobre plataformas flash
Desarrollo de aplicaciones sobre plataformas flash
 
Flash Player 10.1
Flash Player 10.1Flash Player 10.1
Flash Player 10.1
 
Historia de flash por
Historia de flash por Historia de flash por
Historia de flash por
 
Historia de Flash por Alex Moran
Historia de Flash por Alex MoranHistoria de Flash por Alex Moran
Historia de Flash por Alex Moran
 
Artec alternativas moviles
Artec alternativas movilesArtec alternativas moviles
Artec alternativas moviles
 
Análisis de Alternativas para el Desarrollo de Aplicaciones Gráficas 3D
Análisis de Alternativas para el Desarrollo de Aplicaciones Gráficas 3DAnálisis de Alternativas para el Desarrollo de Aplicaciones Gráficas 3D
Análisis de Alternativas para el Desarrollo de Aplicaciones Gráficas 3D
 
Animacion 2 d
Animacion 2 dAnimacion 2 d
Animacion 2 d
 
Angelagamarra q
Angelagamarra qAngelagamarra q
Angelagamarra q
 
Html5 vs Flash
Html5 vs FlashHtml5 vs Flash
Html5 vs Flash
 
Grupo 12 de TM. 5º Enxeñería Informática, ESEI@UVIGO
Grupo 12 de TM. 5º Enxeñería Informática, ESEI@UVIGOGrupo 12 de TM. 5º Enxeñería Informática, ESEI@UVIGO
Grupo 12 de TM. 5º Enxeñería Informática, ESEI@UVIGO
 
Diana huayamave
Diana huayamaveDiana huayamave
Diana huayamave
 
Herramientas Y Programas Utiles
Herramientas Y Programas UtilesHerramientas Y Programas Utiles
Herramientas Y Programas Utiles
 
Integrando Nuevas Tecnologías Web
Integrando Nuevas Tecnologías WebIntegrando Nuevas Tecnologías Web
Integrando Nuevas Tecnologías Web
 
Flash raul g
Flash raul gFlash raul g
Flash raul g
 

Último

Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxRogerPrieto3
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 

Último (15)

Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptx
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 

Flash Player Internals

  • 1. Flash Player Internals Alberto González Sr. Technical Consultant
  • 2. Bio Director de Tecnología en Activ (Adobe Authorized Training Center) +9 años de experiencia trabajando con la plataforma Flash, ActionScript y tecnologías de servidor. Co-manager del grupo de usuarios, oficial de Adobe, enfocado a Rich Internet Applications ( RIActive – www.riactive.com ) Consultor de Adobe Mex enfocado en tecnologías de programación Conferencista en diversos eventos internacionales como Software Guru, Adobe en vivo, Adobe Hispano, presentación de productos: CS3 – CS4, Flex y AIR, Flash Builder, Flash Catalyst,…
  • 3. Flash Player Mismo código base para todos los dispositivos ( 80% es “core” ) Actualizamos/mejoramos el “core” y se aplica de forma automática Otra parte del código es específico de la plataforma Mobile* (Palm, Symbian, …) Desktop (Mac, Window, Linux) Mismo código, misma liberación, misma estrategia para dispositivos móviles y escritorio.
  • 4. Flash Player en laptops, desktop, dispositivos Consistente Multi-plataforma Optimizado Existen diferencias mayores Memoria y CPU (QuadCore, Palm, Core 2 Duo, …) Resolución (1600x1280, 320x260, …) Mouse, teclado, touchscreen
  • 5. Flash Player Hay que ser cuidadoso // Fallará el flash player en un móvil con 100MB de RAM for( inti=0; i<10; ++i ) { data[i] = new BitmapData( 1600, 1600 ); }
  • 7. Modelo de ejecución (Flash) : Basado en “frames”
  • 8. Modelo de ejecución // Este código no hace lo que esperaríamos // El “Render” no es invocado for( var i:int; i < 100; i++){ clip.x++; … }
  • 9. Modelo de ejecución // Siempre hay unaexcepción. start = getTimer(); bitmapData.draw(…); end = getTimer();
  • 10. Modelo de ejecución (Flash) : Basado en “frames”
  • 11. Modelo de ejecución (Flex) : Basado en eventos
  • 12. Prioridades de performance en Flash Player Sonido streaming Video ActionScript + Rendering
  • 13. Versiones Versión del Flash Player vs versión del SWF La “versión” es virtual Aplica a: Funcionalidades APIs Bugfixes
  • 15. ActionScript VMs ActionScript 2 se ejecuta en AVM1 Interpretado ActionScript 3 se ejecuta en AVM2 “Tamarin VM” JIT – Convierte el ABC (ActionScript Byte Code) a “código máquina” ejecutable Nanojit, nuevo!!! Nanojit tiene soporte de la comunidad Nanojit soporta múltiples procesadores Nuevo en Flash Player 10.1 Clase “String” mejorada de manera interna GC ha sido mejorado Mobile principalmente Pocas mejoras en multi-plaforma
  • 16. GarbageCollector (Recolector de basura) Tipos primitivos, referencias y objetos Recolección de basura no es manejo de memoria Si el manejo de memoria realmente importa en tu aplicación Comienza desde el principio Utiliza dos algoritmos: Conteo de referencias Mark and sweep Código de ayuda flash.system.System.gc(); Flash Player >= 9.0.115
  • 17. Alchemy Podemos “inyectar” código C / C++ directo a los SWFs Soporte limitado pero útil Ideal para utilizar librerías de C / C++ en aplicaciones web (Flash Player) y escritorio (Adobe AIR) Manipulación de datos Decodificación de audio/video “Parseo” de XML u otros formatos Funciones criptográficas Simulaciones físicas No es una alternativa para evadir la seguridad en la plataforma Proyecto Alchemy( http://labs.adobe.com/technologies/alchemy )
  • 19. GPU vs Software Rendering “Rendereo” por software: “Rendereo” por GPU +
  • 20. Video y optimización de bitmaps Video decodificado en GPU H.264 Soportado en todos los “wmodes” JPEG descompresión bajo demanda Instancias por superficie La memoria sin utilizar es liberada
  • 21. Vectores en GPU Dispositivos Móviles Reemplaza el render por software con render GPU Teoría: Mover lo gráfico de la computación del CPU al GPU
  • 22. Performance ActionScript Utilizar ActionScript 3 Tener cuidado con los intervalos y los altos “framerates” DisplayList (móviles) Mantenerla lo más pequeña posible Video Resoluciones, formatos y “framerate” apropiados
  • 23. Q & A Alberto González E-mail: agonzalez@activ.com.mx Twitter: @albertx Blog: http://x-geom.net/blog