Release 6.0.0
-
Improved sub-second latency over WebRTC (testing showed as low as 200 ms)
-
New – BETA – Added support for ABR over mobile SDK. Note: requires minimum SDK version 6.0.0 and Growth Pro for
-
New – Added support for decoupled shared objects via mobile SDK Note: requires minimum SDK version 6.0.0
-
New – Mobile-friendly UI with server distribution
-
New – For a standalone server, the
cluster
plugin can be disabled by modifying thecluster.xml
file – see
- New – Autoscaling support added for Digital Ocean (using Terraform). Documentation here
- New – Cloudstorage support for Digital Ocean Spaces
- Updated – For better performance, VP8 is disabled by default. To enable VP8, modify
{red5pro}/conf/webrtc-plugin.properties
, changingrtc.video.codecs=H264_PMODE1
tortc.video.codecs=H264_PMODE1,VP8
(server needs to be restarted after making this change) - Fixed – Memory leaks with WebRTC publishing and subscribing
- Fixed – Autoscaling – issues in scaling relay and transcoder nodes
- Fixed – Autoscaling – issues in nodegroups with multiple transcoders
- Fixed – Autoscaling – multiple nodegroups not being utilized correctly
- Fixed – Autoscaling – Fix transcoder issues with rtc publishers and nacks
- Fixed – Autoscaling – Stream Manager may throw out of memory error if it receives too many “bad cookies”
- Fixed – Added handling for nalu type 12, h264 padded packets, being sent from some RTMP hardware encoders
- Fixed – Some iOS devices not able to broadcast higher than 720p with WebRTC
- Fixed – Recordings via iOS SDK started from landscape right front camera and swapped to back camera were dropping the landscape right front portion of the recording in MP4 post-processing
- Fixed – Duplicate Messages occasionally displayed in Shared Objects examples
- Fixed – Problems with Multiple Cameras and Safari (Mac and iOS)
- Fixed – Safari and Firefox do not show resolution in our stats display
Release 6.0.0 Server Performance Metrics
Tests were run against an AWS c5.large
instance (2 CPUs with 4GB memory, 2GB allocated to java_heap). We used our RTMP Bee, RTSP Bee, and RTC Bee clients to do load testing. Note – connections are added over the course of several minutes.
SUBSCRIBER TESTS
Publishing a 240p (426×240, 200 kbps) stream via RTMP, we were able to achieve the following while still maintaining quality of stream:
- 500 WebRTC subscribers
- 2,000 RTSP (mobile SDK) subscribers
- 1,200 RTMP subscribers
Publishing a 480p (854×480, 500kbps) stream via RTMP, we were able to achieve the following while still maintaining quality of stream:
- 300 WebRTC subscribers
- 1,200 RTSP subscribers
- 800 RTMP subscribers
Publishing a 720p (1280×720 1,500kbps) stream via RTMP, we were able to achieve the following while still maintaining quality of stream:
- 200 WebRTC subscribers
- 920 RTSP subscribers
- 600 RTMP subscribers
Publishing a 1080p (1920×1080 4,500kbps) stream via RTMP, we were able to achieve the following while still maintaining quality of stream:
- 130 WebRTC subscribers
- 800 RTSP subscribers
- 300 RTMP subscribers
PUBLISHER TESTS
The same server type (2 CPUs with 4GB memory, 2GB allocated to java_heap) can support approximately 30-40 240p RTC publishers (tested using the RTCBee Publisher test) OR 50-60 240p RTMP publishers (tested using the RTMP Bee Publisher test).
The same server type (2 CPUs with 4GB memory, 2GB allocated to java_heap) can support approximately 20 720p RTC publishers (tested using the RTCBee Publisher test) OR 40 720p RTMP publishers (tested using the RTMP Bee Publisher test).