summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/wifi-display/source/WifiDisplaySource.h
diff options
context:
space:
mode:
authorAndreas Huber <andih@google.com>2012-08-30 16:04:34 -0700
committerAndreas Huber <andih@google.com>2012-08-30 16:04:34 -0700
commitb6777017a68ed473d61cc9d6e77c34fd5cd301cc (patch)
tree541c36b023ebc5f9553506fc627fe7331671db48 /media/libstagefright/wifi-display/source/WifiDisplaySource.h
parentbcf09f8c995221e75c7cd328f25c7cc6d2b5f7c9 (diff)
downloadframeworks_av-b6777017a68ed473d61cc9d6e77c34fd5cd301cc.zip
frameworks_av-b6777017a68ed473d61cc9d6e77c34fd5cd301cc.tar.gz
frameworks_av-b6777017a68ed473d61cc9d6e77c34fd5cd301cc.tar.bz2
Implement the source->sink(!) keep alive the wfd specs mandate...
Change-Id: I388d9911ebd243aa9c13a13ec3683e76898470a6
Diffstat (limited to 'media/libstagefright/wifi-display/source/WifiDisplaySource.h')
-rw-r--r--media/libstagefright/wifi-display/source/WifiDisplaySource.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/media/libstagefright/wifi-display/source/WifiDisplaySource.h b/media/libstagefright/wifi-display/source/WifiDisplaySource.h
index cd9939b..f56347d 100644
--- a/media/libstagefright/wifi-display/source/WifiDisplaySource.h
+++ b/media/libstagefright/wifi-display/source/WifiDisplaySource.h
@@ -49,6 +49,7 @@ private:
kWhatStop,
kWhatReapDeadClients,
kWhatPlaybackSessionNotify,
+ kWhatKeepAlive,
};
struct ResponseID {
@@ -79,8 +80,10 @@ private:
AString mRemoteIP;
AString mLocalIP;
int32_t mLocalPort;
+ int32_t mPlaybackSessionID;
};
- KeyedVector<int32_t, ClientInfo> mClientIPs;
+ // by sessionID.
+ KeyedVector<int32_t, ClientInfo> mClientInfos;
bool mReaperPending;
@@ -94,6 +97,7 @@ private:
status_t sendM3(int32_t sessionID);
status_t sendM4(int32_t sessionID);
status_t sendM5(int32_t sessionID);
+ status_t sendM16(int32_t sessionID);
status_t onReceiveM1Response(
int32_t sessionID, const sp<ParsedMessage> &msg);
@@ -107,6 +111,9 @@ private:
status_t onReceiveM5Response(
int32_t sessionID, const sp<ParsedMessage> &msg);
+ status_t onReceiveM16Response(
+ int32_t sessionID, const sp<ParsedMessage> &msg);
+
void registerResponseHandler(
int32_t sessionID, int32_t cseq, HandleRTSPResponseFunc func);
@@ -161,6 +168,7 @@ private:
AString *response, int32_t cseq, int32_t playbackSessionID = -1ll);
void scheduleReaper();
+ void scheduleKeepAlive(int32_t sessionID);
int32_t makeUniquePlaybackSessionID() const;