Event based buffering.
At a high level, everything that we need to load in sync with anything else now implements a new SequenceableLoader class. This includes ChunkTrackStream, since multiple demuxed tracks in DASH/SS need to be loaded in sync with one another. At a higher level, SampleSources are also SequenceableLoaders, which allows them to be kept in sync by MultiSampleSource. CompositeSequenceableLoader is able to load multiple instances SequenceableLoaders in sync with one another, and is used in various places where this is required. This change also removes LoadControl registration, which was complicated and error prone. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=126632861
Showing
with
701 additions
and
626 deletions
Please
register
or
sign in
to comment