Multiple fast seeks of audio only seeks once - gstbaseparse same index entry
Hi, I am running gstreamer 1.18.6 on wpewebkit and experience an issue with carrying out multiple forward seeks in quick succession. I am debugging in gstreamer and found something strange: each seek time requested (e.g. 10s, then 20s) returns the same index entry from gstbaseparse.c. See logs:
0:00:5 3.811120079 1688 0x11523c10 DEBUG baseparse gstbaseparse.c:4539:gst_base_parse_find_offset: found index entry for 0:00:10.626931066 at 0:00:04.048979440, offset 161959
0:00:54.000858782 1688 0x11523c10 DEBUG baseparse gstbaseparse.c:4539:gst_base_parse_find_offset: found index entry for 0:00:20.888155555 at 0:00:04.048979440, offset 161959
I have checked logs for the index entry being added but it seems to only be called once, and I assume this would be for one time value:
0:00:53.809345856 1688 0x117949e0 LOG baseparse gstbaseparse.c:1996:gst_base_parse_add_index_entry: Adding key=1 index entry 0:00:04.048979440 @ offset 0x000278a7
In the working case (when I carry out the seeks with a longer delay between them), I see each seek time is associated with a different index entry:
0:13:18.005031154 1688 0x11523c10 DEBUG baseparse gstbaseparse.c:4539:gst_base_parse_find_offset: found index entry for 0:00:11.097131066 at 0:00:04.048979440, offset 161959
0:13:18.590774672 1688 0x11523c10 DEBUG baseparse gstbaseparse.c:4539:gst_base_parse_find_offset: found index entry for 0:00:21.358355555 at 0:00:06.138775280, offset 245551
Does anyone know if this is intended - are multiple time values meant to be associated with a single index entry, or is this the cause of my issue? If not intended, perhaps some help in identifying why the different time values are finding the same index entry.
Thank you.