The parser has been written from scratch, during the times I wasn't sure about the WebM format. It parses every EBML tags in the file until it finds the required data such as SegmentInfo, Clusters, Cues and Tracks.
It was exclusively done for parsing local webm files, but it turns out that it's not optimized at all for the HTTP protocol.
I should rewrite a new WebM parser that will look for SeekHead and Seek entries, then retrieve the initialization segment by fetching every bytes between the beginning of the file to the beginning of the first Cluster.
The parser has been written from scratch, during the times I wasn't sure about the WebM format. It parses every EBML tags in the file until it finds the required data such as SegmentInfo, Clusters, Cues and Tracks.
It was exclusively done for parsing local webm files, but it turns out that it's not optimized at all for the HTTP protocol.
I should rewrite a new WebM parser that will look for SeekHead and Seek entries, then retrieve the initialization segment by fetching every bytes between the beginning of the file to the beginning of the first Cluster.