This is an evening project that turned out to be really cool. Let’s say that you’re a Macromedia Flash designer, and your clients ask you to bundle your nice Flash movie as a screen saver. What to do? For Windows there are free utilities to convert a SWF into a screen saver, but not for the Mac - and the first commercial one costs around USD 200!
I propose here a simple solution for this problem:
- Using Xcode, you can create screen savers (basically, Cocoa apps).
- Cocoa applications can host a WebKit component (basically, Safari).
- Safari can show local HTML pages (basically,
file:///
stuff). - And HTML pages can show Flash movies (basically,
<OBJECT>
and<EMBED>
)
The idea, then, is to bundle your own page, with your own movie, inside the screen saver bundle, and show the Flash movie this way. Easy said, easy done.
It all goes nice until… you try this solution :) The problem is, Flash movies loaded from file:///
URLs are blocked by the built-in security mechanisms of Adobe… and you have to find a workaround for that. Mine was to follow the instructions on how to bypass the Flash security mechanism, and then create an installer package that will do what’s needed for you to enjoy the screen saver.
You can get both the project and the installer package in my projects section (source). I’ve tested the installer in three different machines, and it worked, so I hope it’ll work for you too :) Enjoy! As always, try this at your own risk. Murphy says that things can go wrong, so watch out.