INICIO: Últimas Actualizaciones YO: Acerca de Javi Aledo y Currículum Vitae VIDEOS: producciones audiovisuales video 3d Efectos Visuales efectos de video, etc. IMÁGENES: Diseño 3D y 2D efectos 3d Ilustraciones, etc. FOTOS: Fotografía de paisajes de Egipto cielos puestas de sol, etc. MÚSICA: producción musical composiciones musicales Orquestal Bandas sonoras Electrónica New Age Celta Pop Jazz, etc. PROGRAMACIÓN: Muestras de programación en OpenGL Flash Action Script, etc. TIENDA: Merchandising de JaviAledo.com Camisetas Pegatinas, etc. TUTORIALES: Tutoriales Manuales Soluciones WIP Cómo se hizo... Guías, etc. CONTACTO: Escribe tus comentarios críticas observaciones dudas...
MENÚ PRINCIPAL: Inicio, Yo, Vídeos, Imágenes, Fotos, Música, Programación, Tienda, Contacto
ir a la página inicial
MENÚ PRINCIPAL JAVIALEDO.COM: Inicio, Yo, Vídeos, Imágenes, Fotos, Música, Programación, Tienda, Contacto
Volver a la galeria de TUTORIALES

Cómo aplicar interpolación al reescalar un video en Flash para que no pixele

Con este truco aprenderás a añadir la propiedad de suavizado a cualquier video que utilices dentro de Adobe Flash.


Como ya debéis saber, y si no os lo explico, al reescalar cualquier imagen en flash se produce un efecto bastante desagradable debido a una mala interpolación de los píxeles. Es decir, para deducir los píxeles que se tiene que inventar al cambiar de tamaño, utiliza un algoritmo eficiente pero de bastante mala calidad visual. Para evitar este problema, siempre podemos aplicar una interpolación suave a estas imágenes para que al redimensionarlas no se noten los píxeles. La mala noticia es que esto consume más recursos (todo cuesta algo en esta vida).

Para realizar esto es bastante sencillo pero algo escondido. En la librería de Flash (Ctrl.+L) selecciona la imagen a la que te interese aplicarle el suavizado y pulsa sobre ella con el botón derecho del Mouse y luego "Propiedades" y luego selecciona la opción de "Permitir suavizado" o "Allow smoothing" si tenemos la versión en inglés.

La diferencia de una interpolación y la otra es evidente:

Pero ahora bien, si en vez de una imagen insertamos un video, tenemos el mismo problema al reescalarlo. Lo lógico seria seguir el mismo procedimiento que hemos utilizado con la imagen: ir a la librería, pulsar sobre el video con el botón derecho, luego propiedades… pero nos damos cuenta que el menú propiedades no permite ninguna opción de suavizado.

Buscando y buscando solo encuentro soluciones para permitir el suavizado en videos pero utilizando un reproductor de video que carga un FLV. Pero eso no me interesa ya que simplemente tengo un video embebido que lo utilizo como elemento dentro de mi animación.

Pero que no cunda el pánico, existe una forma muy sencilla para conseguir reescalar ese video realizando una buena interpolación.

Para ello importaremos el video embedido (embedded) dentro de nuestra película flash. Entonces seleccionaremos en el objeto de video creado de tipo "Video embedido" (o Embedded Video) para darle un nombre de instancia. Por ejemplo "mc_video". Y ahora introduciremos una instrucción de ActionScript en un fotograma de la línea de tiempo:

mc_video.smoothing = true;

Sí, así de simple. Con esa instrucción estaremos cambiando la propiedad de suavizado en el video. Ahora podremos reescalarlo y hará una buena interpolación de píxeles. Y también consumirá más recursos claro.

Espero que os haya servido de ayuda, no olvidéis de enviar cualquier comentario o duda que tengáis.

Envía tus comentarios Para cualquier comentario, duda, corrección, sugerencia o simplemente para expresar si te ha gustado o no este documento, envía un mensaje haciendo click  AQUÍ


Volver a la galeria de TUTORIALES