HTML5 and Legacy Flash Clients Compared

In the 2nd half of 2016, we started working on our new HTML5 recording client and infrastructure. The 1st beta was released in December 2016 and it relied on WebRTC. Our 2nd generation non-WebRTC video recording client was released in September 2017 and it relied on the Media Recorder API (not on WebRTC). The table below documents the most important differences between the new 2nd generation HTML5-based solution (non-WebRTC) and the initial Flash-based solution.

HTML5legacy Flash
Video and picture qualityUses the resolution specified in the loaded quality profile. The maximum possible picture quality of the webcam will be used and the bitrate will directly depend on this. Since the recorded data can be higher than the available bandwidth an upload screen might appear after the recording is stopped.Uses both the resolution and picture quality specified in the loaded quality profile. Since the recorded data can be higher than the available bandwidth an upload screen might appear after the recording is stopped.
Buffering mechanismBuffers the audio & video data locally allowing for high-quality recordings over slow connections.Buffers the audio & video data locally allowing for high-quality recordings over slow connections.
Initial video codecsVP8, VP9, or H.264H.264
Initial audio codecsOpus @ 48kHzNellymoser ASAO @ 44.1kHz
RequirementsSee Requirements and supported browsers.See Requirements and supported browsers.
Permissions needed in the browserChrome, Firefox, or Edge camera and microphone access.Flash Player’s camera and microphone access + Chrome or Firefox camera and microphone access.
Connection processThe client directly connects through WSS to the media server over port 443/TCP.The client directly connects through RTMPS to the media server over port 443/TCP.