From b5d99d162f4e82d7d1786506ec557c406f470b76 Mon Sep 17 00:00:00 2001 From: Andreas Huber Date: Wed, 12 Sep 2012 16:48:23 -0700 Subject: [PATCH] Better video bandwidth utilization by not lying about the frame rate. log network bandwidth used (for data traffic). Change-Id: I043018624b3f02d94fa9c0cb9d15a6b2f2bd2eab --- media/libstagefright/wifi-display/source/Converter.cpp | 2 +- media/libstagefright/wifi-display/source/PlaybackSession.cpp | 11 ++++++++++- media/libstagefright/wifi-display/source/PlaybackSession.h | 2 ++ 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/media/libstagefright/wifi-display/source/Converter.cpp b/media/libstagefright/wifi-display/source/Converter.cpp index 0e10b8d04d..c4845e3e1e 100644 --- a/media/libstagefright/wifi-display/source/Converter.cpp +++ b/media/libstagefright/wifi-display/source/Converter.cpp @@ -116,7 +116,7 @@ status_t Converter::initEncoder() { mOutputFormat->setInt32("bitrate", audioBitrate); } else { mOutputFormat->setInt32("bitrate", videoBitrate); - mOutputFormat->setInt32("frame-rate", 60); + mOutputFormat->setInt32("frame-rate", 30); mOutputFormat->setInt32("i-frame-interval", 3); // Iframes every 3 secs } diff --git a/media/libstagefright/wifi-display/source/PlaybackSession.cpp b/media/libstagefright/wifi-display/source/PlaybackSession.cpp index 41beba4278..c38a3009d2 100644 --- a/media/libstagefright/wifi-display/source/PlaybackSession.cpp +++ b/media/libstagefright/wifi-display/source/PlaybackSession.cpp @@ -193,7 +193,8 @@ WifiDisplaySource::PlaybackSession::PlaybackSession( mNumSRsSent(0), mSendSRPending(false), mFirstPacketTimeUs(-1ll), - mHistoryLength(0) + mHistoryLength(0), + mTotalBytesSent(0ll) #if LOG_TRANSPORT_STREAM ,mLogFile(NULL) #endif @@ -1023,6 +1024,14 @@ ssize_t WifiDisplaySource::PlaybackSession::appendTSData( } else { mNetSession->sendRequest( mRTPSessionID, rtp, mTSQueue->size()); + + mTotalBytesSent += mTSQueue->size(); + int64_t delayUs = ALooper::GetNowUs() - mFirstPacketTimeUs; + + if (delayUs > 0ll) { + ALOGV("approx. net bandwidth used: %.2f Mbit/sec", + mTotalBytesSent * 8.0 / delayUs); + } } mTSQueue->setInt32Data(mRTPSeqNo - 1); diff --git a/media/libstagefright/wifi-display/source/PlaybackSession.h b/media/libstagefright/wifi-display/source/PlaybackSession.h index cd0308e018..88f6ea97a5 100644 --- a/media/libstagefright/wifi-display/source/PlaybackSession.h +++ b/media/libstagefright/wifi-display/source/PlaybackSession.h @@ -127,6 +127,8 @@ private: List > mHistory; size_t mHistoryLength; + uint64_t mTotalBytesSent; + #if LOG_TRANSPORT_STREAM FILE *mLogFile; #endif -- 2.11.0