Google Swiffy



Google Swiffy was a web-based tool developed by Google that converted SWF files to HTML5. Its main goal was to display Flash contents on devices that do not support Flash, such as iPhone, iPad, and Android Tablets. Swiffy was shut down July 1, 2016.

Approach
A closed source web service hosted by Google converts SWF to an intermediate representation serialized as JSON. This representation is in turn converted into SVG in the web browser via JavaScript, which is also used for animations. The Swiffy thesis (2012) explains its general approach in the following way: "The choice of SVG for rendering leaves us with several options to animate the SVG content. At first sight, both CSS animation and SMIL, adhere to our design goal of using a declarative representation when possible. However, both technologies provide insufficient control over the animation when support for ActionScript scripting is required. For example, although the concept of keyframes exists in CSS animation, it does not provide a mechanism to synchronise the JavaScript code to those keyframes or to modify the timeline from JavaScript, which is a basic feature required for SWF compatibility. Another limiting factor is that animation in the SWF file itself is not defined in terms of high-level transitions, but defines the position of every object at specific keyframes. Mapping these definitions back onto CSS or SMIL transitions is not always possible. Finally, these standards are not widely available: The CSS animation specification is still in working draft state, while SMIL is not implemented in the Internet Explorer browser. We have therefore chosen to use JavaScript to animate SVG on the client. Although this imperative approach might be less efficient, the level of control it provides is required to match all SWF functionality."

Supports
Google Swiffy supported a subset of SWF 10, ActionScript 2.0 and ActionScript 3.0.

Supporting browsers

 * Google Chrome
 * Safari
 * Firefox 5+ (partly supported)
 * IE9 (partly supported) and IE10
 * WebKit-based browsers

Development
Swiffy was started in the summer of 2011 by Google engineering intern Pieter Senster, who joined their mobile advertising team to search for solutions to display Flash content on devices that do not support Flash. Progress on Swiffy was sufficient that Google hired him full-time and formed a team to work on the project. The product manager of Google Swiffy was Marcel Gordon.

Swiffy 6.0.1 was released on February 11, 2014.

Swiffy was shut down July 1, 2016.

Related software

 * Wallaby by Adobe converts FLA files to HTML5.
 * Ruffle, a free and open source Flash emulator that is actively developed.
 * Mozilla Shumway took a different approach by implementing a virtual machine for SWF in JavaScript.