am ba5fa0ef: Fixes for b/4149416:expired license refresh, b/4126624:heartbeats, b/4171055: inconsistent license modes Also includes b/3500025: A/V resync issues

* commit 'ba5fa0ef570f6ca3524f8158a23371528930f0fc':
  Fixes for b/4149416:expired license refresh, b/4126624:heartbeats, b/4171055: inconsistent license modes Also includes b/3500025: A/V resync issues
This commit is contained in:
Jeffrey Tinker
2011-03-25 10:13:54 -07:00
committed by Android Git Automerger
13 changed files with 332 additions and 83 deletions

View File

@@ -20,6 +20,7 @@
#include "AndroidConfig.h"
#include "WVStreamControlAPI.h"
#include "WVMInfoListener.h"
#include <media/stagefright/MediaExtractor.h>
#include <media/stagefright/DataSource.h>
#include <utils/RefBase.h>
@@ -59,6 +60,7 @@ private:
sp<MetaData> mFileMetaData;
sp<WVMFileSource> mFileSource;
sp<DataSource> mDataSource;
sp<WVMInfoListener> mInfoListener;
bool mHaveMetaData;

View File

@@ -0,0 +1,51 @@
/*
* Copyright (C) 2011 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef WVMINFO_LISTENER_H
#define WVMINFO_LISTENER_H
#include "AndroidConfig.h"
#include "WVMMediaSource.h"
#include <media/stagefright/DataSource.h>
#include "WVStreamControlAPI.h"
#include <utils/RefBase.h>
namespace android {
// Handles messages from the DRM plugin
class WVMInfoListener : public DrmManagerClient::OnInfoListener {
enum MessageType {
MessageType_HeartbeatServer = 4000,
MessageType_HeartbeatPeriod = 4001
};
public:
WVMInfoListener() : mPeriod(-1) {};
virtual void onInfo(const DrmInfoEvent &event);
void setSession(WVSession *session);
void configureHeartbeat();
private:
WVSession *mSession;
std::string mServerUrl;
int mPeriod;
};
} // namespace android
#endif // WVMINFO_LISTENER_H