I made a proof of concept of a more narrow system with reveal.js and phamtomjs. Everything than you can run on a browser can be easylly automated to a video.
Yeah I spent same effort with reveal.js but I found it not very convenient. Assuming you have used phantomjs for capturing frames. I preferred screen capture since my requirement is to use sound and synchronize slide timings to length of sounds. I skipped extra step of capturing frame-by-frame and merging sound and pictures with separate process. Screen capture part made my pipeline semi-automated.
I was searching good approach since then but cannot find any solution elegant than Flash. It is dead tech but even today I cannot find real alternative to Flash in terms of asset management, scripting, exporting, IDE and motion graphics. It won't took more than an hour to create an simple application with Flash that consumes data dynamically and create video out of it.