• Keep in touch:
  • Linked In
  • Twitter
  • RSS

Posts Tagged ‘release’

Transform SWF 3.0.1 now available

Transform SWF 3.0.1 is now available for download. This release fixes the following bugs:

  • Decoding JPEG images with odd number of bytes in the image data throws an exception.
  • DefineButton2 does not execute any actions.
  • BigDecoder throws an excaption when pre-fetching 4 bytes and only 2 bytes are available.

This release is also available from the Maven Central Repository.

groupId: com.flagstone
artifactId: transform
version: 3.0.1

Well, It Took A While

After an elephantine gestation period Transform SWF 3.0 has finally been kicked out of the door and is ready for life in the big, wide world.

The big new feature is that the code supports Flash 10. Another important change is that now you can write your own decoder classes, so for example, if you want to process files to extract or update only the images you can easily write a class that decodes only the image tags and leaves everything else as binary data. Combined with the new stream based I/O this means that you can easily process large numbers of files without using much memory. Pretty much everything else was refactoring, cleaning up and generally making everything as pretty as possible. So if you are already using Transform SWF 2.3 then the new code will appear familiar, though the methods may have changed. All the Cookbook examples have been ported to use version 3.0 so this is the best place to get oriented with the new API.

Now in Beta

Version 3.0 of Transform SWF for Java is now officially in beta. Rather than run with this for an enternity (Google, I’m looking at you) the goal is to get to a production release by the end of the summer – nominally early September.

The focus of work from now on is to start expanding the unit tests and so lessen the dependence on testing with real-world Flash files. Although these are useful and provide a great way of verifying that the code does really work as opposed to simply passing the tests it is not practical to include them in directly in the project for various reasons – file size and copyright being the two largest issues.

All the planned refactoring has been completed so the API should be considered stable. If there are changes, most likely resulting from feature requests I will send out notification in advance so there are no suprises on the next update.

This version is also available from the Maven Central Repository:


A big thank you to Sonatype for providing a Maven repository for Open Source projects and rapid syncing with Maven Central.

Regular status reports and details of any issues reported will be posted on the transform-swf-updates mailing list.

Now Goes To Eleven

Well not quite, but full support for Flash 10 is included in the alpha release of Transform SWF 3.0 which is now available from the downloads page.

Although this release has an alpha label it has been extensively tested using a large suite of real world Flash files with only a few minor issues.

The current plan is it keep the release in alpha for a short time – probably up to the end of June – to do some more testing and continue with the polishing and general clean-up of the code then move to a formal beta until the end of August and from there release 3.0 formally in early September once everybody is back from vacation and the reported bugs and issues have been resolved.

Regular status reports and details of any issues reported will be posted on the transform-swf-updates mailing list.

Transform SWF 2.3.3 for Java now available

Transform SWF 2.3.3 for Java is now available for download. This release fixes two bugs when decoding AWT Fonts to generate font definitions using the FSTextConstructor.

Bug Fixes:

  • Using characters with high value character codes causes errors.
  • AWT Fonts on Mac OSX are offset.

The release notes, http://www.flagstonesoftware.com/downloads/transform-java-2.3.3.txt has all the details.

Transform SWF 2.3.2 for Java now available

Transform SWF 2.3.2 for Java is now available for download. This release fixes bugs when encoding movies with not UTF-8 character sets and improves the handling of sound files.

Bug Fixes:

  • FSMovie does not set the character encoding in FSCoder.
  • FSSoundConstructor accepts sounds with any sample rate.
  • Extended arrays in FSShapeStyle are encoded as bit fields

The release notes, http://www.flagstonesoftware.com/downloads/transform-java-2.3.2.txt has all the details.

Version 3.0 Update

The project portal and repository for the upcoming Version 3 release of Transform SWF is now hosted on (the greatly improved) SourceForge, http://sourceforge.net/projects/transform-swf/ Currently the repository only contains version 3.0 code but a branch will be added for the current 2.x  code-base in the near future.

Most of the development work for version 3 is now complete. In addition to supporting Flash 8/9 features, most of the effort (and hence most of the delay) has been in refactoring the code to improve the design and boost performance as well as constructing a comprehensive suite of unit and acceptance tests. The to-do list contains the following:

  • Finish support for Flash 8/9 – only filters and font alignment are remaining.
  • Refactor the utilities classes to improve the design and make testing easier.
  • Replace remaining integer constants with enums.
  • Finish the suite of unit and acceptance tests.

You can find more detailed information on the current milestones and tasks at http://apps.sourceforge.net/trac/transform-swf/. I have also created a micro-blog for the project, http://apps.sourceforge.net/laconica/transform-swf/ where I will be posting quick (and frequent) updates of what is being worked on and what is left to do.

The code is now reasonably stable so if you want to browse, http://transform-swf.svn.sourceforge.net/viewvc/transform-swf/ or check it out https://transform-swf.svn.sourceforge.net/svnroot/transform-swf/trunk feel free to do so.

New Cookbook Format

The Cookbook has been reorganised and updated with lots more examples. This update contains lots of material to help you get started using Transform and Translate, with sections covering Flash concepts, introductory examples showing how to use the classes to generate Flash files and a list of HowTos covering basic animation techniques.

Future updates with contain more detailed recipes on how to display different types of object along with more advanced examples.

Transform 2.3.1 for Java released

Transform SWF 2.3.1 for Java is now available for download. This release fixes bugs in the handling of MP3 files and an important bug when displaying text using Java 1.5+

Bug Fixes:
14438. FSGradientFill incorrectly limits number of gradients.
14441. FSExceptionHandler does not decode correctly.
14442. FSLayer does not merge correctly.
14444. FSSoundConstructor does not decode MP3 frames correctly.
14449. Text is offset when using Java 1.5 or higher.
14685. Error encoding Flash Video files.
14686. Error decoding ID3 tag in MP3 files.

The release notes, http://www.flagstonesoftware.com/downloads/transform-java-2.3.1.txt has all the details.

So what happened to version 3.0?

It’s late, really late. Originally scheduled for the start of this year the release has dragged on and on. The principal cause of the delay has been simply a lack of time available to work on the code due other projects and supporting the existing codebase. The new web site took a lot of time to get it to the stage it is now, along with putting together the developer portals and getting the projects hosted with a more integrated tool set that makes things easier to track.

With the excuses out of the way, work on the project will resume this month, if not this week and the release should be out in the next couple of months. You can find the code in the Developer Portal repository, http://svn.codespaces.com/flagstone/transform-java/branches/3-0-dev. It is currently not stable and support for Flash 8+ is not added but you will be able to keep track of the changes that are being made. I will also post updates here as the work progresses.