diff options
Diffstat (limited to 'gst/rawparse')
-rw-r--r-- | gst/rawparse/gstrawparse.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gst/rawparse/gstrawparse.c b/gst/rawparse/gstrawparse.c index 9714bba2..2f1ffba1 100644 --- a/gst/rawparse/gstrawparse.c +++ b/gst/rawparse/gstrawparse.c @@ -440,6 +440,11 @@ gst_raw_parse_src_event (GstPad * pad, GstEvent * event) gst_raw_parse_convert (rp, format, stop, GST_FORMAT_BYTES, &stop); if (ret) { + /* Seek on a frame boundary */ + start -= start % rp->framesize; + if (stop != -1) + stop += rp->framesize - stop % rp->framesize; + event = gst_event_new_seek (rate, GST_FORMAT_BYTES, flags, start_type, start, stop_type, stop); |