summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaheshwar Ajja <majja@codeaurora.org>2014-12-02 23:36:10 +0530
committerGerrit - the friendly Code Review server <code-review@localhost>2014-12-10 15:28:59 -0800
commit515b3bba80d235f489d6c8581d5100891b417125 (patch)
treeec66d30d724da31a5d645e6b32480d4595190075
parentc56a8e60af31e3ff405de70c7be700df0e90192e (diff)
downloadandroid_hardware_qcom_media-515b3bba80d235f489d6c8581d5100891b417125.tar.gz
android_hardware_qcom_media-515b3bba80d235f489d6c8581d5100891b417125.tar.bz2
android_hardware_qcom_media-515b3bba80d235f489d6c8581d5100891b417125.zip
mm-video-v4l2: vdec: streamoff while freeing first output buffer
Streaoff is being skipped if client sends commands loaded -> idle -> allocate output buffers -> loaded -> free output buffers -> get buffer requirements and results in failure. Do streamoff while client frees the first output buffer to resolve the issue. Do not streamoff when dynamic buffer mode is enabled. Change-Id: I45edd58d827b5706990d8bdf359661bd8eb691de
-rw-r--r--mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp b/mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp
index 2b31cebd..9d562c8b 100644
--- a/mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp
+++ b/mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp
@@ -4782,6 +4782,15 @@ OMX_ERRORTYPE omx_vdec::free_output_buffer(OMX_BUFFERHEADERTYPE *bufferHdr)
sizeof (vdec_bufferpayload));
if (!dynamic_buf_mode) {
+
+ if (streaming[CAPTURE_PORT]) {
+ if (stream_off(OMX_CORE_OUTPUT_PORT_INDEX)) {
+ DEBUG_PRINT_ERROR("STREAMOFF Failed");
+ } else {
+ DEBUG_PRINT_HIGH("STREAMOFF Successful");
+ }
+ }
+
#ifdef _ANDROID_
if (m_enable_android_native_buffers) {
if (!secure_mode) {