commit 0bd0c37216736fefe9a8dfad7f21224f034c90e0
Author: Duncan Palmer <dpalmer@digisoft.tv>
Date:   Fri Jan 2 10:46:46 2015 +1000

    VFVOD-369 gsth264parse: Make periodic SPS/PPS sending work after a
    backwards seek.
    
    Upstream bug: https://bugzilla.gnome.org/show_bug.cgi?id=742212

diff --git a/gst/videoparsers/gsth264parse.c b/gst/videoparsers/gsth264parse.c
index 697ff87..fc46920 100644
--- a/gst/videoparsers/gsth264parse.c
+++ b/gst/videoparsers/gsth264parse.c
@@ -1703,10 +1703,12 @@ gst_h264_parse_pre_push_frame (GstBaseParse * parse, GstBaseParseFrame * frame)
   if (h264parse->interval > 0 || h264parse->push_codec) {
     GstClockTime timestamp = GST_BUFFER_TIMESTAMP (buffer);
     guint64 diff;
+    gboolean initial_frame = FALSE;
 
     /* init */
     if (!GST_CLOCK_TIME_IS_VALID (h264parse->last_report)) {
       h264parse->last_report = timestamp;
+      initial_frame = TRUE;
     }
 
     if (h264parse->idr_pos >= 0) {
@@ -1726,7 +1728,7 @@ gst_h264_parse_pre_push_frame (GstBaseParse * parse, GstBaseParseFrame * frame)
           GST_TIME_ARGS (diff));
 
       if (GST_TIME_AS_SECONDS (diff) >= h264parse->interval ||
-          h264parse->push_codec) {
+          initial_frame || h264parse->push_codec) {
         GstBuffer *codec_nal;
         gint i;
         GstClockTime new_ts;
@@ -2125,6 +2127,8 @@ gst_h264_parse_event (GstBaseParse * parse, GstEvent * event)
               || segment->applied_rate != 1.0))
         h264parse->do_ts = FALSE;
 
+      h264parse->last_report = GST_CLOCK_TIME_NONE;
+
       res = GST_BASE_PARSE_CLASS (parent_class)->sink_event (parse, event);
       break;
     }
