Add Builder pattern to HlsMediaSource and mark existing constructors as
deprecated.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=175803853
The purpose of this change isn't to fix anything. It's just to
simplify things a little bit. There will be following CLs that
make some changes to get things onto correct threads.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=175800354
This allows to remove the LazyMediaSource used within
DynamicConcatenatingMediaSourceTest and also allows to write test which
simulates dynamic timeline or manifest updates.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=175680371
We deliberately compare the track group returned by the track selection
with the track group in the parameter to check if the track selection is
referring to this particular track group.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=175660909
Add Builder pattern to SsMediaSource and mark existing constructors as
deprecated.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=175659618
This also allows exposing multiple CC channels to any fMP4 extractor client.
Issue:#1661
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=174458725
Add onEnable() and onDisable() call-backs to TrackSelection. This allows
TrackSelection to perform interesting operations (like subscribe to
NetworkStatus) and clean up after itself.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=175558485
Start with DASH MediaSource. The number of injected arguments is getting
out-of-control.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=175529031
Someone must have forgotten to do this when rewriting this class.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=175296249
Also fix propagation of ad errors that occur when no player
is attached.
Issue: #3548
Issue: #3556
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=178767997
This is in preparation for supporting non-extractor MediaSources for ads in
AdsMediaSource.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=178377627
If allowed, the media period will try to finish preparation without downloading
chunks (similar to what DashMediaPeriod does). To create track groups,
HlsMediaPeriod will try to obtain as much information as possible from the
master playlist. If any vital information is missing for specific urls,
traditional preparation will take place instead.
This version does not support tracks with DrmInitData info. This affects tracks
with CDM DRM (e.g: Widevine, Clearkey, etc). AES_128 encryption is not affected.
This information needs to be obtained from media playlists, and this version
only takes the master playlist into account for preparation.
Issue:#3149
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=178098759
This should be a no-op change. And it eliminates the need to use the index variable
which will be removed once the MediaPeriodHolderQueue is implemented.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=177963360
In some occasions, we may want to discard a part of the buffered media to
improve playback quality. This CL adds this functionality by allowing the
loading media period to re-evaluate its buffer periodically (every 2s) and discard
chunks as it needs.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=177958910
FakeRenderer only needs to allocate real memory because it extends BaseRenderer
which uses the actual SampleStream implementation. Immediately release the
memory after using it to prevent excessive memory usage when running fast
simulations.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=177949628
This fixes an issue where quickly detaching and reattaching the player might
cause ads to be requested multiple times with both responses handled.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=177922167
In order to facilitate enabling a compile-time error check, we are suppressing these existing instances. Once the compile-time error is enabled, we will file bugs to clean up any unfixed instances in [].
Note that this CL should result in no effective changes to the code, but the code as currently-written might contain a real bug. If you'd prefer to fix the bug now, please either reply with edits, or accept this CL then follow up with a change that fixes the underlying issue.
Tested:
tap_presubmit: [] Some tests failed; test failures are believed to be unrelated to this CL
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=177836122
This is a step towards harmonizing the MediaSource Builders and (potentially)
providing MediaSource factories.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=177783157
Waiting for the timeline change didn't work correctly because the timeline was
already equal to Timeline.EMPTY (due to the masking). Now waiting explicitly
for the empty Timeline exposed by the source.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=177749292
This is in line with a recent change in ExoPlayerImplInternal. Not discarding the buffer
causes OOM when running simulated playbacks.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=177573930