1Revision history for Perl extension SWF::*. 2 30.42 Sun May 21 22:06:02 2006 4 SWF::Element 5 - Tag::BitmapLossless/2 now has always a long tag header to avoid a player bug. 6 (Thanks to Gordon McCreight) 7 - Fixed wrong unpacking font codes. 8 90.41 Fri Jun 3 00:30:00 2005 10 SWF::Element 11 - mistook TEXTRECORD::TYPE0 and TYPE1 in some case. (Thanks to Quyen Phuong) 12 TEXTRECORD::TYPE0 and TYPE1 are obsolete and now TEXTRECORD has both 13 styles and glyph entries. 14 - supports SoundStreamHead/2 for MP3 without LatencySeek. (Thanks to Quyen Phuong) 15 SWF::Parser 16 - 'parsetag' unexpectedly quitted when the stream ran short. Fixed. 17 180.40 Sun May 1 22:24:58 2005 19 SWF::Element 20 - Wrongly dropped CXFORM/WITHALPHA when HasAddTerms and HasMultTerms are both 0. 21 (Thanks to Quyen Phuong) 22 230.39 Fri Mar 18 00:02:58 2005 24 SWF::Element 25 - Fixed wrong glyph shape offsets in DefineFont.(Thanks to Quyen Phuong) 26 - Fixed wrong flag accessors of DefineFontInfo/2. 27 280.38 Tue Mar 15 00:57:57 2005 29 SWF::Parser 30 - 'parse' mathod did not call the 'tag-callback' sub properly. Fixed. 31 (Thanks to Quyen Phuong) 32 330.37 Sun Oct 31 02:04:31 2004 34 SWF::Element 35 - Fixed wrong bit shift in _create_flag_accessor. 36 - Fixed wrong flag accessors of Definesound and SoundStreamHead/2. 37 - Support ActionFSCommand2 and ActionStrictMode. 38 390.36 Tue Sep 14 23:30:00 2004 40 SWF::Element 41 - Failed to unpack DefineFont2 if FontFlagsWideOffsets was true. Fixed. 42 - Rewrote 'lookahead_*'. 43 SWF::BinStream 44 - 'get_bits' returned a wrong value in a certain case. Restored previous version. 45 (Thanks to Leonard Holman) 46 470.35 Wed Aug 11 09:27:51 2004 48 SWF::Element 49 - Improved to handle NaN. 50 510.341 Sat Jul 10 11:34:42 2004 52 SWF::Element 53 - Fixed unpack CacheRegister in SWF::Element::ACTIONRECORD::ActionTry. 54 550.34 Sat Jun 12 12:42:22 2004 56 SWF::Element 57 - Fixed wrong style index in DefineMorphShape. 58 - Added locking SWF version in CLIPACTIONRECORD. 59 SWF::Parser, SWF::BinStream 60 - Improved SWF version control. (Thanks to Anand Kellar) 61 620.33 Mon Apr 26 01:02:03 2004 63 SWF::Element 64 - Added tag types. 65 - Added SWF::Element::Tag::Packed class. 66 SWF::BinStream 67 - Fixed wrong handling of initial data for a read stream. 68 - Version of a write stream can change now before writing any data. 69 SWF::Parser 70 - Removed redundant copy of the internal stream. 71 720.32 Sat Mar 7 00:00:00 2004 73 SWF::Element 74 - Features described in the SWF file format specification version 7 75 are supported. 76 - Invalid ActionCall packing/unpacking is fixed. 77 780.31 Mon Dec 22 22:00:00 2003 79 - Minor bug fix for SWF::BinStream and SWF::Element. 80 SWF::Parser 81 - 'abort' did not work correctly for 'parse_file'. Fixed. 82 830.30 Sat Dec 20 02:22:00 2003 84 SWF::Element 85 - SWF::Element::MATRIX was initialized wrongly since ver.0.28. Fixed. 86 870.29 Wed Dec 17 20:30:00 2003 88 SWF::Element 89 - Fixed SWF::Element::ACTIONDATA::Double to handle 'infinity' and 90 'NaN' properly. (Thanks to Peter Sergeant) 91 920.28 Mon Dec 15 22:45:00 2003 93 SWF::Element 94 - Some methods are redefined wrongly. fixed. 95 - Removed some warnings. 96 SWF::Parser 97 - Removed some warnings. 98 990.27 Sun Nov 30 00:22:55 2003 100 SWF::Element 101 - SWF version was not set to TAGSTREAM. fixed. 102 - Added 'dumper' method for TAGSTREAM. 103 1040.26 Sat Nov 29 18:30:00 2003 105 SWF::Element 106 - '$' and '@' are not escaped correctly in dumper method. Fixed. 107 - Label positions for WaitForFrame/2 action is wrong. Fixed. 108 - Property names for ACTIONDATA::Property are supported. 109 - 'NaN' and 'Infinity' for ACTIONDATA::Double are supported. 110 - Added some read-only flag accessors. 111 - Added 'lookahead_FieldName' methods. 112 - Added a 'shallow_unpack' method for the DefineSprite tag. 113 SWF::BinStream 114 - get_SI16/32 failed to get negative minimum values. Fixed. 115 - Added lookahead_string/UI8/16/32/SI8/16/32 methods. 116 SWF::Parser 117 - Added a 'header' parameter for SWF::Parser->new. 118 - Added an 'abort' method. 119 Others 120 - Added a sample, linkext.plx, using lookahead_Flags and shallow_unpack. 121 1220.25 Thu Aug 7 22:00:00 2003 123 SWF::Element 124 - There remained a bug to pack EventFlags. Fixed. (Thanks to Sam Wong) 125 dumpswf.plx 126 - The output script cannot set the SWF version correctly. Fixed. 127 (Thanks to John Robens) 128 1290.24 Thu Jul 10 00:20:00 2003 130 SWF::Element 131 - EventFlags of PlaceObject2 for FLASH 6 was wrong. EventFlags6 is 132 now included in EventFlags. 133 - ActionScript data 'null' and 'undefined' were confused. 134 Use SWF::Element::ACTIONDATA::UNDEF for 'undefined'. 135 1360.23 Sat Jun 14 19:10:00 2003 137 SWF::Element 138 - Support 256 or higher value in SWF::Element::ACTIONDATA::Lookup. 139 (Thanks to Scott Graham) 140 1410.22 Tue Mar 30 01:00:00 2003 142 SWF::Element 143 - SWF::Element::MATRIX->rotate was wrong. Fixed. 144 - ActionWith tag was interpreted wrongly. Fixed. 145 - Changed 'Depth' scalar into SWF::Element::Depth object. 146 SWF::File 147 - SWF::File->new can do without a file name now. 148 The file name should be set in $swf->close/save. 149 SWF::Parser 150 - Revised POD. (Thanks to Ben Lamb) 151 Others 152 - Added some samples. 153 1540.21 Thu Nov 14 00:05:00 2002 155 SWF::Element 156 - Some flags are not reset properly when the wrong value is set 157 to the flags field. Fixed. 158 - Revised POD. 159 SWF::BinStream, SWF::Parser 160 - Revised POD. 161 162 dumpswf.plx 163 - Add comment outputs of frame number. 164 1650.20 Sun Nov 11 00:00:00 2002 166 This version is not compatible with the previous version. 167 168 SWF::Element 169 - Each element name and class is changed according to 170 the SWF file format specification version 6. 171 - Fixed wrong class structures. 172 - X and Y values in SHAPERECORDs are not converted to 173 the position relative to the shape origin any longer. 174 They are now delta values which are the raw data of SWF. 175 - SWF6 (Flash MX) tags and actions are supported. 176 - SI* and UI* classes are abolished. 177 Each field which were blessed with them are not objects any longer 178 but simple scalars. 179 STRING, PSTRING, ID, and BinData are still classes. 180 - ACTIONRECORDARRAY support local label. 181 It can be used as the offset of ActionJump, ActionIf, 182 and ActionDefineFunction, and also used as the skipcount 183 of ActionWaitForFrame/2. (Thanks to Scott Graham) 184 SWF::BinStream 185 - Support SWF version number. It is referred by some SWF::Element 186 objects. 187 - require method becomes private. It is not recommended to use. 188 - mark method accepts more than one tell positions and objects 189 for each key. 190 SWF::File 191 - Version method becomes read only. SWF version can be set by 192 constructer. 193 SWF::BinStream::File, SWF::Parser 194 - Support SWF version number for SWF::BinStream. 195 1960.10 Mon Sep 16 01:00:00 2002 197 SWF::BinStream 198 - Supported Codec filter module. 199 SWF::File, SWF::Parser 200 - Supported zlib-compressed SWF file. 201 Others 202 - Added SWF::BinStream::Codec::Zlib. 203 2040.09 Wed Apr 17 23:30:00 2002 205 SWF::Element 206 - SHAPERECn was not re-blessed to SHAPERECn::STRAIGHTEDGE properly. 207 2080.08 Mon Mar 4 00:38:10 2002 209 SWF::BinStream 210 - Improved get_bits and set_bits a little. 211 - Fixed POD error. 212 SWF::Element 213 - SWF::Element->configure raised error with one argument. Fixed. 214 - Field accessor method now can take undef. 215 - SWF::Element->clone didn't work properly. Fixed. 216 - Overload '=' of SWF::Element::Scalar. 217 - SWF::Element::Scalar->value method is used to get a field value. 218 - The base of SWF::Element::* is changed from hash to array. 219 2200.07 Sat Jan 12 02:20:00 2002 221 SWF::Element 222 - Fixed Array::Scalar->configure. (Thanks to Briac Pilpr�) 223 - Remove some warnings. (Thanks to Briac Pilpr�) 224 2250.06 Thu Jan 10 10:00:00 2002 226 SWF::Element 227 - TEXTRECORD::Type0 wrongly re-re-blessed in unpack(). Fixed. 228 (Thanks to Briac Pilpr�) 2290.05 Thu Jan 10 00:00:00 2002 230 SWF::Element 231 - TEXTRECORD1/2 was not re-blessed with proper subclass. Fixed. 232 - Array::TEXTRECORDARRAY1/2 did not handle TEXTRECORD*::Type0/1 233 properly. Fixed. (Thanks to Briac Pilpr�) 234 - Array::Scalar->configure now can take scalar array reference. 235 2360.04 Mon Dec 3 22:02:00 2001 237 SWF::Element 238 - Fixed bug in using array reference to set element. 239 - Minor fix to pass -w. 240 SWF::BinStream 241 - Fixed POD. 242 SWF::BinStream::File 243 - Fixed POD. 244 2450.03 Fri Nov 30 00:00:00 2001 246 SWF::Element 247 - Many Bug fixed. 248 - Rewrote and split POD. 249 - Rewrote source and changed the internal class structure. 250 - Added Flash5 actionscript support. 251 SWF::Parser 252 - Now parse frame rate in SWF header correctly. 253 - Fixed mistakes of POD about callback subroutines. 254 SWF::BinStream 255 - Capitalized name of all method except 'Length' now changed into 256 small letter and underscore. ex. SetUI8 -> set_UI8. 257 - Callback subroutine is now called with the stream object itself. 258 - Added 'tell' method to SWF::BinStream::Read. 259 - Added 'tell', 'mark', 'sub_stream' methods and 260 'get_maxbits_of_bits_list', 'get_maxbits_of_sbits_list' functions 261 to SWF::BinStream::Write. 262 - Added SWF::BinStream::Write::SubStream class. 263 dumpswf.plx 264 - Now use SWF::BinStream::File. 265 - Output script now use SWF::File. 266 - Added second parameter for output file. 267 - Added usage. 268 Others 269 - Added SWF::File and SWF::BinStream::File. 270 - makefdb.plx is no longer supported. 271 2720.02 Tue Aug 28 02:30:00 2001 273 - Some Bug fixed in SWF::Element. 274 - Add 'scale', 'rotate', and 'translate' method to 275 SWF::Element::MATRIX. 276 2770.01 Sun Dec 24 22:00:00 2000 278 - original version; created by h2xs 1.19 279 280