James Varndell – Bitmovin https://bitmovin.com Bitmovin provides adaptive streaming infrastructure for video publishers and integrators. Fastest cloud encoding and HTML5 Player. Play Video Anywhere. Wed, 22 May 2024 15:01:27 +0000 en-GB hourly 1 https://bitmovin.com/wp-content/uploads/2023/11/bitmovin_favicon.svg James Varndell – Bitmovin https://bitmovin.com 32 32 Highlights from RDK Tech Summit 2024 https://bitmovin.com/blog/rdk-tech-summit/ https://bitmovin.com/blog/rdk-tech-summit/#respond Fri, 03 May 2024 01:34:06 +0000 https://bitmovin.com/?p=280601 What is RDK? RDK stands for Reference Design Kit. It’s an open source software bundle for video, broadband and IoT devices. It’s commonly used in consumer devices which include video streaming apps, for example, set top boxes and is a popular development platform for service providers in the cable, satellite and OTT industries. What is...

The post Highlights from RDK Tech Summit 2024 appeared first on Bitmovin.

]]>

What is RDK?

RDK stands for Reference Design Kit. It’s an open source software bundle for video, broadband and IoT devices. It’s commonly used in consumer devices which include video streaming apps, for example, set top boxes and is a popular development platform for service providers in the cable, satellite and OTT industries.

What is the RDK Tech Summit?

The RDK Tech Summit is a live gathering for RDK members worldwide to discuss technical advancements, new releases and innovations. It consists of presentation sessions grouped into themes, with regular networking breaks for discussions. This year’s summit was in Amsterdam, hosted by Liberty Global and Infosys.

RDK Tech Summit 2024 logo
RDK Tech Summit 2024 logo – source rdkcentral.com

Highlights from RDK Tech Summit 2024

Sessions were themed on the topics of:

  • Connectivity: Next-Gen Networking
  • Entertainment: Cloud Strategies and Firebolt
  • Device Operations: Operational Monitoring & Test Automation
  • Sustainability

Highlights included:

  • The keynotes focused on collaboration, finding common challenges and working to solve them together. Liberty Global gave insight into how they build for, and support, a vast range of devices, across many years of manufacture. They highlighted the need for collaboration where there’s commonality and thinking about what’s common compared to differentiating your service.
  • There was a deep dive on Automatics which is a test automation platform for RDK. This can handle the automation of running tests across many different test cases. During networking discussions, this was a hot topic and we learnt that Automatics is in use by a major telco.
  • The Lightning team highlighted Lightning 3.0 with enhancements focused on performance, quality and a better developer experience. They also noted that Lightning was designed for lower power devices from the beginning, so it can achieve better performance than other recently popular development frameworks.
  • Comcast introduced a layered build system for RDK, allowing component layers to be built independently, including application, middleware and vendor layers. This can speed up development & build times compared to a single monolithic build.
  • Details about Firebolt 2.0 were shared together with Firebolt certifications and Firebolt Connect which is an automated test harness for apps running on RDK. 

Separately in the demonstration area Irdeto were showing their App Watch solution running on RDK. This aggregates apps and provides app launching functionality on RDK. 

Bitmovin’s RDK support

Bitmovin’s Playback supports the widest range of devices on the market today. This includes set top boxes. Bitmovin provides a common Player SDK which can be used across these platforms, enabling adaptive bitrate playback. 

A key challenge highlighted by many presenters & attendees was supporting the wide range of devices which consumers use today, some of which date back 5-7 years or more. It’s also not economically viable to scale engineering teams linearly with the growing number of devices that streaming services need to support. Leveraging a common video player across each device can increase the number of platforms which engineering teams can support, allowing them to focus on differentiating features ahead of common, core functionality. A vision which Bitmovin supports among the RDK community.

The data from Bitmovin’s annual Video Developer Report also illustrates the challenge of supporting multiple generations and a constant stream of new playback devices. When asked about the challenges video developers are facing, “Playback on all devices” is a mainstay near the top of the list, coming in at #3 in our most recent survey. 17% of respondents said they are currently supporting playback on RDK-powered set top boxes and another 9% said they planned to begin supporting them in the coming year. 

Bitmovin are a member of the RDK Open-Source Community and regularly attend RDK events including Tech Summits & Global Summits.

If you’d like to learn more about RDK and how Bitmovin can help, you can let us know in the comments, ask questions in the Bitmovin Community or contact us here

Related Links

RDK website

RDK Tech Summit 2024 website

Bitmovin Player SDK – RDK support

Bitmovin Player SDK – set top box support

The post Highlights from RDK Tech Summit 2024 appeared first on Bitmovin.

]]>
https://bitmovin.com/blog/rdk-tech-summit/feed/ 0
Bitmovin’s Stream Lab – The Latest Approach to Stream Testing, Support and Playback https://bitmovin.com/blog/streamlab-addressing-device-fragmentation/ Thu, 21 Mar 2024 16:35:31 +0000 https://bitmovin.com/?p=219303 Launching & managing a streaming service in today’s market can be a bit overwhelming, but it’s not for the reasons around the workflow that you’d normally think about. It’s actually about the number of devices you and your team have the capability of supporting. Audience reach is essential for any business and one major piece...

The post Bitmovin’s Stream Lab – The Latest Approach to Stream Testing, Support and Playback appeared first on Bitmovin.

]]>

Launching & managing a streaming service in today’s market can be a bit overwhelming, but it’s not for the reasons around the workflow that you’d normally think about. It’s actually about the number of devices you and your team have the capability of supporting. Audience reach is essential for any business and one major piece that is often overlooked is the difficulty around testing, supporting, and maintaining those devices to guarantee that you’re delivering the highest quality of experience with a Player on all of your supported platforms. This is an all too common occurrence in the industry and one we’ll address in this blog by going into: 

  • The current state of streaming device fragmentation
  • The two stream testing methods that are available for companies
  • What Bitmovin is doing to make developers’ lives easier
  • How you and your team can support more devices with less effort

Addressing Streaming Device Fragmentation

How many devices do I need to support for my streams?

The devices on the market that audiences are using to stream content are growing rapidly, especially when you account for older models and new ones arriving on the market. Streaming Device makers don’t show any signs of slowing down and are continuously upgrading or introducing new products for users to take advantage of, which can affect the streaming services trying to engage viewer segments. Here is a quick snapshot of just the major devices and platforms viewers stream from:

Streaming Device Fragmentation_Current Device Landscape_Graphic_Brand Logos

The current Landscape of Streaming Device Fragmentation

From phones, browsers, and TV suppliers to cars, USB devices, and game consoles, the ever-expanding device growth seems to have no end, and it’s becoming the norm.

Showing the strain it is taking on the streaming industry, another great example of streaming device fragmentation is how leading services support over 25 devices across 12 different platforms, which corresponds with what we’ve seen in the responses from our annual Video Developer Report and can be viewed in the graph below.

stream testing - Bitmovin

If streaming device fragmentation wasn’t concerning, viewer expectations for a better quality of experience across devices continue to rise, and from a study done by Parks Associates, the average household uses more than four different devices at any given moment. A bad viewing experience on any one of these platforms can risk poor press, negative app reviews, and even churn to other streaming services. 

Viewer Expectations of Available Streaming Devices_Pie Chart

Viewer Expectations of Available Streaming Devices

Soon enough, it will be unmanageable and difficult for any streaming service to support and create a good user experience across all devices, as they would have to physically own them to test the streaming experience.

What are the current ways to support more streaming devices?

There are two ways in which streaming services can guarantee user viewing experiences; manual testing & automated testing of their player on each device.

Streaming Device Testing Processes_Workflow Illustration

Standard Stream Testing Processes for devices

Both come at a high cost in terms of time and salaries, especially manual testing, as it requires your in-house or external agency team to build out a testing regimen that they must physically do and observe on a regular basis. Automated testing also comes at a high expense, as you would build it from scratch in-house or acquire a barebones solution. In the long term, this option tends to become more cost-effective & stable as you don’t constantly have your team dedicated to doing just that and let the automation do its thing. The major problem, however, is that you & your team must build out these testing parameters for each and every use case and device type that you intend to support, as both options for an automated testing solution don’t come preset with anything and require Q&A expertise and detailed knowledge of streaming video technology.

What is Stream Lab and how does it simplify my stream testing workflow

Now that we’ve gotten through the nitty-gritty of streaming device fragmentation, user demand, and current testing approaches, let’s get to the good news – there is light at the end of the tunnel. Testing has never been harder and more complex with all the issues identified. We saw and heard the need, rolled up our sleeves, and developed Stream Lab, which has been live for about 2 years now with over 2000 stream tests done weekly on actual devices. Check out our feature one sheet and also a quick video walkthrough of Stream Lab on the Bitmovin Dashboard below.

James Varndell, Director of Product Management – Playback, providing a walkthrough of Stream Lab

How we do it

Through partnerships with device makers, we were already testing our Player on physical devices in real streaming environments to guarantee the quality & functionality we were able to deliver to our clients. We also built out the use cases, as we’ve worked on many different workflows and were able to populate the needs across each device that our Player supports easily. Transitioning this and making it accessible on the Bitmovin Dashboard to our clients is where the major work came in, and since its launch, we have made !

Streaming Device Testing Process with Bitmovin Streamlab_Workflow Illustration

Stream testing process for devices with Bitmovin Stream lab

Stream Lab was created to simplify your workflow and life as it makes testing, supporting, and managing playback on more devices easier. You and your team have full control over the testing scenarios, it comes pre-populated with use cases, doesn’t require you to have a large team and there is no need for extensive video knowledge. The best part of all is that it’s 100% automated and enables you to test with our industry-leading player that helps guarantee your audience has the best streaming experience on the platforms you want to test. All it takes is to follow the setup guidelines and submit your stream for the device you want to test on, and it will automatically set your stream for testing immediately and keep testing the stream on the device every two weeks.

Testing DRM-protected streams that are geo-fenced with VPN

DRM-protected content can now be tested across the devices available within Bitmovin’s Stream Lab, even if the content is limited in location, as it now supports the use of VPNs. This update enables broadcasters and streaming services to test and ensure smooth playback of geo-fenced content from anywhere in the world. This new feature ensures compliance with regional licensing laws and shows how DRM-protected streams function during Playback, providing a reliable and efficient means for testing devices without supporting them officially to guarantee both security and quality of service.

You can check out how to set it up in our developer docs on adding a new stream and also learn more about testing with specific DRM configurations and geo-fenced content.

Adding Quality of Experience metrics to testing functionality

Along with Bitmovin’s Stream Lab stream testing on actual devices, you can now visualize the Quality of Experience (QoE) metrics with our latest update. This innovative feature allows streaming platforms to delve into detailed analyses of their streams, examining pivotal aspects such as startup time, bitrate, buffering, error incidents, and more on the actual device. By integrating these metrics, Stream Lab offers an unparalleled ability for development teams to better understand their content’s performance across various conditions and devices. This granular insight allows platforms to support devices more easily and understand how their viewers experience their content, enabling them to enhance playback support where necessary.

Benefits of Stream Lab

Streaming services that use Stream Lab stand to see many benefits, but if we had to pick a favorite is that it essentially ensures quality of experience. Through the testing, you can ensure a greater viewer experience for your audience on the devices you test, which will ultimately help avoid churn. As it saves your team time and resources developing the use cases, they are able to prioritize other tasks that could be essential to your offering. It will also help your team and company save on budget, as you will be able to support more devices without needing more overhead. 


If you would like to try Stream Lab, sign up for a 30-day free trial today.

The post Bitmovin’s Stream Lab – The Latest Approach to Stream Testing, Support and Playback appeared first on Bitmovin.

]]>
Device Fragmentation is Changing How Streaming Services Support More Devices https://bitmovin.com/blog/device-fragmentation-is-changing-how-streaming-services-support-more-devices/ Tue, 05 Jul 2022 16:35:00 +0000 https://staging.bitmovin.com/?p=236619 The Bitmovin video developer report has been a survey we’ve released every year for the past 5 years and with each one, we’ve seen device fragmentation become a hot topic as the number of video devices that developers tell us they are building for increases. 2021 was no different as you can see from the image below,...

The post Device Fragmentation is Changing How Streaming Services Support More Devices appeared first on Bitmovin.

]]>
The Bitmovin video developer report has been a survey we’ve released every year for the past 5 years and with each one, we’ve seen device fragmentation become a hot topic as the number of video devices that developers tell us they are building for increases. 2021 was no different as you can see from the image below, where we saw developers highlight over 23 different devices they were looking to deploy their streams on.

stream testing - Bitmovin

One, if not the main, driver of this is due to the number of viewers that use these platforms and devices. From a recent study done by Parksassociates that Bitmovin participated in, data shows that households have access to and use more than 4 different devices to watch streaming video. This study is specifically done with data from the US, but from our experience with our clients, we’ve seen this to be true across each region.

How Device fragmentation is a major challenge for developers

It would be simple for every streaming service and its developers if every household used the same 4 devices for playback, but that will never be the case due to upgrades in versions and competitiveness on the market. Instead, the landscape is fragmented with Smart TVs (ex. Samsung, LG & Hisense), Connected TV devices (ex. Apple TV, Roku & Chromecast), mobile devices, and game consoles. This is also affected by viewers around the world since when they purchase these devices, they tend to keep them for longer periods of time, which in turn expands the device versions that will be under the responsibility of developers to continue to support as they add newer models to the mix. Additionally, there is no standardization across devices which doesn’t benefit development teams as this means they have to take care of multiple players, operating systems and code sets.

Teams have a few choices at their disposal to tackle this issue which are:

  • Deploying the native player on each device
  • Grouping together players through 1 open source option
  • Deploying a commercial player that can be used across all devices
stream testing - Bitmovin

Deploying a native player such as AVPlayer for iOS, ExoPlayer for Android or AVPlay for Samsung TVs is good as you know the player will work for that specific format, however, this also creates issues by each player having a different structure and not presenting a unified experience. Additionally, developers will need to build their integrations and features on top of the native players, such as ad integrations and the UI which will take more time to complete. The second option is to group together players through an open source option for specific platforms and the best example of this is a player like ShakaPlayer, which gives devs the ability to use the same player in multiple areas for their streaming service. The third and easiest option for support and monitoring is to deploy a unified player that goes across all devices using a similar framework so teams can do more and cover more devices. The first two options can cause challenges for developers because both the developer experience and playback capabilities can vary significantly between each player technology while the third option is good all around but comes at a cost as it’s not open source like the others.

Developing for Quality Playback and Multiple Formats

To provide a high-quality playback experience on all major devices where viewers are watching today, you’ll need to have and build up expertise for each native player and understand the different capabilities each SDK brings to the table. A good example of this is offline streaming, a premium feature that can increase revenue as Paramount+ has done, but is a different development experience across iOS and Android due to the development environment and APIs being different. In our experience at Bitmovin, this complexity multiplies when you consider edge cases, which in the case of a feature such as offline download can include expiring tokens and wifi-only downloading. Even though this example is just around playback on Mobile, it can easily be expanded to use cases across the device spectrum of each device and the overall effect it has on the developer experience.

If you’re a team of 5 or fewer, this could be overwhelming and you may need to make tradeoffs in the number of devices you can support, or the feature set you aim to build for each platform. Of course, there are some extremely skilled small teams out there supporting many devices, but this is not the norm in the industry. From what we have seen over the years, this rings true as smaller groups tend to have issues developing for and maintaining multiple feature sets and the quality of experience across many devices as they are spread too thin. Larger teams tend to have different issues but of a similar scope where they can maintain support for many devices but then it takes time away from other projects such as the design & UX of your app or service.

What is a unified developer experience?

The developer experience is something I touched on previously but it would be good to define that further and why it’s important for the teams of streaming services. In regards to the player specifically, many of the options out there are free or have a cost associated and come with some direction but there is always a limitation on documentation or having a question that often takes time to get answered by the open source community or commercial team. Some of the items that we always get asked for at Bitmovin and have found essential for small to large development teams as they directly help and make their lives easier include:

  • Getting started guides
  • API documentation
  • Tutorials
  • Code samples
  • Clear road map & regular release notes
  • FAQs
  • Walkthrough solution wizards
stream testing - Bitmovin

The main thing across all of these items is consistency which in turn will make it simpler and faster to deploy across all devices as it reduces context switching time and ensures each device is as maintainable as any other, empowering a unified developer experience.

How Testing affects quality and the developer experience

Testing is also a major piece to concentrate on when defining the support structure for each device playback is offered and this can either be taken care of by the development team or offloaded to a QA function. This is an item that can directly affect developers when supporting and deploying on devices, as well as viewers and their quality of experience. Depending on what your team decided to support, getting access to every device where viewers are watching today can be a real challenge, particularly if you follow most streaming services and support Smart TVs back to 2016/17. Aside from trawling refurb or auction sites to obtain older devices, defining use cases and testing on them can be difficult. Manual testing is extremely time-consuming and one that a lot of teams try to avoid but we’ve seen it’s commonly used to cover the vast range of Smart TVs. 

Alternatives include device farms where you can get time-limited access to a device but you must then build your own test cases and process the results. This is where we’ve seen test automation tailored for video, with pre-populated use cases that can be tested on physical devices is the most efficient approach and even made it a feature of our Player called Stream Lab. it is the first automated stream testing solution that helps you guarantee quality playback functionality. To learn more about it and what we’re doing to help streaming services with testing, check out our Bitmovin Stream Lab blog.

Conclusion

As we’ve seen from the data, viewer expectations are increasing with households using a greater variety of devices to watch video. For development teams, building and maintaining support for a wide range of devices can be a challenge because developer experiences are different on each device type. Having access to a unified developer experience can save a lot of time and increase the number of devices which can be supported by small teams. For larger teams, this frees up time for other projects such as improving the user or viewer experience

If you’d like to see how Bitmovin is enabling development teams to support and stream on the most devices on market, sign up for a free trial to check out Bitmovin’s unified developer experience.

The post Device Fragmentation is Changing How Streaming Services Support More Devices appeared first on Bitmovin.

]]>
Applying Playlist APIs to Bitmovin’s v3 Mobile Player SDK https://bitmovin.com/blog/mobile-player-sdk-playlist-api/ Thu, 26 May 2022 10:00:01 +0000 https://bitmovin.com/?p=171190 Bitmovin’s video player is available for nearly all devices, platforms, and implementations. As the number of use cases and devices grows on a global scale, it’s imperative for a video player to be supported on as many devices as possible and enable development teams to launch services quickly. Bitmovin’s Player empowers developers by providing reference APIs...

The post Applying Playlist APIs to Bitmovin’s v3 Mobile Player SDK appeared first on Bitmovin.

]]>
Bitmovin’s video player is available for nearly all devices, platforms, and implementations. As the number of use cases and devices grows on a global scale, it’s imperative for a video player to be supported on as many devices as possible and enable development teams to launch services quickly. Bitmovin’s Player empowers developers by providing reference APIs which connect seamlessly into a streaming service’s internal workflows, or with an SDK implementation. This helps in verticals such as e-learning, health and fitness, and others that need developer-friendly, easy-to-use tools which ensure video playback quality so developer teams can focus on tailoring the user experience for their audience. 
Through this focus and all of the hard work from our mobile player team, it has culminated in the official launching of version 3 for our Mobile Player SDKs. V3’s release includes major new features such as:

  • New playlist API that enables gapless playback when transitioning between each stream
  • Complete control over individual streams within a playlist
  • Comprehensive offline playback functionality, including support for encrypted & tokenized streams
  • Absolute timestamps for live streams which synchronize the user experience
  • Intuitive Kotlin-first Android API design
  • Swift Package Manager support for iOS and tvOS
  • API workflow improvements including enhanced error handling & improved API documentation

The improvements brought by these updates, make the SDKs easier for OTT services to use and today, we will cover the state of launching a mobile-friendly video service and the latest solutions that Bitmovin’s v3 mobile player SDKs provide.

Bitmovin’s Mobile Player SDK Evolves to Support New Playback Requirements

Since the launch of the last major version, v2, we’ve received great feedback from the video development community, along with our client’s requests. Through each iteration, we always focus on embracing this feedback to further reduce developers’ and services’ time-to-market and increase the quality of experience within native apps (Android and iOS). As with any SaaS solution, we started by evaluating the player SDKs with a detailed specification phase and determined that there was an opportunity to improve underlying video architectures. 
With the improvements our player team has added, this latest iteration of the SDK continues our aim of enhancing the developer experience with simple and easy-to-use tools that can integrate into existing video workflows with significantly less code. As a result, developers that use our Mobile SDKs will be able to make their services more mobile-friendly and provide their audiences with the superior viewing experiences they expect and deserve.

The New Playlist API and How it Works

The first piece of the latest release is the new Playlist API. Before the launch of V3, playing back multiple sources sequentially incurred significant load times for mobile viewers. This is because the only way of loading in a new source was by running a full load workflow each time. We overcame this challenge with the playlist API, wherein upcoming sources are preloaded during the playback of any current source, thus enabling gapless playback when transitioning between sources.

Bitmovin Mobile Player SDK_Playlist API Workflow
Playlist API Workflow

The Playlist API allows sources to be prepared more dynamically without the need to create a completely new playback session every time a stream switch is required. This is further enhanced with automatic playlist buffering (prior to Player playback) to ensure a smoother overall experience.

Offline Playback and Absolute Timestamps

The next items in v3 are the update for the offline playback and absolute timestamps. Developers have had the ability to utilize offline playback on our Mobile SDKs for quite a while now, and with this release, we have improved that functionality by enabling developers to further encrypt and utilize tokenized streams when giving their audience the ability to download specific pieces of content.

stream testing - Bitmovin
Example of the data that would need to be in sync with the video

Additionally, absolute timestamps are another cool feature that gives developers the ability to synchronize their live data with the video feed. This gives audiences a better viewing experience so that when, for example, your favorite football team scores a goal, the data can be in sync with what is happening on the video playback, rather than seeing the score update first before seeing the goal scored on-screen.

Performance and Appearance

For v3, we focused on improving the overall experience that developers encounter when using our APIs. To help iOS developers integrate our SDKs faster, we added support for Swift Package Manager (SPM) for iOS and tvOS. For Android developers, we migrated to a Kotlin-first design in the Android native SDK to enable a more intuitive and cleaner implementation. The current Kotlin-documentation on Android is clearer, provides more information, and perhaps most importantly, is searchable.

Bitmovin Mobile Player SDK v3

Another step we took to improve the developer experience of our Android SDK, is the delivery of the source code of our public API, whereby developers can now consult external documentation much less frequently.

Monitoring

As events are a big part of interacting with the SDK, we have re-designed the event handling API on Android to offer a more intuitive and flexible way of handling event subscriptions with over 70 lines taken out of the boilerplate code. The new API follows our Kotlin-first approach without compromising on Java usability by allowing both Kotlin lambdas and typical Java-style lambdas to be used as event listeners. This allows developers to interact with the Android Player SDK in the programming style that they are most comfortable and proficient with.

Event Monitoring Workflow_Mobile Player SDK
Event Monitoring Workflow

This includes updated error reporting structures to improve the information provided to developers using the API. This also allows for the future addition of further descriptive information for developers to assist with integration projects and diagnostics.

V3 Provides an Improved Developer Experience

The goal of the v3 mobile player SDK was to improve the developer experience and create a better player workflow. The newer optimized and simpler Android & iOS API designs will help developers launch faster and with a better overall product. We also have and will continue to create in-depth documentation (v2 to v3 Player SDK migration guides for current clients), giving your teams the tools they need to deploy with ease and speed.
Want to test out the latest Bitmovin Mobile SDK? Sign up for our free trial today!

The post Applying Playlist APIs to Bitmovin’s v3 Mobile Player SDK appeared first on Bitmovin.

]]>