fix for b/4126624 Widevine DRM client not sending heartbeats

Added some missing parameters to the heartbeat message, found in end-to-end
testing with youtube.  Also enabled heartbeats on client builds.

Change-Id: I445fb0cb168e63a041f0ecf828eaad493143a648
This commit is contained in:
Jeffrey Tinker
2011-03-25 13:57:21 -07:00
parent ba5fa0ef57
commit 18617b93c6
9 changed files with 53 additions and 14 deletions

View File

@@ -44,14 +44,25 @@ void WVMInfoListener::onInfo(const DrmInfoEvent &event)
mServerUrl = event.getMessage();
else if (event.getType() == MessageType_HeartbeatPeriod)
mPeriod = atoi(event.getMessage());
else if (event.getType() == MessageType_AssetId)
mAssetId = atoi(event.getMessage());
else if (event.getType() == MessageType_DeviceId)
mDeviceId = event.getMessage();
else if (event.getType() == MessageType_StreamId)
mStreamId = event.getMessage();
else if (event.getType() == MessageType_UserData) {
mUserData = event.getMessage();
mHaveInfo = true;
}
}
void WVMInfoListener::configureHeartbeat()
{
// send the first time we have all the info
if (mSession && mServerUrl.size() && mPeriod != -1) {
if (mSession && mHaveInfo) {
//LOGD("WVMMediaSource::calling WV_ConfigureHeartbeat()");
WV_ConfigureHeartbeat(mSession, mServerUrl, mPeriod);
WV_ConfigureHeartbeat(mSession, mServerUrl, mPeriod, mAssetId,
mDeviceId, mStreamId, mUserData);
mSession = NULL;
}
}