Miniatura de arquivos SWF no Linux

Publicado por Eduardo Mozart de Oliveira em 13/09/2018

[ Hits: 164 ]

Blog: http://www.eduardomozartdeoliveira.wordpress.com/

 


Miniatura de arquivos SWF no Linux



O Windows conta com o programa Media Preview, que possibilita a visualização de thumbnails (miniaturas) de arquivos SWF no Windows Explorer. O Ubuntu 10.04 possibilitava a visualização de thumbnails de arquivos SWF através do Nautilus. Porém, com o lançamento da versão 10.10 (Maverick) do Ubuntu, este recurso foi removido.

Não consegui encontrar formas de restaurar esta funcionalidade integrada ao Nautilus. Porém, é possível usar o GNU Gnash (reprodutor de mídia Flash open-source) para obter capturas em formato de imagem (PNG) do conteúdo do arquivo SWF, de forma a criar, ao lado do arquivo (na classificação por "nomes" do Nautilus), um arquivo de imagem para pré-visualizar o conteúdo do mesmo.

Abra o Terminal. Agora, precisamos instalar o Gnash para obtermos a captura de imagem do arquivo SWF. Em distribuições Debian-like (como o Deepin), o Gnash pode ser obtido através do apt-get:

sudo apt-get update
$ sudo apt-get install gnash


No Ask Ubuntu [1], cita as dependências para compilação manual do "dump-gnash" e, no Floorplanner Tech Blog [2], como compilá-lo manualmente, caso sua distribuição não possua o Gnash em seus repositórios. Você pode encontrar ambos os links nas referências.

Após a instalação do Gnash, ainda no Terminal, crie o script "/usr/local/bin/swfthumbnailer.sh":

sudo nano /usr/local/bin/swfthumbnailer.sh

O script abaixo é uma adaptação dos scripts disponíveis no Ask Ubuntu [1] e Floorplanner Tech Blog [2] que recebe como parâmetro o caminho completo do arquivo SWF (ex: /home/eduardo/Downloads/test.swf) e cria um arquivo de imagem no mesmo local do arquivo SWF com a extensão PNG (ex: /home/eduardo/Downloads/test.png). Copie e cole o seguinte conteúdo no arquivo:

#!/usr/bin/env bash
#if [[ $3 ]]; then
    raw="$(mktemp)"
    #dump-gnash $2 -P "FlashVars=url=file://$1" -D "$raw" --max-advances 1 -j 500 -k 500
    dump-gnash "$1" -D "$raw" --max-advances 1 -j 500 -k 500
    #tail -c 1MB "$raw" | convert -size 500x500 -depth 8 rgba:- -separate -swap 0,2 -combine -trim png:"$3"
    tail -c 1MB "$raw" | convert -size 500x500 -depth 8 rgba:- -separate -swap 0,2 -combine -trim png:"${1%.*}.png"
    trap "rm $raw" EXIT
#else
    #echo "Insufficient arguments (expected 3 arguments)"
    #exit 1
#fi

Pressione a combinação de teclas "Ctrl + X" e "Enter" para salvar as alterações.

Agora, para criar a imagem de miniatura de arquivos SWF, basta executar o seguinte comando no terminal:

swfthumbnailer.sh /home/eduardo/Downloads/test.swf

Será gerado um arquivo de imagem PNG no mesmo local do arquivo SWF (ex: /home/eduardo/Downloads/test.png).

Você pode automatizar este processo através da interface gráfica, tornando-a mais integrada ao Nautilus ou ao seu gerenciador de arquivos padrão. O Deepin permite a associação de arquivos com scripts através da interface gráfica, porém, você pode criar esta associação manualmente em distribuições que não contam com este recurso.

Após associar a extensão SWF com o script, basta dar botão direito no arquivo e selecionar "Abrir com > swfthumbnailer.swf" para criar a miniatura automaticamente. Múltiplos arquivos podem ser selecionados ao mesmo tempo no Nautilus para criação da miniatura, facilitando o processo.

Infelizmente, o Gnash suporta apenas animações SWF v7, e alguns recursos SWF v8 e v9. Portanto, algumas animações mais novas não gerarão imagens de miniatura (apenas uma imagem de fundo preto). Para reprodução de animações Flash no Linux, recomendo o Flash Player Projector para Linux, disponível na seção [Debug Downloads](https://www.adobe.com/support/flashplayer/debug_downloads.html) da Adobe.

Referências

1. Missing Thumbnails for .swf files in Nautilus?. Ask Ubuntu. Disponível em: <https://askubuntu.com/questions/16867/missing-thumbnails-for-swf-files-in-nautilus>. Acesso em: 03 set. 2018.

2. Server-side PNG rendering of SWF images using Gnash. Floorplanner Tech Blog. Disponível em: <http://web.archive.org/web/20120130052603/http://techblog.floorplanner.com/2010/11/02/server-side-rendering-of-swf-images-using-gnash/>. Acesso em: 03 set. 2018.

3. GNU Gnash. Free Software Foundation. Disponível em: <https://www.gnu.org/software/gnash/>. Acesso em: 03 set. 2018.

Outras dicas deste autor

Acessando compartilhamentos de rede do Windows pelo CentOS

Configurando Proxy no Eclipse IDE

Acessando desktop do Debian 8 (Jessie) remotamente através do TightVNC

Resposta lenta ao conectar a um servidor ProFTPD (login lento)

Alterar programa padrão para arquivos no Deepin

Leitura recomendada

Configurando a roda do mouse

Deepin sem Wi-Fi? [Resolvido]

Adicionando outras Distribuições Linux ou Sistemas Operacionais no Grub2

Configurando o VNC em uma distribuição CentOS (Red Hat)

Telegram Desktop parou de funcionar após atualização ou troca de idioma? Corrija isso já!

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor HostGator.
Linux banner
Linux banner
Linux banner

Artigos

Dicas

Viva o Android

Tópicos

Top 10 do mês

Scripts