Miniatura de arquivos SWF no Linux

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

[ Hits: 2.929 ]

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

Convertendo arquivos para PDF a partir do menu de contexto do Nautilus

Configurando Proxy no Eclipse IDE

Alterar mapeamento de teclas da extensão Media Keys do Firefox

Acessando compartilhamentos de rede do Windows pelo CentOS

VirtualBox não reconhece dispositivos USB do hospedeiro (host)

Leitura recomendada

Vino sem GNOME

Boot do Linux no notebook Amazon PC AMZ 101, 201 e 601

Configurar um notebook antigo e funcional como servidor DLNA para Chromecast

Como configurar o terceiro botão do mouse serial no Slackware

Repositórios Brasileiros de Sabayon Linux - Atualização e complemento

  

Comentários
[1] Comentário enviado por eduardomozart em 20/01/2023 - 14:50h

Para quem tiver interesse em gerar as miniaturas no Windows, o Gnash para Windows está disponível para download em http://web.archive.org/web/20151026043439/http://getgnash.org/packages/releases/windows/
Para quem busca uma solução pronta para criação de Thumbnails no Windows Explorer, pode instalar a última versão do Adobe Flash Player e usar o programa Media Preview, que inclui o suporte a criação de thumbnails automáticas de arquivos SWF para Windows.

[2] Comentário enviado por eduardomozart em 05/02/2024 - 13:57h

Algumas informações adicionais para essa dica:
Você também pode realizar a integração de Thumbnailers com o seu gerenciador de arquivos (como o Nautilus), ou seja, a maioria permite que você execute comandos para gerar a thumbnail automaticamente ao acessar uma pasta que contenha um arquivo com determinado Mime Type/extensão.
As thumbnails geradas pelos Thumbnailers são salvas em $HOME/.cache/thumbnails e o nome é o caminho absoluto do arquivo em hash MD5. A especificação completa de Thumbnails da FreeDesktop Specification pode ser encontrada em: https://specifications.freedesktop.org/thumbnail-spec/thumbnail-spec-latest.html
O Deepin File Manager (dde-file-manager) do Deepin 20 aparentemente não segue a especificação, com ligeiras alterações referente ao modo como as Thumbnails são geradas: aparentemente ele usa o caminho absoluto do arquivo, o tamanho do arquivo e um caractere nulo em hash MD5, conforme pode ser visto no código-fonte do DDE File Manager: https://github.com/linuxdeepin/dde-file-manager/blob/142659efe5e10d24bab971cc40a267acbd8e1760/src/df...



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts