Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

Before I upgraded to Maverick, .swf files used to have a thumbnail in Nautilus. However, Nautilus doesn't generate thumbnails for them anymore, even after removing ~/.thumbnails/, which most likely indicates that a package is missing.

How do I get Nautilus to generate thumbnails for .swf files?

EDIT: I've added a bounty, as I believe this question might still be answered...

share|improve this question

4 Answers 4

up vote 4 down vote accepted
+50

There is a way of getting this done explained in the Floorplanner Tech Blog. To compile dump-gnash on a fresh Maverick you'll need

sudo apt-get install gcc libboost-dev libboost-thread-dev libagg-dev libsdl1.2-dev libcairo-dev libgstreamer0.10-dev libatk1.0-dev libglib2.0-dev libpango1.0-dev libgtk2.0-dev libgtkglext1-dev libgl1-mesa-dev libgif-dev libjpeg-dev libgstreamer-plugins-base0.10-dev libspeex-dev libcurl-dev

And then you just follow the steps. This will take a long time.
NOTE: For Step 7 use the following script instead:

if [[ $3 ]]; then
    raw="$(mktemp)"
    dump-gnash $2 -P "FlashVars=url=file://$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"
    trap "rm $raw" EXIT
else
    echo "Insufficient arguments (expected 3 arguments)"
    exit 1
fi

Once you have the final script running you just hook it into gconf-editor

gconftool-2 -s "/desktop/gnome/thumbnailers/application@swf" -t string "/usr/bin/swfthumbnailer.sh %s %i %o"
gconftool-2 -s "/desktop/gnome/thumbnailers/application@swf/enable" -t boolean 'true'
gconftool-2 -s "/desktop/gnome/thumbnailers/application@x-swf" -t string "/usr/bin/swfthumbnailer.sh %s %i %o"
gconftool-2 -s "/desktop/gnome/thumbnailers/application@x-swf/enable" -t boolean 'true'
gconftool-2 -s "/desktop/gnome/thumbnailers/application@x-shockwave-flash/command" -t string "/usr/bin/swfthumbnailer.sh %s %i %o"
gconftool-2 -s "/desktop/gnome/thumbnailers/application@x-shockwave-flash/enable" -t boolean 'true'

Then restart (or restart gnome-settings-daemon), and you've got swf thumbs!

P.S.: This is a huge hack. A better way to do this would be vastly appreciated.

share|improve this answer
1  
Your commands don't work: Error while parsing options: Unknown option -i –  user2817 Jan 23 '11 at 20:32
    
The bounty ends tomorrow, so if you still want to score...... –  user2817 Jan 24 '11 at 20:13
    
After a few Adjustments, the code works. I've documented the adjustments here: codepad.org/ZBaYE6he HOWEVER, the script will run the flashfile for a moment, which results in random background noises... I've found that a little odd, but not tragic. I just wonder if that could be done in a better way... –  user2817 Jan 25 '11 at 3:46
    
@nebukadnezzar I have edited the answer to include your modifications. –  Alvin Row Jan 25 '11 at 4:14
    
@DoR Thank you! –  user2817 Jan 25 '11 at 4:40

The thumbnails were made with libswfdec (i.e. /usr/bin/swfdec-thumbnailer from the package swfdec-gnome), which was removed in Ubuntu 10.10 ("maverick"). The libswfdec author stopped development because there are already 2 other open source projects working on implementing an SWF player: gnash (which is included in Ubuntu) & lightspark (which is new and not included yet). I am not sure if there exists a thumbnailer that uses gnash...

share|improve this answer
3  
I don't understand why this answer gets voted up? You only explain why swfdec doesn't exist as such in Lucid anymore, but you don't explain how to get the thumbnails back in Lucid. –  user2817 Jan 18 '11 at 20:26

The closest thing I've been able to find is perhaps using ffmmpegthumbnailer Install ffmmpegthumbnailer to create thumbnails for you and that should handle the .swf files.

This blog post has the instructions.

share|improve this answer
1  
ffmpegthumbnailer appears to be incompatible with compressed SWF files, which is defacto the default filetype for .swf files: [swf @ 0x8348e40]Compressed SWF format not supported (after running ffmpegthumbnailer -f -s 128 -i test.swf -o out.png) –  user2817 Jan 18 '11 at 21:06

Simplest answer should simply be to install swfdec-gnome, but the Lucid version. Not hard to do, just go to http://packages.ubuntu.com/da/lucid/swfdec-gnome and select your architecture. Then just do what you did previously to make it work; it seems to just randomly kick in for me, as I recall. Maybe after a log out/restart. Good luck to you.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.