SWF parser implemented in Rust and Typescript (Node and browser).
Converts bytes to swf-tree
movies.
This library is part of the Open Flash project.
The goal is to provide a complete SWF parser. The initial implementation requires the movie to be fully buffered before parsing but incremental parsing (for streams) is planned. This parser should be easily embeddable: it is intended for SWF players, analysis tools or any other project having to manipulate SWF files.
Still experimental but getting better.
The Rust and Typescript implementations are kept in sync. They both support the following kinds of tags: shape definitions, morph shape definitions, bitmaps, AVM1 actions, sprites, sound streams, control tags. It represents about two thirds of the SWF tags and is enough to play simple movies. Help is welcome to complete the parser.
You can also use the library and report any issues you encounter on the Github issues page.