diff --git a/gst-libs/gst/codecparsers/gsth264parser.c b/gst-libs/gst/codecparsers/gsth264parser.c
index 73968db936..30d6aea495 100644
--- a/gst-libs/gst/codecparsers/gsth264parser.c
+++ b/gst-libs/gst/codecparsers/gsth264parser.c
@@ -1343,7 +1343,13 @@ gst_h264_parser_identify_nalu (GstH264NalParser * nalparser,
       gst_h264_parser_identify_nalu_unchecked (nalparser, data, offset, size,
       nalu);
 
-  if (res != GST_H264_PARSER_OK || nalu->size == 1)
+  if (res != GST_H264_PARSER_OK)
+    goto beach;
+
+  /* The two NALs are exactly 1 byte size and are placed at the end of an AU,
+   * there is no need to wait for the following */
+  if (nalu->type == GST_H264_NAL_SEQ_END ||
+      nalu->type == GST_H264_NAL_STREAM_END)
     goto beach;
 
   off2 = scan_for_start_codes (data + nalu->offset, size - nalu->offset);