diff -r b8a07bf0375b -r d7fb0e36deff gst-plugins-nuvdemux/nuvdemux/gstnuvdemux.c --- a/gst-plugins-nuvdemux/nuvdemux/gstnuvdemux.c Wed Dec 06 20:25:59 2006 +0000 +++ b/gst-plugins-nuvdemux/nuvdemux/gstnuvdemux.c Wed Dec 20 18:54:31 2006 +0000 @@ -720,12 +720,9 @@ goto done; } - if (h.i_timecode < 0) { - h.i_timecode = h.i_timecode * -1; - nuv->priv->time_diff = h.i_timecode; + if ((h.i_timecode < 0)) { + goto done; } - else - h.i_timecode += nuv->priv->time_diff; timestamp = h.i_timecode * GST_MSECOND; GST_BUFFER_TIMESTAMP (buf) = timestamp; @@ -774,7 +771,7 @@ break; } case 'S': - { + { switch (h.i_compression) { case 'V': GST_DEBUG_OBJECT (nuv, "sending new video segment: %d", h.i_timecode);