Search articles

Type a keyword to start searching
Back to selected work
Case 032020—2022

A financial video production platform

Intelligent Video Platform

A platform for making short financial videos with animated charts and narration. Editors select a template and adjust the content; the server renders the video.

A narrated frame from the video platform
Content technology / Media engineering2020—2022
Chart animation, narration, and subtitles need to share a timeline.
4 stages
production pipeline
60 fps
animated rendering
SaaS
delivery model

PROJECT EXAMPLES

Screenshots and examples

Intelligent video frontend and backend generation flow

Platform generation flow

The project flow from template selection and page editing to job queues, speech generation, and media synthesis.

Timeline for pages, component animation, and the virtual presenter

Unified timeline

Page transitions, component animation, and presenter position are coordinated on one master timeline.

Virtual presenter frame animation viewport

Virtual presenter frames

A diagram from the project showing the presenter frame sequence, viewport, and movement.

01 / Context

The problem

Each template needed its own chart animation timed to narration. Effects that played in a browser could still run into font, codec, and headless-environment problems on the server.

What we built

The platform separates data retrieval, chart components, scene timing, and render jobs. Templates can be reused, components share a data format, and FFmpeg produces the final video.

02 / System

How the system works

  1. 01

    Data pool

    The backend normalized source data; components consumed final chart-ready datasets by key.

  2. 02

    Business widgets

    Chart and animation components are written for specific tasks, with only the configuration options they need.

  3. 03

    Media rendering

    Scenes coordinated chart animation, voice, and subtitles; frame streams and FFmpeg produced target media.

03 / Decisions

Design choices

01

Agree on data formats first

We agreed on how components receive data and configuration before adding templates, reducing later rework.

02

Allow specialized components

Some components only serve a few templates, but simpler configuration makes their animation easier to control. We accepted some duplication here.

03

Handle server rendering

The server manages frame buffers, concurrent jobs, bitrate, fonts, and retries after failed renders.

04 / Our work

Our role

Role:We led the project and technical design, and built core parts of the chart components, timeline, and server renderer.

  • 01Designed platform layers, component taxonomy, and frontend/backend data contracts
  • 02Led animated-chart, scene-timeline, and FFmpeg server-rendering solutions
  • 03Built core code and resolved performance, visual-quality, and deployment issues
Node.jsFFmpegCanvasWebGLMedia Pipeline