Radiant Media Player is committed to act to preserve nature while conducting its business. As part of this effort Radiant Media Player has joined the Greening of Streaming organisation as a founding member.
The streaming media chain, from content capture to transcoding, hosting, CDN delivery and running end-devices can be a taxing industry for the environment. Not only there is an energy cost to charging a smartphone to play video content but running a streaming service also has a notable carbon footprint (running the servers that prepare, host and deliver content).
While Radiant Media Player is only involved at the end of the streaming media chain, the viewing device, we as a player, can also participate in reducing the carbon footprint of consuming media content over the Internet.
consumeLessEnergysetting to reduce energy consumption of a viewer device
With Radiant Media Player 7.3 we have introduced the
consumeLessEnergy setting. This setting, when enabled, will allow the player to query the viewer device capabilities and opt for a configuration where we can be sure that only the
required energy to play content is used by the end device. Examples:
This can become especially relevant in a world where AVC/H.264 is no longer the vastly dominant codec and where DASH or HLS manifest may hold data for 2, 3 if not more codecs for video (AVC/H.264 VP9, AV1, HEVC/H.265) or audio (AAC, AC-3, Opus).
Of course there is a cost to the viewing experience. Even if a little cost. Using settings to reduce energy consumption, whether it is on the client-side or the server-side will always cause performance to be degraded. This is why this setting is not enabled by default. While we believe that this performance cost is acceptable in light of reducing the carbon footprint of a streaming service, we also believe it is up to the viewer to decide to use energy-saving or best performance settings.
This kind of energy-saving optimisation is made possible thanks to the Media Capabilities API and some internal player logic around ABR algorithm.
When set to
true, the player will opt for a energy-saving configuration to stream content (where possible). Default:
consumeLessEnergy setting is only available for DASH streaming
capLevelToPlayerSizesetting to reduce bitrate delivered to the player
As a complement to the
consumeLessEnergy setting we have another optimisation available in our player through the
capLevelToPlayerSize setting (enabled by default for DASH and HLS). This setting limits the number of renditions
usable in adaptive bitrate streaming (ABR) depending on player size (width & height).
This means that a 640x360 windowed-player will, for example, not render a 1920x1080 rendition if a lower resolution rendition is available (like a 640x360 rendition - all renditions can still be selected manually regardless of
consumeLessEnergy settings). In fullscreen however, where the player size is generally larger, the player will have the option to use higher resolution assuming enough bandwidth is available.
This is great because it helps you save server-side bandwidth while still providing a good user experience. Indeed, there is very little benefit in throwing a 1920x1080 high bitrate rendition in a 640x360 windowed player.
This can also help reduce your streaming service carbon footprint and is also good news for lower-end devices or for viewers experiencing fluctuating network conditions as the player will require less CPU/bandwidth to render ABR streams.