diff --git a/videodecoder/VideoDecoderAVC.cpp b/videodecoder/VideoDecoderAVC.cpp
index dbb13d4..2fd539f 100644
--- a/videodecoder/VideoDecoderAVC.cpp
+++ b/videodecoder/VideoDecoderAVC.cpp
@@ -153,7 +153,7 @@
     mCurrentPTS = buffer->timeStamp;
 
     //if (lastPTS != mCurrentPTS) {
-    if (isNewFrame(data)) {
+    if (isNewFrame(data, lastPTS == mCurrentPTS)) {
         // finish decoding the last frame
         status = endDecodingFrame(false);
         CHECK_STATUS("endDecodingFrame");
@@ -682,7 +682,7 @@
     return DECODE_SUCCESS;
 }
 
-bool VideoDecoderAVC::isNewFrame(vbp_data_h264 *data) {
+bool VideoDecoderAVC::isNewFrame(vbp_data_h264 *data, bool equalPTS) {
     if (data->num_pictures == 0) {
         ETRACE("num_pictures == 0");
         return true;
@@ -701,6 +701,11 @@
         // not the first slice, assume it is continuation of a partial frame
         // TODO: check if it is new frame boundary as the first slice may get lost in streaming case.
         WTRACE("first_mb_in_slice != 0");
+        if (!equalPTS) {
+            // return true if different timestamp, it is a workaround here for a streaming case
+            WTRACE("different PTS, treat it as a new frame");
+            return true;
+        }
     } else {
         if ((picData->pic_parms->CurrPic.flags & fieldFlags) == fieldFlags) {
             ETRACE("Current picture has both odd field and even field.");
diff --git a/videodecoder/VideoDecoderAVC.h b/videodecoder/VideoDecoderAVC.h
index 1794e03..339e05a 100644
--- a/videodecoder/VideoDecoderAVC.h
+++ b/videodecoder/VideoDecoderAVC.h
@@ -55,7 +55,7 @@
     Decode_Status startVA(vbp_data_h264 *data);
     void updateFormatInfo(vbp_data_h264 *data);
     Decode_Status handleNewSequence(vbp_data_h264 *data);
-    bool isNewFrame(vbp_data_h264 *data);
+    bool isNewFrame(vbp_data_h264 *data, bool equalPTS);
     int32_t getDPBSize(vbp_data_h264 *data);
 
 private:
