News:

LATEST RELEASE:  FPP 8.5.1 - Download from here - https://github.com/FalconChristmas/fpp/releases/tag/8.5

+-+-

+-User

Welcome, Guest.
Please login or register.
 
 
 
Forgot your password?

+-Site Stats

Members
Total Members: 16898
Latest: Kap10G
New This Month: 14
New This Week: 0
New Today: 0
Stats
Total Posts: 135496
Total Topics: 16990
Most Online Today: 158
Most Online Ever: 7634
(January 21, 2020, 02:14:03 AM)
Users Online
Members: 1
Guests: 85
Total: 86

Rust FSEQ parser with web viewer based on Web Assembly

Started by jonnyshare, February 19, 2020, 01:22:17 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

jonnyshare

Hi!

I need to put this project down for a couple of weeks while I prioritise some other things but I wanted to throw this out there and see what kind of feedback I get.

With a vague motivation of doing something pixel related on an embedded system, but authoring the code in Rust instead of Arduino flavoured C, I started work on an FSEQ parser. It currently only supports v1, but what this allowed me to do was to export the parser as a Web Assembly module so that I could re-use the same code in a web application. So now I have a primitive web based FSEQ v1 visualisation.

Warning! I've only run a very small set of test files through it, nothing of significant size so I don't know at what point it will bug out.

Web application is available here: https://fseq-web.firebaseapp.com/
Code can be found here: https://gitlab.com/sharebear/fseq_parser (documentation needs some work ;) )

I'm very interested to hear if anyone sees any value in this. I'm hoping to pick up the code again mid march when I will prioritise the v2 parsing.

allknowing2012

Knowing what colors on what channels is pretty much useless without knowing the models and props that they are placed on. But I applaud your efforts.

jonnyshare

Quote from: allknowing2012 on February 19, 2020, 03:49:03 PMKnowing what colors on what channels is pretty much useless without knowing the models and props that they are placed on.
I didn't really claim that it was, my stated end goal is to use the parser in an embedded project. In it's current state the usage as a Web Assembly module is mostly proof of concept, a fun way to test different files easily and a tool for me to get up to speed with React programming.

Once I've implemented v2 parsing I'll publish the module on NPM and then if anyone wanted to go further to implement a richer visualisation they are welcome to do so. I assume this would require switching out my SVG rendering with something Canvas based for performance reasons, it would probably also make sense to do more of the work on the Web Assembly side.

Support FPP

+- Recent Topics

Light Elf Bluetooth IP65 Laser by Kap10G
March 22, 2025, 12:45:02 PM

HA MQTT plugin for single model by s1godfrey
March 20, 2025, 08:21:46 PM

Virtual Display not working? by dkulp
March 19, 2025, 11:45:01 AM

PixelOverlay-Clock - Revisited Again by jnealand
March 18, 2025, 06:00:53 PM

PixelOverlay-Clock.php works but I have questions... by datajack
March 18, 2025, 04:38:32 AM

Backup Feature not functional by efamlights
March 16, 2025, 11:58:28 AM

WS2811, Raspberry Pi 5, GPIO, could not initialize. by Ulysse-srfc24
March 16, 2025, 05:07:48 AM

K16A-B Issue by nolatron
March 15, 2025, 01:52:26 PM

F16V5 and SRx1 v5 by jkp
March 15, 2025, 07:19:44 AM

Differential Board: PSU & Enclosure by hakko808
March 14, 2025, 09:17:01 AM

Powered by EzPortal
Powered by SMFPacks Menu Editor Mod