Truncated WEBM not playable (infinite clusters)
Playback can never start as the IO file position is stuck at the end of file. Forcing IO start position first on seek solves it, but is not the proper way to fix it.
Caused when preparing segments
SegmentSeeker::mkv_jump_to
calls
if( !( ms.cluster = static_cast<KaxCluster*>( ms.ep.Get() ) ) )
which ends up calling EBML's SkipData
p_prev->SkipData( *m_es, EBML_CONTEXT(p_prev), p_prev );
but according to that source, the SkipData will just Skip all elements in the Segment instead of skipping only the current Cluster
Segment
|-> Cluster (no size)
|-> Cluster (no size)
|-> Cluster (no size)
|-> Truncated EBML Cluster