Design and Evolution of an Online Education Post‑Class Replay Generation System
The article details the step‑by‑step architectural evolution of a cloud classroom replay generation platform, from a quick third‑party‑based implementation to a self‑developed, CDN‑integrated solution that now reliably produces nearly 90,000 class videos daily while reducing cost and operational complexity.
As an online education system, generating post‑class replay videos is essential for users and a core part of the live streaming system.
The cloud classroom replay generation system has evolved from a quickly built first version to a stable platform that now supports nearly 90,000 class replays per day, undergoing multiple technology selections and upgrades.
First Version
The initial version prioritized rapid deployment to meet business needs, leveraging third‑party mature solutions for quick rollout.
Agora provided recording service.
Self‑built cluster deployed recording service and scheduled recording and post‑class synthesis tasks.
Audio‑video data in each channel recorded per user.
After class, each user’s audio‑video data were merged, spliced and transcoded into a complete MP4.
Drawbacks: heavy reliance on third‑party services and a self‑built cluster required large‑scale transcoding, leading to intensive compute load, continuous cluster scaling, rising operational pressure and cost, while third‑party service fees remained high.
Second Version
Based on a live‑streaming solution, Agora’s push‑streaming combined with CDN live capabilities streamed the teacher’s content to CDN, allowing real‑time viewing and replay generation.
Used Agora push‑streaming service, avoiding self‑built recording cluster.
Multiple CDNs with traffic splitting greatly increased peak capacity and scalability.
Supported m3u8 and MP4; video generation mainly used splicing, reducing transcoding and speeding up generation.
Drawbacks: dependence on Agora’s push‑streaming capacity caused high peak‑period costs; videos could be distributed across different CDNs, making it impossible to obtain a complete video.
Third Version
Still using live push‑streaming, the client now pushes directly to CDN while retaining Agora’s push as a fallback for fault tolerance.
A small processing cluster merges videos distributed across multiple CDNs to produce a complete course replay.
Self‑developed client push module eliminates third‑party service dependence, dramatically reducing cost.
Push process includes real‑time monitoring for issue detection.
Small self‑built cluster consolidates videos from different CDNs.
Various tasks such as splicing, transcoding, and adding filters.
Handles abnormal TS files to prevent video generation failure.
Replay file generation priority is controllable, enabling immediate generation for special courses.
Client push module:
Replay task processing cluster:
New Oriental Technology
Practical internet development experience, tech sharing, knowledge consolidation, and forward-thinking insights.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.