diff options
author | Andreas Huber <andih@google.com> | 2013-03-26 13:52:43 -0700 |
---|---|---|
committer | Andreas Huber <andih@google.com> | 2013-03-26 14:51:36 -0700 |
commit | eaf5381f38bf6c3ecb5fe32a8351c26a447549f5 (patch) | |
tree | 95d799dea772d0a7246881dd6f56614e72897f36 /media/libstagefright/wifi-display/source/RepeaterSource.cpp | |
parent | cd77d4a1d38b7609a03f6826a1ff5fa7c98aa34f (diff) | |
download | frameworks_av-eaf5381f38bf6c3ecb5fe32a8351c26a447549f5.zip frameworks_av-eaf5381f38bf6c3ecb5fe32a8351c26a447549f5.tar.gz frameworks_av-eaf5381f38bf6c3ecb5fe32a8351c26a447549f5.tar.bz2 |
Adapt frame rate instead of keeping that constant and tweaking bitrate
Change-Id: I889abbbe1237e1a8fdd7135cdc91a2e9728ff39b
Diffstat (limited to 'media/libstagefright/wifi-display/source/RepeaterSource.cpp')
-rw-r--r-- | media/libstagefright/wifi-display/source/RepeaterSource.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/media/libstagefright/wifi-display/source/RepeaterSource.cpp b/media/libstagefright/wifi-display/source/RepeaterSource.cpp index 72be927..cc8dee3 100644 --- a/media/libstagefright/wifi-display/source/RepeaterSource.cpp +++ b/media/libstagefright/wifi-display/source/RepeaterSource.cpp @@ -27,6 +27,25 @@ RepeaterSource::~RepeaterSource() { CHECK(!mStarted); } +double RepeaterSource::getFrameRate() const { + return mRateHz; +} + +void RepeaterSource::setFrameRate(double rateHz) { + Mutex::Autolock autoLock(mLock); + + if (rateHz == mRateHz) { + return; + } + + if (mStartTimeUs >= 0ll) { + int64_t nextTimeUs = mStartTimeUs + (mFrameCount * 1000000ll) / mRateHz; + mStartTimeUs = nextTimeUs; + mFrameCount = 0; + } + mRateHz = rateHz; +} + status_t RepeaterSource::start(MetaData *params) { CHECK(!mStarted); |