The following instructions provide guidance for implementation across all 2.x SDKs.
If you are implementing a 1.x version of the SDK, you can download the 1.x Developers Guides here: Download SDKs.
Identify when the bitrate changes during media playback and create the MediaObject
instance using the QoS information.
QoSObject variables:
These variables are only required if you are planning to track QoS.
Variable | Description | Required |
---|---|---|
bitrate |
Current bitrate | Yes |
startupTime |
Startup time | Yes |
fps |
FPS value | Yes |
droppedFrames |
Number of dropped frames | Yes |
QoS object creation:
MediaObject qosObject =
MediaHeartbeat.createQoSObject(<BITRATE>,
<STARTUP_TIME>,
<FPS>,
<DROPPED_FRAMES>);
Make sure that getQoSObject()
method returns the most updated QoS information.
When playback switches bitrates, call the BitrateChange
event in the Media Heartbeat instance:
public void onBitrateChange(Observable observable, Object data) {
_heartbeat.trackEvent(MediaHeartbeat.Event.BitrateChange, null, null);
}
Update the QoS object and call the bitrate change event on every bitrate change. This provides the most accurate QoS data.