StreamBuffer: handle overlapping fragments  (when switching level)
StreamBuffer: handle overlapping fragments  (when switching level)

for example let's imagine we have data already  buffered, and new tags are appended, overlapping with existing buffer :
existing ------------------------------------------->
new tags                                       K--K----K----->
here we are trying to filter new tags to convert them into the following
existing ------------------------------------------->
filtered new tags                                      K----->
this is more complex than it seems, as we need to deal with keyframes for video and all that kind of stuff
video filtered new tags should start with a keyframe ...
if we already have overlapping tags, adjust startPosition/minPTS to match the one from first tag
we only trigger this logic if detected overlapping is more than 500 ms

hola/flashls,tedconf/flashls,mangui/flashls,fixedmachine/flashls,neilrackett/flashls,vidible/vdb-flashls,hola/flashls,clappr/flashls,NicolasSiver/flashls,codex-corp/flashls,fixedmachine/flashls,jlacivita/flashls,vidible/vdb-flashls,tedconf/flashls,codex-corp/flashls,NicolasSiver/flashls,neilrackett/flashls,jlacivita/flashls,clappr/flashls,mangui/flashls