Getting started
Welcome to the SmartLib developer hub. You'll find comprehensive guides and documentation to help you start working with SmartLib as quickly as possible.
SmartLib provides advanced streaming features and is able to feed Broadpeak’s analytics platform with video player's statistics. It can be used to enhance Broadpeak CDN, umbrellaCDN, nanoCDN and Ad Insertion solutions.
SmartLib can collect player metrics (startup time, buffering number and duration, layer changes, bitrate...) and send this information to Broadpeak Analytics solution (aka BkA100).
If Broadpeak CDN is used, SmartLib can also be used to retrieve the streaming URL and handle the session lifecycle (CDN session handling).
In addition, SmartLib can be used for advanced features such as:
- keepalive and teardown if the Broadpeak CDN is used (optimization of resources)
- ad insertion and ad tracking
- real-time monitoring
- nanoCDN discovery and session handling if the Broadpeak multicast ABR solution is used
- Diversity if Broadpeak multi-CDN technology is used
How to use this documentation
Integration guides
Depending on the integration you need, you will have to follow several guides. Please refer to the integration guides table to know which guides you need.
The minimum integration is the Broadpeak CDN integration. It will help you to implement a session lifecycle that allows to create sessions on the Broadpeak CDN with advanced options (CDN session handling), to get the final streaming URL used by the player and to free CDN resources through a stop method (keepalive & teardown).
In addition, you can add features such as:
- Player metrics: follow Analytics integration guides
- Ad insertion and ad tracking: follow Ad insertion integration guides
- Real-time Monitoring: follow Real-time monitoring integration guides
- Combined with Broadpeak CDN integration: provide real-time device and session data
- Combined with Analytics integration: provide real-time player metrics data
- Combined with nanoCDN integration: provide real-time nanoCDN multicast data
- nanoCDN discovery and session handling: follow nanoCDN integration guides
- The integration can be done with or without player metrics. Depending on your case, you will have to follow or not the player integration guide.
- Diversity multi-CDN: follow Diversity integration guides
Find more details about all these features in the Feature overview part.
The player integration guide is mandatory in case of Analytics integration, Analytics only integration and Ad insertion integration.
We provide an Analytics only integration, meaning that you can make use of the Analytics solution (aka BkA100) to receive player metrics without a Broadpeak CDN to stream your contents. In that case, follow Analytics only integration guides.
If you need more than one type of integration, you will need to follow all the guides for each integration. Some guides are the same for several integrations.
For instance, to get an analytics and nanoCDN integration, follow both Analytics integration and nanoCDN integration guides.
Integration | Features | Guides |
---|---|---|
Broadpeak CDN integration | CDN session handling Keepalive & teardown | Project setup Session handling |
Analytics integration | CDN session handling Keepalive & teardown Player metrics | Project setup Session handling Player integration |
Analytics only integration | Player metrics | Project setup Analytics only Player integration |
Ad insertion integration | CDN session handling Keepalive & teardown Player metrics Ad insertion Ad tracking | Project setup Session handling Player integration Ad insertion |
Real-time monitoring integration | Real-time monitoring CDN session handling Keepalive & teardown Player metrics(*) nanoCDN discovery and session handling(*) | Project setup Session handling Real-time monitoring Player integration(*) nanoCDN(*)(**) |
nanoCDN integration(**) | CDN session handling Keepalive & teardown nanoCDN discovery and session handling Player metrics(*) | Project setup Session handling nanoCDN(**) Player integration(*) |
Diversity integration(**) | CDN session handling Keepalive & teardown Diversity multi-CDN Player metrics(*) | Project setup Session handling Diversity(**) Player integration(*) |
(*) optional
(**) restricted
Features overview
SmartLib includes several features enabling a deeper integration with the CDN, as:
- CDN session handling: create a session on the CDN, retrieve a streaming URL, set advanced session options, cleanly close a session on the CDN
- Keepalive & teardown: send requests to optimize the number of concurrent sessions, reduce ghost sessions on your Broadpeak CDN and avoid loosing player metrics
- Player metrics: attach the player to the current session to listen to events (playing event, buffering event...) and calculate metrics (startup time, buffering number...)
- Ad insertion and ad tracking: activate the ad insertion workflow, request the Broadpeak manifest manipulator (aka BkYou), set advanced ad parameters, listen to ad events (ad break begin, ad begin, ad skippable, ad end...), handle tracker callbacks from your ad provider, interact with third party ad libraries (Google PAL SDK, IAB Open Measurement SDK)
- Real-time Monitoring: monitor in real-time all of your devices running SmartLib and all of your nanoCDN on your Broadpeak monitoring solution (aka BkA200)
- nanoCDN discovery and session handling: auto-discovery or static discovery of your nanoCDN on the local network, create a session on the nanoCDN, retrieve a multicast or unicast streaming URL depending on the availability, listen to nanoCDN events and retrieve values
- Diversity multi-CDN: enhance your playback stability through failover and load-balancing features and your Broadpeak CDN selector (aka uCDN)
The nanoCDN and Diversity integration requires an authentication.
Please ask Broadpeak to get your access.