SWF Tools development is back on

Good news! SWF Tools development is going to get started again! Sorry it's been a while since any issues got fixed, and that there's not a SWF Tools 7 (yet!). I can't promise any dates yet, but it will happen. Read a bit more here.


SWF Tools allows you to easily embed flash content and media players on your pages. The whole concept of SWF Tools is to let you focus on displaying media on your site, but without having to write code to enable it.


You can use any of the following formats to add your media:

  • CCK display formatters (see documentation for details)
  • Inline embedding ([swf file="mymovie.swf"])
  • PHP code:
    print swf('mymovie.swf');


You can choose either direct embedding markup, or JavaScript embedding using SWF Object 2

Media players

You can enable support for a number of common media players, including:

  • Flowplayer
  • 1 Pixel Out
  • JW Image Rotator
  • JW Media Player
  • Simple Viewer


You can create play lists for your media, either via CCK (upload a number of files and they will be assembled to a play list), or using the input filter (with the format [swf files="first.mp3&&second.mp3&&third.mp3"]). SWF Tools will then create a playlist in the media player you have chosen to use.


You can add RTMP streaming (to let users skip through the content). To stream a file just use the existing swf filter syntax, but supply the stream parameter. For example,

[swf file="mp4:movie.f4v" stream="rtmp://server/application"]

Streaming support is available for Wijering 4 and FlowPlayer 3.

Setting up SWF Tools

When setting up SWF Tools please be sure to read the documentation! It is not a particularly difficult module to set up, but it does take a little more effort than just downloading the main package. In particular, pay attention to the fact that you (a) have to download supporting JavaScript and media player files separately, and (b) you must install the supporting files in the right place!

SWF Tools 6.x-3.x is coming!

A BETA5 package is now available below. This builds on BETA4 and has multiple fixes and enhancements. Please continue to read this documentation page as the upgrade is a little different to just uploading the new files.

BETA5 continues the Views integration features! Build a view that fetches a playlist, and send it directly to SWF Tools. Audio playlists, video playlists and slideshows are now all possible directly from Views with no third party modules needed. Views integration is built in and SWF Tools will present itself as a style. There are no docs yet, but see #581470: Playlist option in file handlers for the latest discussions.

Other new features in this release are that SimpleViewer now requires SimpleViewer2, so you will need to upgrade your supporting library. The SimpleViewer module also supports TiltViewer, which works great with Views.

FlexPaper is now supported as a means of displaying PDFs in a flash based viewer.

SoundManager 2 support is in this release too, although it is the least stable of all the code and at this time is more "proof of concept", but it is functional.

JW Player 5 is now supported, and the player should be placed in the mediaplayer-5 folder. NOTE: JW4 must be disabled before installing JW5 as the JavaScript currently clashes.

What are people doing with SWF Tools

There are all sorts of sites using SWF Tools to add media to their site. whitehouse.gov use it for a weekly videocast, michaeljackson.com use it to provide podcasts. It's been used to showcase products, provide guitar tutorials, and show home videos to family. SWF Tools is designed to make it easy to put media on your site. If you know of a good example please post it in the issue queue!

GIT strategy

If you are using git to pick up SWF Tools then you might find it helpful to understand how the branches are currently arranged, so that you can pick up the code that best suits your needs.

5.x-1.x is the current stable branch for SWF Tools 5. The end of this branch will contain the latest bug fixes. Code from this branch should always be stable and contain the very latest fixes that haven't yet been released. Use CHANGELOG.txt to work out what is in there.

At present there is no development branch for SWF Tools 5 as there are no new feature plans. The SWF Tools module is pretty complex so it is not always feasible to port features back. However, if someone REALLY wants a feature to come back from SWF Tools 6 it can be considered, and of course, patches and contributions are always welcome!

6.x-2.x is the current stable branch for SWF Tools 6. As for the D5 equivalent, this is stable code but it will contain the latest bug fixes that are ready for testing prior to a new release. If there is a specific bug fix that you are looking for, then this is the place to get it.

6.x-3.x is currently tracking new feature work for SWF Tools 6. The code is usually stable, but it may break at times. At present the main feature plan is to improve support for playlists, introducing better support for theming (particularly for FlowPlayer3 which lends itself to this), and more features to integrate SWF Tools with CCK. As this is work in progress the branch is great if you want to test a feature, but bear in mind the code may, at times, be broken.

The master branch will be used for SWF Tools 7 development which is about to get underway.

Where next...

SWF Tools has come a long way since it was started by sime, and there are lots of people using it to enhance their sites with all sorts of media, so where is it going to go next? Clearly, there will be an SWF Tools 7. However, there is also a new project starting called embed which is trying to be a more generic way of adding objects such as audio and video to a site. It builds on SWF Tools, but does things slightly differently to make a lightweight system that ANY module can interact with. If embed works out then SWF Tools will remain as a means of getting your content out of CCK or an input filter, but some of the component parts will migrate to embed. All this would mean for you as an end user is that you would need both embed and swftools on your site. The intention of embed is to try and encourage other developers to support players via the embed module. That would mean that you get access to a wider range of players, and that all the effort can be focussed on making each player module as good as it can possibly be. And that's good for everyone!

Project Information