mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-28 03:00:35 +00:00
adaptivedemux: Also consider more seek flags as "snap" seeks
In the case of KEY_UNIT and TRICKMODE_KEY_UNITS seeks, we want to "snap" to the closest fragment. Without this, we end up pushing out a segment which does not match the first fragment timestamp being pushed out, resulting in one or more buffers being eventually dropped because they are out of segment.
This commit is contained in:
parent
2aaeb061c4
commit
e4c955e4d7
1 changed files with 5 additions and 3 deletions
|
@ -1249,9 +1249,11 @@ gst_adaptive_demux_can_seek (GstAdaptiveDemux * demux)
|
|||
return klass->seek != NULL;
|
||||
}
|
||||
|
||||
#define IS_SNAP_SEEK(f) (f & (GST_SEEK_FLAG_SNAP_BEFORE | \
|
||||
GST_SEEK_FLAG_SNAP_AFTER | \
|
||||
GST_SEEK_FLAG_SNAP_NEAREST))
|
||||
#define IS_SNAP_SEEK(f) (f & (GST_SEEK_FLAG_SNAP_BEFORE | \
|
||||
GST_SEEK_FLAG_SNAP_AFTER | \
|
||||
GST_SEEK_FLAG_SNAP_NEAREST | \
|
||||
GST_SEEK_FLAG_TRICKMODE_KEY_UNITS | \
|
||||
GST_SEEK_FLAG_KEY_UNIT))
|
||||
#define REMOVE_SNAP_FLAGS(f) (f & ~(GST_SEEK_FLAG_SNAP_BEFORE | \
|
||||
GST_SEEK_FLAG_SNAP_AFTER | \
|
||||
GST_SEEK_FLAG_SNAP_NEAREST))
|
||||
|
|
Loading…
Reference in a new issue