Skip to content
This repository has been archived by the owner on May 15, 2022. It is now read-only.
claus edited this page Aug 13, 2010 · 54 revisions

as3swf is a low level Actionscript 3 library to parse, create, modify and publish SWF files.

Alpha version, under active development. Please do not use in production just yet.

as3swf is brought to you by Claus Wahlers and côdeazur brasil Ltda.

Watch it, Clone it, Fork it – as3swf is licensed under the MIT license. Contributions are very welcome.


Usage

public function Test() {
  var request:URLRequest = new URLRequest("any.swf");
  var loader:URLLoader = new URLLoader();
  loader.dataFormat = URLLoaderDataFormat.BINARY;
  loader.addEventListener(Event.COMPLETE, completeHandler);
  loader.load(request);
}
private function completeHandler(e:Event):void {
  var swf:SWF = new SWF();
  swf.loadBytes(URLLoader(e.target).data as ByteArray);
  trace(swf);
}

Trace dumps of selected SWFs

FC64 (SWF9)
DENG (SWF6)
YouTube (SWF8)
Vimeo (SWF9)
All Your Base (SWF4)


SWF tag support chart

Tag ID Read Write Tag Name
0 x x End
1 x x ShowFrame
2 x DefineShape
4 x PlaceObject
5 x x RemoveObject
6 x x DefineBits
7 x DefineButton
8 x JPEGTables
9 x x SetBackgroundColor
10 x DefineFont
11 x DefineText
12 x x DoAction
13 x DefineFontInfo
14 x DefineSound
15 x StartSound
17 x DefineButtonSound
18 x SoundStreamHead
19 x x SoundStreamBlock
20 x x DefineBitsLossless
21 x x DefineBitsJPEG2
22 x DefineShape2
23 x DefineButtonCxform
24 x x Protect
26 x PlaceObject2
28 x x RemoveObject2
32 x DefineShape3
33 x DefineText2
34 x DefineButton2
35 x x DefineBitsJPEG3
36 x x DefineBitsLossless2
37 x DefineEditText
39 x x DefineSprite
41 x ProductInfo
43 x x FrameLabel
45 x SoundStreamHead2
46 x DefineMorphShape
48 x DefineFont2
56 x x ExportAssets
57 x x ImportAssets
58 x x EnableDebugger
59 x x DoInitAction
60 x DefineVideoStream
61 x x VideoFrame
62 x DefineFontInfo2
63 x DebugID
64 x x EnableDebugger2
65 x x ScriptLimits
66 x x SetTabIndex
69 x x FileAttributes
70 x PlaceObject3
71 x x ImportAssets2
73 x DefineFontAlignZones
74 x x CSMTextSettings
75 x DefineFont3
76 x x SymbolClass
77 x x Metadata
78 x DefineScalingGrid
82 x x DoABC
83 x DefineShape4
84 x DefineMorphShape2
86 x DefineSceneAndFrameLabelData
87 x x DefineBinaryData
88 x DefineFontName
89 x StartSound2
90 x x DefineBitsJPEG4
91 x DefineFont4

TODOs, Roadmap

Tests – IN PROGRESS
ASDocs
Complete support for publishing SWF from DOMIN PROGRESS
Provide convenience methods to import/export various types of assets (bitmaps, sounds, fonts, ..)
Add parseXML and publishXML methods to import from and export to a swfmill like XML
Decompile Actions (to AS1 and AS2) and ABC (to AS3)
Compile AS1 and AS2 (to Actions) and AS3 (to ABC)

Clone this wiki locally