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 solutions: Advanced CDN, multi-CDN, multicast ABR and Content personalization.
SmartLib can collect player metrics (startup time, buffering number and duration, layer changes, bitrate...) and send this information to Broadpeak Analytics Engine (aka ANA).
If Broadpeak Advanced CDN is used, SmartLib can also be used to retrieve the streaming URL and handle the session lifecycle (CDN session handling) with keepalive and teardown (optimization of resources).
In addition, SmartLib can be used for advanced features such as:
- ad insertion and ad tracking if the Broadpeak Content personalization solution is used
- real-time monitoring
- nanoCDN discovery and session handling if the Broadpeak multicast ABR solution is used
- Diversity if Broadpeak multi-CDN solution 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 Advanced CDN solution 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 Engine to receive player metrics without a Broadpeak Advanced 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: creates a session on the CDN, retrieves a streaming URL, sets advanced session options, cleanly closes a session on the CDN
- Keepalive & teardown: sends requests to optimize the number of concurrent sessions, reduces ghost sessions on your Broadpeak Advanced CDN and avoids losing player metrics
- Player metrics: attaches the player to the current session to listen to events (playing event, buffering event...) and calculates metrics (startup time, buffering number...)
- Ad insertion and ad tracking: activates the ad insertion workflow, requests the Broadpeak Manifest Manipulator Engine (aka MME), sets advanced ad parameters, listens to ad events (ad break begin, ad begin, ad skippable, ad end...), handles tracker callbacks from your ad provider, interacts with third party ad libraries (Google PAL SDK, IAB Open Measurement SDK)
- Real-time Monitoring: monitors in real-time all of your devices running SmartLib and all of your nanoCDN Agents on your Broadpeak Monitoring Portal (aka MPO)
- nanoCDN discovery and session handling: auto-discovery or static discovery of your nanoCDN Agents on the local network, creates a session on a nanoCDN Agent, retrieves a multicast or unicast streaming URL depending on the availability, listens to nanoCDN Agent events and retrieve values
- Diversity multi-CDN: enhances your playback stability through failover and load-balancing features and your Broadpeak multi-CDN solution
The nanoCDN and Diversity integration requires an authentication.
Please ask Broadpeak to get your access.