diff --git a/camera/QCamera2/HAL3/QCamera3Channel.cpp b/camera/QCamera2/HAL3/QCamera3Channel.cpp
index 1074dea..69e3af4 100644
--- a/camera/QCamera2/HAL3/QCamera3Channel.cpp
+++ b/camera/QCamera2/HAL3/QCamera3Channel.cpp
@@ -322,6 +322,24 @@
 }
 
 /*===========================================================================
+ * FUNCTION   : getStreamTypeMask
+ *
+ * DESCRIPTION: Get bit mask of all stream types in this channel
+ *
+ * PARAMETERS : None
+ *
+ * RETURN     : Bit mask of all stream types in this channel
+ *==========================================================================*/
+uint32_t QCamera3Channel::getStreamTypeMask()
+{
+    uint32_t mask = 0;
+    for (int i = 0; i < m_numStreams; i++) {
+       mask |= (0x1 << mStreams[i]->getMyType());
+    }
+    return mask;
+}
+
+/*===========================================================================
  * FUNCTION   : getInternalFormatBuffer
  *
  * DESCRIPTION: return buffer in the internal format structure
diff --git a/camera/QCamera2/HAL3/QCamera3Channel.h b/camera/QCamera2/HAL3/QCamera3Channel.h
index b3e9812..0b6e547 100644
--- a/camera/QCamera2/HAL3/QCamera3Channel.h
+++ b/camera/QCamera2/HAL3/QCamera3Channel.h
@@ -67,6 +67,8 @@
     int32_t stop();
     int32_t bufDone(mm_camera_super_buf_t *recvd_frame);
 
+    uint32_t getStreamTypeMask();
+
     virtual int32_t registerBuffers(uint32_t num_buffers,
                         buffer_handle_t **buffers) = 0;
     virtual int32_t initialize() = 0;
diff --git a/camera/QCamera2/HAL3/QCamera3HWI.cpp b/camera/QCamera2/HAL3/QCamera3HWI.cpp
index eeb1f32..32d38ca 100644
--- a/camera/QCamera2/HAL3/QCamera3HWI.cpp
+++ b/camera/QCamera2/HAL3/QCamera3HWI.cpp
@@ -823,12 +823,7 @@
     }
 
     uint32_t frameNumber = request->frame_number;
-    rc = setFrameParameters(request->frame_number, request->settings);
-    if (rc < 0) {
-        ALOGE("%s: fail to set frame parameters", __func__);
-        pthread_mutex_unlock(&mMutex);
-        return rc;
-    }
+    uint32_t streamTypeMask = 0;
 
     meta = request->settings;
     if (meta.exists(ANDROID_REQUEST_ID)) {
@@ -853,6 +848,7 @@
     int blob_request = 0;
     for (size_t i = 0; i < request->num_output_buffers; i++) {
         const camera3_stream_buffer_t& output = request->output_buffers[i];
+        QCamera3Channel *channel = (QCamera3Channel *)output.stream->priv;
         sp<Fence> acquireFence = new Fence(output.acquire_fence);
 
         if (output.stream->format == HAL_PIXEL_FORMAT_BLOB) {
@@ -872,6 +868,14 @@
             pthread_mutex_unlock(&mMutex);
             return rc;
         }
+        streamTypeMask |= channel->getStreamTypeMask();
+    }
+
+    rc = setFrameParameters(request->frame_number, request->settings, streamTypeMask);
+    if (rc < 0) {
+        ALOGE("%s: fail to set frame parameters", __func__);
+        pthread_mutex_unlock(&mMutex);
+        return rc;
     }
 
     /* Update pending request list and pending buffers map */
@@ -2555,14 +2559,15 @@
  *              framework
  *
  * PARAMETERS :
+ *   @frame_id  : frame number for this particular request
  *   @settings  : frame settings information from framework
- *
+ *   @streamTypeMask : bit mask of stream types on which buffers are requested
  *
  * RETURN     : success: NO_ERROR
  *              failure:
  *==========================================================================*/
 int QCamera3HardwareInterface::setFrameParameters(int frame_id,
-                                                  const camera_metadata_t *settings)
+                    const camera_metadata_t *settings, uint32_t streamTypeMask)
 {
     /*translate from camera_metadata_t type to parm_type_t*/
     int rc = 0;
@@ -2586,6 +2591,14 @@
         return BAD_VALUE;
     }
 
+    /* Update stream id mask where buffers are requested */
+    rc = AddSetParmEntryToBatch(mParameters, CAM_INTF_META_STREAM_TYPE_MASK,
+                                sizeof(streamTypeMask), &streamTypeMask);
+    if (rc < 0) {
+        ALOGE("%s: Failed to set stream type mask in the parameters", __func__);
+        return BAD_VALUE;
+    }
+
     if(settings != NULL){
         rc = translateMetadataToParameters(settings);
     }
diff --git a/camera/QCamera2/HAL3/QCamera3HWI.h b/camera/QCamera2/HAL3/QCamera3HWI.h
index 53f8cc3..148e9eb 100644
--- a/camera/QCamera2/HAL3/QCamera3HWI.h
+++ b/camera/QCamera2/HAL3/QCamera3HWI.h
@@ -121,7 +121,7 @@
     void getMetadataVendorTagOps(vendor_tag_query_ops_t* ops);
     void dump(int fd);
 
-    int setFrameParameters(int frame_id, const camera_metadata_t *settings);
+    int setFrameParameters(int frame_id, const camera_metadata_t *settings, uint32_t streamTypeMask);
     int translateMetadataToParameters(const camera_metadata_t *settings);
     camera_metadata_t* translateCbMetadataToResultMetadata(metadata_buffer_t *metadata,
                             nsecs_t timestamp, int32_t request_id);
diff --git a/camera/QCamera2/HAL3/QCamera3PostProc.cpp b/camera/QCamera2/HAL3/QCamera3PostProc.cpp
index 86e6432..a8eaa33 100644
--- a/camera/QCamera2/HAL3/QCamera3PostProc.cpp
+++ b/camera/QCamera2/HAL3/QCamera3PostProc.cpp
@@ -811,15 +811,19 @@
         QCamera3Stream *srcStream =
             srcChannel->getStreamByHandle(recvd_frame->bufs[i]->stream_id);
         if (srcStream != NULL) {
-            if (srcStream->isTypeOf(CAM_STREAM_TYPE_SNAPSHOT) ||
-                srcStream->isTypeOf(CAM_STREAM_TYPE_NON_ZSL_SNAPSHOT) ||
-                srcStream->isTypeOf(CAM_STREAM_TYPE_OFFLINE_PROC)) {
+            switch (srcStream->getMyType()) {
+            case CAM_STREAM_TYPE_SNAPSHOT:
+            case CAM_STREAM_TYPE_OFFLINE_PROC:
                 main_stream = srcStream;
                 main_frame = recvd_frame->bufs[i];
-            } else if (srcStream->isTypeOf(CAM_STREAM_TYPE_PREVIEW) ||
-                       srcStream->isTypeOf(CAM_STREAM_TYPE_POSTVIEW)) {
+                break;
+            case CAM_STREAM_TYPE_PREVIEW:
+            case CAM_STREAM_TYPE_POSTVIEW:
                 thumb_stream = srcStream;
                 thumb_frame = recvd_frame->bufs[i];
+                break;
+            default:
+                break;
             }
         }
     }
diff --git a/camera/QCamera2/HAL3/QCamera3Stream.cpp b/camera/QCamera2/HAL3/QCamera3Stream.cpp
index 044854b..39d8cb9 100644
--- a/camera/QCamera2/HAL3/QCamera3Stream.cpp
+++ b/camera/QCamera2/HAL3/QCamera3Stream.cpp
@@ -690,25 +690,6 @@
 }
 
 /*===========================================================================
- * FUNCTION   : isTypeOf
- *
- * DESCRIPTION: helper function to determine if the stream is of the queried type
- *
- * PARAMETERS :
- *   @type    : stream type as of queried
- *
- * RETURN     : true/false
- *==========================================================================*/
-bool QCamera3Stream::isTypeOf(cam_stream_type_t type)
-{
-    if (mStreamInfo != NULL && (mStreamInfo->stream_type == type)) {
-        return true;
-    } else {
-        return false;
-    }
-}
-
-/*===========================================================================
  * FUNCTION   : getFrameOffset
  *
  * DESCRIPTION: query stream buffer frame offset info
@@ -794,7 +775,8 @@
  *
  * RETURN     : type of stream
  *==========================================================================*/
-cam_stream_type_t QCamera3Stream::getMyType() {
+cam_stream_type_t QCamera3Stream::getMyType() const
+{
     if (mStreamInfo != NULL) {
         return mStreamInfo->stream_type;
     } else {
diff --git a/camera/QCamera2/HAL3/QCamera3Stream.h b/camera/QCamera2/HAL3/QCamera3Stream.h
index 4e89f73..d000c4c 100644
--- a/camera/QCamera2/HAL3/QCamera3Stream.h
+++ b/camera/QCamera2/HAL3/QCamera3Stream.h
@@ -71,8 +71,7 @@
     static void dataNotifyCB(mm_camera_super_buf_t *recvd_frame, void *userdata);
     static void *dataProcRoutine(void *data);
     uint32_t getMyHandle() const {return mHandle;}
-    cam_stream_type_t getMyType();
-    bool isTypeOf(cam_stream_type_t type);
+    cam_stream_type_t getMyType() const;
     int32_t getFrameOffset(cam_frame_len_offset_t &offset);
     int32_t getFrameDimension(cam_dimension_t &dim);
     int32_t getFormat(cam_format_t &fmt);
diff --git a/camera/QCamera2/stack/common/cam_intf.h b/camera/QCamera2/stack/common/cam_intf.h
index bf7b493..a2d2224 100644
--- a/camera/QCamera2/stack/common/cam_intf.h
+++ b/camera/QCamera2/stack/common/cam_intf.h
@@ -475,6 +475,7 @@
     INCLUDE(CAM_INTF_META_TONEMAP_CURVE_RED,        cam_tonemap_curve_t,         1);
     INCLUDE(CAM_INTF_META_TONEMAP_MODE,             uint8_t,                     1);
     INCLUDE(CAM_INTF_META_FLASH_MODE,               uint8_t,                     1);
+    INCLUDE(CAM_INTF_META_STREAM_TYPE_MASK,         uint32_t,                    1);
 } parm_type_t;
 
 
diff --git a/camera/QCamera2/stack/common/cam_types.h b/camera/QCamera2/stack/common/cam_types.h
index 58d77df..45e7b6e 100644
--- a/camera/QCamera2/stack/common/cam_types.h
+++ b/camera/QCamera2/stack/common/cam_types.h
@@ -984,6 +984,8 @@
      * compensate for lens shading for this frame */
     CAM_INTF_META_LENS_SHADING_MAP,
     CAM_INTF_META_PRIVATE_DATA,
+    /* Indicates streams this request needs buffers on */
+    CAM_INTF_META_STREAM_TYPE_MASK,
     CAM_INTF_PARM_MAX
 } cam_intf_parm_type_t;
 
