diff options
-rw-r--r-- | videodecoder/VideoDecoderAVC.cpp | 6 | ||||
-rw-r--r-- | videodecoder/VideoDecoderBase.cpp | 2 |
2 files changed, 8 insertions, 0 deletions
diff --git a/videodecoder/VideoDecoderAVC.cpp b/videodecoder/VideoDecoderAVC.cpp index 077710c..283442e 100644 --- a/videodecoder/VideoDecoderAVC.cpp +++ b/videodecoder/VideoDecoderAVC.cpp @@ -722,6 +722,12 @@ void VideoDecoderAVC::updateFormatInfo(vbp_data_h264 *data) { if (data->codec_data->crop_bottom > 0) height -= data->codec_data->crop_bottom; + if(data->codec_data->crop_left > 0) + width -= data->codec_data->crop_left; + + if(data->codec_data->crop_right > 0) + width -= data->codec_data->crop_right; + ITRACE("updateFormatInfo: current size: %d x %d, new size: %d x %d", mVideoFormatInfo.width, mVideoFormatInfo.height, width, height); diff --git a/videodecoder/VideoDecoderBase.cpp b/videodecoder/VideoDecoderBase.cpp index 6d214bb..9de8631 100644 --- a/videodecoder/VideoDecoderBase.cpp +++ b/videodecoder/VideoDecoderBase.cpp @@ -1221,6 +1221,7 @@ Decode_Status VideoDecoderBase::getRawDataFromSurface(VideoRenderBuffer *renderB if (strcasecmp(mVideoFormatInfo.mimeType,"video/avc") == 0 || strcasecmp(mVideoFormatInfo.mimeType,"video/h264") == 0) { cropHeight = mVideoFormatInfo.height; + cropWidth = mVideoFormatInfo.width; } int32_t size = cropWidth * cropHeight * 3 / 2; @@ -1654,6 +1655,7 @@ void VideoDecoderBase::setRenderRect() { if (strcasecmp(mVideoFormatInfo.mimeType,"video/avc") == 0 || strcasecmp(mVideoFormatInfo.mimeType,"video/h264") == 0) { rect.height = mVideoFormatInfo.height; + rect.width = mVideoFormatInfo.width; } VADisplayAttribute render_rect; |