After testing out numerous of "html video players" and even making our own making sure to wait for events such as player.oncanplaythrough to fire before even attempting to start videos we've had the same issue for months now.
Mainly we offer 3 resolutions for same video (720, 1080, 4k) and out of the 3, 2 have the seeking issue where trying to skip to any time or even trying to fast forward by x amount of seconds with arrow keys would just bring the video back to 00:00 time this only happens on 1080 and 4k resolutions and after refreshing the page it just works as normal afterwards
we've tried pretty much anything we could think of to combat this but with no luck
ffmpeg line for 1080 and 4k (these files are webm but same happened for mp4 on these resolutions with same encoding)
-c:v libvpx-vp9 -pix_fmt yuv420p -crf 24 -b:v 0 -c:a libopus -b:a 128k -movflags +faststart
ffmpeg line for 720 (mp4 file)
-c:v libx264 -preset slow -pix_fmt yuv420p -crf 20 -b:a 128k
To be quite frank at this point I am at a loss and without many ideas left so I am turning to stack overflow in case someone might have an idea on what would cause this
I am contemplating to attempt perhaps loading videos as blobs and playing them that way, not sure if this would fix it but it does bring the load times up drastically so I would save it as last resort
Thus far I have tried two html video players (plyr and videojs) and after that I just wrote my own "player" of course it's just regular html and js but that's what makes me even more confused as there is nothing that should hinder the files in any way from working as intended
we've also tried changing ffmpeg encoding a few times but to no avail either.
EDIT: The issue was caused by cloudflare caching, we simply made two rules to exclude webm and mp4 url's from being cached and that completely fixed all of our seeking issues