SDK for SWF files creating

Macromedia Flash SWF format is used for creation of different kinds of presentations, animations, games, interactive web sites and other multimedia applications. Today this format is the most popular format for delivering multimedia content through internet. In our company we have created special SDK which allows writing data into SWF files. Our SDK supports all the abilities of the SWF data format including writing video (AVI, ASF, WMV and MPEG formats) and audio data (MP3 and WAV formats), Sprites and basic graphic primitives like lines, rectangles, ellipses, texts which can be imported and edited in Macromedia Flash, saving symbols (Greek characters and special language characters), save URL links,
some action tags.

SDK uses PCM and MP3 audio data formats to save audio into SWF file. All audio streams from video clip will always be converted into MP3. To convert sound from various formats into WAV PCM and MP3 we use PCM and MPEG Layer-3 compressors. Those compressors should be installed in the system. Source sound can be supplied in several formats. SDK chooses destination sound format depending on source sound format:

  1. If source sound is uncompressed WAV PCM then it remains unchanged.
  2. If source sound is compressed WAV (for example Microsoft ADPCM) then it will be converted into uncompressed WAV PCM.
  3. If source sound is MP3 then it remains MP3.

If there is no MPEG Layer-3 codec installed in the system, then destination of audio data will be in WAV PCM format. Sound files which were included into PowerPoint presentation must have one of the following sampling rate:
5.5 kHz" = 5512 Hz
11 kHz" = 11025 Hz
22 kHz" = 22050 Hz
44 kHz" = 44100 Hz

For video data decompression SDK uses decompressors installed in the system. Initial Video clip can have frame rate that is not equal to 12 but SDK will save video clip with frame rate 12 frames per second. Audio stream from video clip converted and stored as described for Audio converting process.

Our SDK can save video stream into SWF file without using DirectX. To do this the video and audio streams are being extracted from the input file (currently supports the AVI, ASF and WMV files in this mode). Then the video is written to the output file. We use the following technologies to convert video without Direct X: AVI API, Windows Media Format SDK, VCM and ACM. The VCM version of the codec that was used while preparing the video embedded into the presentation is required in this mode (AVI conversion without Direct X).

This SDK can be used in a number of systems where it was necessary to use SWF format for data storing. We are working now on finishing the high level of our SDK and on providing a full set of features for saving ActionScripts tags. High level of our SDK will provide easy ways for saving different objects into SWF file including saving in around 100 predefined animation effects similar to Microsoft PowerPoint.

We have used our SDK in several projects for saving SWF files.