dmarcuse / swf-parser

Rust and Typescript parsers for SWF

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Open Flash logo

SWF Parser

npm crates.io GitHub repository Build status

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.

Usage

Goal

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.

Status

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.

Contributing

You can also use the library and report any issues you encounter on the Github issues page.

About

Rust and Typescript parsers for SWF

License:GNU Affero General Public License v3.0


Languages

Language:TypeScript 50.4%Language:Rust 49.6%Language:Shell 0.0%