diff options
author | Xin Wang <xin1.wang@intel.com> | 2016-09-02 21:05:08 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2016-09-02 21:05:08 +0000 |
commit | 1e083c95d5273d8a46c68101be6dab2ed6c448f3 (patch) | |
tree | 2ee48c92ceaef29e17c122429fea094101e18277 | |
parent | dd20107a9932203f96b4a3059739dc92029ab1ce (diff) | |
parent | 9696c226d88ba911b96c4d2475b902bdc9d4a983 (diff) | |
download | libmix-1e083c95d5273d8a46c68101be6dab2ed6c448f3.tar.gz |
Fixed the timestamp mismatching issue for 2 GTS cases.android-7.1.2_r9android-7.1.2_r8android-7.1.2_r6android-7.1.2_r5android-7.1.2_r4android-7.1.2_r39android-7.1.2_r38android-7.1.2_r37android-7.1.2_r36android-7.1.2_r33android-7.1.2_r32android-7.1.2_r30android-7.1.2_r3android-7.1.2_r29android-7.1.2_r28android-7.1.2_r27android-7.1.2_r25android-7.1.2_r24android-7.1.2_r23android-7.1.2_r2android-7.1.2_r19android-7.1.2_r18android-7.1.2_r17android-7.1.2_r16android-7.1.2_r15android-7.1.2_r14android-7.1.2_r13android-7.1.2_r12android-7.1.2_r11android-7.1.2_r10android-7.1.2_r1nougat-mr2.3-releasenougat-mr2.2-releasenougat-mr2.1-releasenougat-mr2-security-releasenougat-mr2-releasenougat-mr2-pixel-releasenougat-mr2-dev
am: 9696c226d8
Change-Id: I2825ad8ecfbbd0c874614d7f9668a39bb55a8b08
-rw-r--r-- | videodecoder/VideoDecoderAVC.cpp | 6 | ||||
-rwxr-xr-x | videodecoder/VideoDecoderAVC.h | 1 |
2 files changed, 5 insertions, 2 deletions
diff --git a/videodecoder/VideoDecoderAVC.cpp b/videodecoder/VideoDecoderAVC.cpp index 283442e..f0e047e 100644 --- a/videodecoder/VideoDecoderAVC.cpp +++ b/videodecoder/VideoDecoderAVC.cpp @@ -28,7 +28,8 @@ VideoDecoderAVC::VideoDecoderAVC(const char *mimeType) : VideoDecoderBase(mimeType, VBP_H264), mToggleDPB(0), - mErrorConcealment(false){ + mErrorConcealment(false), + mAdaptive(false){ invalidateDPB(0); invalidateDPB(1); @@ -681,7 +682,7 @@ Decode_Status VideoDecoderAVC::startVA(vbp_data_h264 *data) { //Use high profile for all kinds of H.264 profiles (baseline, main and high) except for constrained baseline VAProfile vaProfile = VAProfileH264High; - if (mConfigBuffer.flag & WANT_ADAPTIVE_PLAYBACK) { + if ((mConfigBuffer.flag & WANT_ADAPTIVE_PLAYBACK) || mAdaptive) { // When Adaptive playback is enabled, turn off low delay mode. // Otherwise there may be a 240ms stuttering if the output mode is changed from LowDelay to Delay. enableLowDelayMode(false); @@ -741,6 +742,7 @@ void VideoDecoderAVC::updateFormatInfo(vbp_data_h264 *data) { if (VideoDecoderBase::alignMB(mVideoFormatInfo.width) != width || VideoDecoderBase::alignMB(mVideoFormatInfo.height) != height) { mSizeChanged = true; + mAdaptive = true; ITRACE("Video size is changed."); } mVideoFormatInfo.width = width; diff --git a/videodecoder/VideoDecoderAVC.h b/videodecoder/VideoDecoderAVC.h index 6129703..19135af 100755 --- a/videodecoder/VideoDecoderAVC.h +++ b/videodecoder/VideoDecoderAVC.h @@ -77,6 +77,7 @@ private: uint32_t mLastPictureFlags; VideoExtensionBuffer mExtensionBuffer; PackedFrameData mPackedFrame; + bool mAdaptive; }; |