summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorLajos Molnar <lajos@google.com>2014-11-06 11:00:00 -0800
committerLajos Molnar <lajos@google.com>2014-11-19 16:50:33 -0800
commitd9fd6317913c74e1c955eb31978c41e70d5810bc (patch)
tree1d1bf829c3b08327f770f839dd7c4062b56b1a51 /media
parent18899808001ddaea13fa4c5277502c96351f69a5 (diff)
downloadframeworks_av-d9fd6317913c74e1c955eb31978c41e70d5810bc.zip
frameworks_av-d9fd6317913c74e1c955eb31978c41e70d5810bc.tar.gz
frameworks_av-d9fd6317913c74e1c955eb31978c41e70d5810bc.tar.bz2
mediaplayer: request auto-frc for high quality avsync
Bug: 17383204 Change-Id: I7209305b4ff3c2386019d7a09d6a0536e9f21522
Diffstat (limited to 'media')
-rw-r--r--media/libmediaplayerservice/nuplayer/NuPlayer.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/media/libmediaplayerservice/nuplayer/NuPlayer.cpp b/media/libmediaplayerservice/nuplayer/NuPlayer.cpp
index 59b070c..dbc0441 100644
--- a/media/libmediaplayerservice/nuplayer/NuPlayer.cpp
+++ b/media/libmediaplayerservice/nuplayer/NuPlayer.cpp
@@ -33,6 +33,8 @@
#include "ATSParser.h"
+#include <cutils/properties.h>
+
#include <media/stagefright/foundation/hexdump.h>
#include <media/stagefright/foundation/ABuffer.h>
#include <media/stagefright/foundation/ADebug.h>
@@ -1201,6 +1203,17 @@ status_t NuPlayer::instantiateDecoder(bool audio, sp<Decoder> *decoder) {
notify->setInt32("generation", mVideoDecoderGeneration);
*decoder = new Decoder(notify, mSource, mRenderer, mNativeWindow);
+
+ // enable FRC if high-quality AV sync is requested, even if not
+ // queuing to native window, as this will even improve textureview
+ // playback.
+ {
+ char value[PROPERTY_VALUE_MAX];
+ if (property_get("persist.sys.media.avsync", value, NULL) &&
+ (!strcmp("1", value) || !strcasecmp("true", value))) {
+ format->setInt32("auto-frc", 1);
+ }
+ }
}
(*decoder)->init();
(*decoder)->configure(format);