nanoVG + nanoSVG + glfw3 + libtcc + Emscripten = LVG is lightweight replacement for flash. It's designed to use very small runtime (around 200kb) for player and can run on android, ios, web and more. It's uses C scripts natively and javascript for web.
Why C scripts? Because C compiler is small, and runtime written in C, so no other lagnuage needed and script can be compiled in to save space.
Current Status: Works:
- SVG, image, mp3 resources with tcc scripting.
- limited SWF support.
- SWF: shapes, images, video, audio (mp3, adpcm, pcm) loading and rendering (some errors in converting to SVG shape fornat).
- SWF: load action script
Not works:
- SWF: morph shapes (only first shape showed).
- SWF: clip layers
- SWF: interpret action script
- SWF: bitmap filters
- SWF: network access
- SWF: audio mixer
Interesting graphics libraries:
- https://github.com/01org/fastuidraw
- https://skia.org/
- https://cairographics.org/
- http://www.antigrain.com/
- http://scripts.sil.org/cms/scripts/page.php?site_id=projects&item_id=graphite_home
- https://sourceforge.net/projects/shivavg/
- https://github.com/micahpearlman/MonkVG
- https://github.com/KhronosGroup/OpenVG-Registry
LVG System is developed and maintained by https://github.com/lieff