summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorAndreas Huber <andih@google.com>2012-10-03 09:50:51 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2012-10-03 09:50:51 -0700
commitaa3fbc5c3892b8aeee33c45b70e4d5a93d171fa5 (patch)
treee4e269f852653dffc5a92504f87aacc5da122c44 /media
parent9c28dc2d80c008b9f57ec6c9ab0a7135dcc8bb03 (diff)
parent4a114f03a79e157cab9396f986ef947df2255f1d (diff)
downloadframeworks_av-aa3fbc5c3892b8aeee33c45b70e4d5a93d171fa5.zip
frameworks_av-aa3fbc5c3892b8aeee33c45b70e4d5a93d171fa5.tar.gz
frameworks_av-aa3fbc5c3892b8aeee33c45b70e4d5a93d171fa5.tar.bz2
Merge "Increase polling frequency again temporarily to fix A/V issues" into jb-mr1-dev
Diffstat (limited to 'media')
-rw-r--r--media/libstagefright/wifi-display/source/Converter.cpp29
-rw-r--r--media/libstagefright/wifi-display/source/PlaybackSession.cpp9
2 files changed, 24 insertions, 14 deletions
diff --git a/media/libstagefright/wifi-display/source/Converter.cpp b/media/libstagefright/wifi-display/source/Converter.cpp
index 6f336c7..f044666 100644
--- a/media/libstagefright/wifi-display/source/Converter.cpp
+++ b/media/libstagefright/wifi-display/source/Converter.cpp
@@ -242,16 +242,18 @@ void Converter::onMessageReceived(const sp<AMessage> &msg) {
#if ENABLE_SILENCE_DETECTION
if (!mIsVideo) {
if (IsSilence(accessUnit)) {
- if (!mInSilentMode) {
- int64_t nowUs = ALooper::GetNowUs();
-
- if (mFirstSilentFrameUs < 0ll) {
- mFirstSilentFrameUs = nowUs;
- } else if (nowUs >= mFirstSilentFrameUs + 1000000ll) {
- mInSilentMode = true;
- ALOGI("audio in silent mode now.");
- break;
- }
+ if (mInSilentMode) {
+ break;
+ }
+
+ int64_t nowUs = ALooper::GetNowUs();
+
+ if (mFirstSilentFrameUs < 0ll) {
+ mFirstSilentFrameUs = nowUs;
+ } else if (nowUs >= mFirstSilentFrameUs + 10000000ll) {
+ mInSilentMode = true;
+ ALOGI("audio in silent mode now.");
+ break;
}
} else {
if (mInSilentMode) {
@@ -326,7 +328,7 @@ void Converter::scheduleDoMoreWork() {
}
mDoMoreWorkPending = true;
- (new AMessage(kWhatDoMoreWork, id()))->post(mIsVideo ? 10000ll : 5000ll);
+ (new AMessage(kWhatDoMoreWork, id()))->post(1000ll);
}
status_t Converter::feedEncoderInputBuffers() {
@@ -404,9 +406,8 @@ status_t Converter::doMoreWork() {
sp<ABuffer> buffer = new ABuffer(size);
buffer->meta()->setInt64("timeUs", timeUs);
- if (!mIsVideo) {
- ALOGV("audio time %lld us (%.2f secs)", timeUs, timeUs / 1E6);
- }
+ ALOGV("[%s] time %lld us (%.2f secs)",
+ mIsVideo ? "video" : "audio", timeUs, timeUs / 1E6);
memcpy(buffer->data(),
mEncoderOutputBuffers.itemAt(bufferIndex)->base() + offset,
diff --git a/media/libstagefright/wifi-display/source/PlaybackSession.cpp b/media/libstagefright/wifi-display/source/PlaybackSession.cpp
index c91b4c8..ffdafed 100644
--- a/media/libstagefright/wifi-display/source/PlaybackSession.cpp
+++ b/media/libstagefright/wifi-display/source/PlaybackSession.cpp
@@ -919,13 +919,22 @@ status_t WifiDisplaySource::PlaybackSession::addVideoSource() {
source->setUseAbsoluteTimestamps();
+#if 1
sp<RepeaterSource> videoSource =
new RepeaterSource(source, 30.0 /* rateHz */);
+#endif
+#if 1
size_t numInputBuffers;
status_t err = addSource(
true /* isVideo */, videoSource, true /* isRepeaterSource */,
&numInputBuffers);
+#else
+ size_t numInputBuffers;
+ status_t err = addSource(
+ true /* isVideo */, source, false /* isRepeaterSource */,
+ &numInputBuffers);
+#endif
if (err != OK) {
return err;