diff options
author | Xin Wang <xin1.wang@intel.com> | 2016-09-02 21:10:27 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2016-09-02 21:10:27 +0000 |
commit | bffa535c566e8b97ac8ce27409ed2167b23ddbbe (patch) | |
tree | 2ee48c92ceaef29e17c122429fea094101e18277 | |
parent | a52f51b47a1bcfda71c7a515e7b9cb089df15dae (diff) | |
parent | f65456900efeec41316ca944b4721de5f15cde08 (diff) | |
download | libmix-bffa535c566e8b97ac8ce27409ed2167b23ddbbe.tar.gz |
Fixed the timestamp mismatching issue for 2 GTS cases. am: 9696c226d8 am: 1e083c95d5
am: f65456900e
Change-Id: Ic15054f8edfa0d99b6e42650fa44c9dd2000d75b
-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; }; |