C++ SDK QoE Ads
This guide is for integrating the C++-based MediaMelon Custom Player SDK
Step 1: MediaMelon SDK Files
#include "cpp_mmsmartstreaming.h"Step 2: Register and Initialise the MediaMelon Player SDK
string component = "component";
string deviceOS = "Linux";
MMSmartStreaming::registerMMSmartStreaming("PLAYER_NAME", "CUSTOMER_ID", component, "SUBSCRIBER_ID","DOMAIN_NAME","SUBSCRIBER_TYPE", "SUBSCRIBER_TAG");
MMSmartStreaming::reportPlayerInfo("PLAYER_BRAND", "PLAYER_MODEL", "PLAYER_VERSION");
MMSmartStreaming::reportDeviceInfo("DEVICE_BRAND", "DEVICE_MODEL", deviceOS,"DEVICE_OS_VERSION", "TELECOM_OPERATOR",<screenWidth:int>,<screenHeight:int>,"DEVICE_TYPE");
//Set content metadata of the video and initialise the session as shown below
MMContentMetadata contentMetadata;
contentMetadata.setAssetInfo("ASSET_ID", "ASSET_NAME", "VIDEO_ID");
contentMetadata.setContentType("CONTENT_TYPE");
contentMetadata.setDrmProtection("DRM_PROTECTION");
contentMetadata.setEpisodeNumber("EPISODE_NUMBER");
contentMetadata.setGenre("GENRE");
contentMetadata.setSeason("SEASON");
contentMetadata.setSeriesTitle("SERIES_TITLE");
MMSmartStreaming::getInstance().initializeSession(QBRModeDisabled,"MEDIA_URL","META_URL", contentMetadata, NULL);Step 3: Report Custom, Network & Presentation Information
Custom Metadata:
Network Type:
Enum Value
Description
Presentation Information:
Step 4: Report Player State & Actions
Playback Initiation:
Player State:
Enum value
Description
Playback Position:
Seek Complete:
Buffering:
Error:
Chunk Request:
Download Rate:
Frame Loss:
Step 5: Report Advertisement Analytics
Ad Info:
Property
Type
Description
Ad State:
Enum value
Description
Ad Playback Time:
Ad Error:
Ad Buffering:
Last updated