diff options
author | Andreas Huber <andih@google.com> | 2012-09-12 16:48:23 -0700 |
---|---|---|
committer | Andreas Huber <andih@google.com> | 2012-09-13 09:33:00 -0700 |
commit | dca352880e210e0ca0ff39de074540d3640ecfab (patch) | |
tree | ff2a085a8ce30faf696ae2eacd06e2da4a2605d7 /media/libstagefright/wifi-display/source | |
parent | a438123bd96c7faf145683876702387efe5628d9 (diff) | |
download | frameworks_av-dca352880e210e0ca0ff39de074540d3640ecfab.zip frameworks_av-dca352880e210e0ca0ff39de074540d3640ecfab.tar.gz frameworks_av-dca352880e210e0ca0ff39de074540d3640ecfab.tar.bz2 |
Better video bandwidth utilization by not lying about the frame rate.
log network bandwidth used (for data traffic).
Change-Id: I043018624b3f02d94fa9c0cb9d15a6b2f2bd2eab
Diffstat (limited to 'media/libstagefright/wifi-display/source')
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 0e10b8d..c4845e3 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 41beba4..c38a300 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 cd0308e..88f6ea9 100644 --- a/media/libstagefright/wifi-display/source/PlaybackSession.h +++ b/media/libstagefright/wifi-display/source/PlaybackSession.h @@ -127,6 +127,8 @@ private: List<sp<ABuffer> > mHistory; size_t mHistoryLength; + uint64_t mTotalBytesSent; + #if LOG_TRANSPORT_STREAM FILE *mLogFile; #endif |