sábado, abril 26, 2008

Dibujando Música


Hola amig@s,

Hoy os quiero trasladar una peocupación de esas mundiales. De esas que son tan importantes que debería ocuparse la ONU.

¿Cómo *$%&! "pinta" el Winamp sus skins en el sistema?


Es con la única aplicación que me ha pasado esto y me intriga, aunque supongo que no es la única. El misterio se produce cuando se cambia el skin por defecto del Winamp (ya sabéis, ese programita para escuchar música, la radio por internet y los canales de televisión... incluidos los porno, sí.)

En la representación normal del Winamp se ve el skin moderno, mirad que bonito que está, con sus canciones y todo.

Imagen 1: Winamp con el skin “moderno”

Ahí se ve el nivel musical que uno gasta… Fito, el live in Alkobendas de los Sublevados, los Bloc Party,… vamos, todos los clásicos. La “cream” de la “cream”.

Este es el aspecto que tiene este programa en mi ordenador, luego se supone que las representaciones internas que Window Vista tiene de él serán la misma, pero sin embargo, cuando miramos los “snatchos” que aparecen en la barra de tareas, en el flip 3D y en el Alt+Tab aparece el skin clásico .

Imagen 2: Captura de pantalla con Alt+Tab y Snatcho en barra de tareas

Nótense las friki tools: Explorador de archivos, bloc de notas y Paint. ¡A lo grande!

Imagen 3: Bailando el Winamp con el interfaz clásico en el Flip 3D

¿Alguien sabe por qué pasa esto con el Winamp? ¿A alguien le ha pasado con alguna otra herramienta? ¿Será la forma de pintar el Skin del Winamp? Parece que está pintando el skin clásico también o... ¿será mi Vista?

Saludos Malignos!

9 comentarios:

  1. tambien me pasaba eso en vista ultimate

    ResponderEliminar
  2. Esto lo digo sin tener ni idea, pero a lo mejor es porque Vista tiene algún tipo de caché/backend o una especie de pila, donde almacena la captura de la imagen. Quizá, la aplicación debe de comunicarle al sistema operativo que su apariencia ha cambiado para que se refresque esa caché, y sin embargo el Winamp(¿es ya una versión para WinVista o es la versión XP?), no lo hace.

    ResponderEliminar
  3. La visualización de la aplicación se actualiza en tiempo real. Si estás jugando a un juego y ves la preview se actualiza, así que no creo que esté haciendo capturas ;)

    ResponderEliminar
  4. tampoco me hagais mucho caso, pero me da a mi que realmente el winamp lo que hace cuando aplica un skin es superponer una capa con el grafico de cada uno de los componentes "skinables", esto lo hace directamente sobre el skin clasico, windows vista parece que cuando hace la vista en el "alt+tab", lo hace sobre la base del formulario de la aplicación, es decir, el skin clasico, pasa lo mismo si en una aplicacion abres un formulario modal, el pintado que hace de la ventana es de la padre.. no pinta la hija sobre la padre (la composicion vista de las dos), podeis hacer la prueba en el IE7 abris herramientas-opciones de internet y probais el "alt+tab" la pantalla de opciones no aparece dibujada....

    ResponderEliminar
  5. @Korrekami, tu explicación mola. Puede ser así.

    Lo que llama la atención es que entonces está pintando dos veces, pues el skin clásico cambia y se pinta contastemente además del moderno.

    Curioso...

    ResponderEliminar
  6. Habeis probado haber si se puede eliminar el skin clasico?
    (ignoro si se puede)

    ResponderEliminar
  7. Mi teoria es que la pantalla principal del Winamp siempre es la misma (el skin clasico). Cuando uno opta por el moderno lo que hace internamente es:
    1. Ocultar la ventana principal
    2. Dibujar el skin moderno según parametros e imagenes que hay en la carpeta en un área diferente a la ventana principal.
    3. Enlazar las distintas porciones de las imágenes con los eventos del Winamp (hay una interfaz llamada MAKI que realiza el enlace, dibujo y eventos)

    Supongo que la causa por la que no se muestra en la vista miniatura el dibujo actual, es porque esta dibujado el skin moderno fuera del área principal de dibujo del winamp.

    No puedo probar ahora con un Vista, pero que pasa si mediante el evento paint se muestra un PNG fuera del área asociada al Form? la muestra?

    La clave de tu respuesta es analizar MAKI. (http://www.winamp.com/development/skins-modern-maki)

    Que opinion te merece esto:

    http://www.kriptopolis.org/ataque-masivo-inyeccion-sql

    Hace tiempo que Kriptopolis esta tirando noticias en contra de Microsoft, algunas hasta ridiculas. Creo que lo peor es que no verifican nada y esto lleva a comenter algunos errores como que una inyección SQL es una vulnerabilidad y no un error de programación por parte del desarrollador de la aplicación.

    Saludos!

    ResponderEliminar
  8. Pues ya que sacais esta curiosidad yo tengo muchas aplicaciones que no aparecen en los snapshot the Windows Vista Ultimate x64.
    - No se actualiza en tiempo real el contenido de ninguna aplicación que ejecute en maquinas vistuales tipo VMware Server o VMware Workstation.
    - Aplicaciones Java como el entorno de desarrollo Eclipse y MyEclipse.
    - Adobe Acrobat 8 Profesional (aparece cuando le da la gana)
    - Otras aplicaciones que ahora no recuerdo.

    Yo apuesto mas por una mala implementación de los drivers gráficos, en mi caso tengo la última versión de nVidia para Geforce 8800 GT ya que algunas veces al maximizar un IE por ejemplo no se redibujan los botones del navegador (en su lugar se ve el escritorio) hasta que no paso el raton por encima o minimizo y vuelvo a maximizar.

    ResponderEliminar
  9. una cosa q puedes ver es q si cambias el skin de winamp por otro q no sea "modern skin" veras como si sale es skin en la barra de tareas es algo raro y contradice a todos los comentarios q an puesto hasta el momento!! y lo q hay momentos enq no salen los botones o las vistas previas en la barra de tarea en determinados programas o por lapsos de tiempo es por el desgaste de RAM q hace el windows vista a la bestia!!!

    saludos!!!

    bye

    ;)

    ResponderEliminar