Multimedia Streaming & Conference Platform
A social media platform enabling live video/audio broadcasting, on-demand media distribution, and multi-party conferencing, built on top of Adobe Flash Media Server at a time when real-time streaming infrastructure for web was still maturing.
Overview
Industry: Social Media / Entertainment
Product Type: Multimedia Web Portal
Architecture: Monolithic portal with dedicated streaming layer (FMS + WMS), PHP backend, Flash-based frontend
LiveCage allowed users to upload and distribute personal video/audio content, launch live video and audio streams, and participate in multi-user video conferences of up to 10 participants. The platform targeted early-adopter audiences seeking real-time media interaction before WebRTC existed as a viable standard. Mobile streaming support was introduced as a separate stream-bridging layer due to codec incompatibilities with iOS devices.
Architecture Context
Environment
- Flash Media Server (FMS) — primary streaming engine for RTMP-based video/audio sessions
- Wowza Media Server (WMS) — secondary transcoding/repackaging layer for iOS delivery
- PHP/MySQL web backend — portal logic, user management, media metadata
- FFMPEG — frame capture pipeline for workaround video generation on iPhone 3
- Deployment era: 2008–2010, pre-WebRTC, H.264 licensing conflict active
Stack
- Frontend: HTML, CSS, JavaScript, Adobe Flash (ActionScript 2.0 / 3.0)
- Streaming client: ActionScript 3.0 — custom-built Flash interfaces for broadcast and conference
- Server-side streaming logic: Server-Side ActionScript (SSAS) on FMS
- Mobile bridge: Wowza Media Server with HLS repackaging
- Backend: PHP, MySQL
- Video processing: FFMPEG
Features
- RTMP live streaming with Flash-based client interfaces
- Multi-party audio/video conferencing (up to 10 participants)
- On-demand media upload and playback
- iOS streaming via FMS → WMS bridge with HLS output
- iPhone 3 video workaround: camera-to-video pipeline via FFMPEG frame capture
My Contribution
- Designed and implemented all Flash UI components (broadcast panels, conference room interface, media player) in ActionScript 3.0
- Developed full Server-Side ActionScript layer on FMS: stream routing, session management, client event handling
- Engineered the FMS → WMS → iOS bridge pipeline to deliver live streams to iPhone/BlackBerry devices, bypassing H.264 licensing constraints of the era
- Implemented iPhone 3 pseudo-video workaround: repurposed the device still camera at 13 fps, packaged frame sequence into a live video stream using FFMPEG
- Extended and refactored existing PHP portal functionality: user flows, media management, API integrations
- Produced HTML/CSS page layouts and maintained visual consistency across Flash-embedded and standard web views
- Contributed to overall site and Flash component visual design
Engineering Highlights
H.264 / iOS streaming constraint (2009–2010). The “H.264 war” made direct RTMP-to-iOS streaming from FMS impossible. Rather than blocking mobile support, I designed a stream-bridging architecture: FMS handled the primary RTMP stream, WMS acted as a repackaging node converting it to HLS for iOS consumption. This required SSAS-level stream relay logic on FMS and Wowza-side configuration to maintain stream continuity and latency within acceptable bounds.
iPhone 3 — no video capture hardware support. The device physically lacked video recording capability at the OS level. Root-cause analysis pointed to hardware/API limitations rather than a solvable software path. The solution applied cross-layer thinking: hijack the still camera API, drive it at 13 fps via automation, and feed raw frames into FFMPEG for real-time H.264 encoding and stream muxing. The result was a functioning — if unconventional — live video source from a device that officially couldn’t record video.
ActionScript class architecture refactor. The existing Flash codebase had grown without structure. I redesigned the class hierarchy to cleanly separate UI components, network communication, and stream management logic — reducing coupling and enabling new conference features to be developed without destabilizing existing broadcast functionality.
Technologies
ActionScript 2.0, ActionScript 3.0, Server-Side ActionScript (SSAS), Adobe Flash Media Server (FMS), Wowza Media Server (WMS), FFMPEG, PHP, MySQL, JavaScript, HTML, CSS
