- Tunneling can be enabled by calling:
trackSelector.setTunnelingAudioSessionId(
C.generateAudioSessionIdV21(this));
- If enabled, tunneling is automatically used when the renderers
and track selection combination support it. Tunneling is
automatically turned on and off through playlists if the support
changes.
Issue: #1688
Also clear the playingPeriodHolder in the case the renderers
are being disabled. This is required to ensure that
setPlayingPeriodHolder isn't turned into a no-op, which will
break the seek.
Issue: #2330
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=144635220
These currently lead to cryptic ArrayIndexOutOfBoundsExceptions being thrown from System.arraycopy() so my proposal is to throw a more useful ParserException instead.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=142087132
This has always been broken in V2, but the issue is now also
visible for the very first period in the timeline because we
offset if by 60s. Previously the issue would only have been
visible from the start of the second period.
Issue: #2208
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=142252702
ClippingMediaSource wraps a single period/window video-on-demand source and
exposes a specified time range within it.
Issue: #1988
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=141991215
- Fix bug where we'd try and call replaceStream having already
notified the renderer that the current stream is final. This
could occur if a period was added to the end of the playlist.
- If the current period being played is removed and a new period
to play cannot be resolved, assume we've gone off the end of
the playlist and transition to the ended state. This allows
the current source to be re-used (unlike the previous behavior
of considering it an error). Treat valid seeks that cannot be
resolved due to concurrent timeline update similarly.
- Add seek sanity check back to ExoPlayerImpl. Meh. It's probably
best to keep this, since it stops the exposed window index
being invalid w.r.t the exposed timeline.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=141167151
Also inline a few methods/classes where they can be made
private and therefore be removed from the public API.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130935090
This change allows MediaPeriod instances to replace
SampleStream instances when the selection isn't changing.
It also allows MediaPeriod instances to retain a
SampleStream but indicate that the renderer consuming
from it needs to be reset.
The change is used to fix the ref'd bug, and is used to
do the same thing in HLS without the need for the source
to report a discontinuity. Note that reporting discontinuity
could cause unnecessary failure when used as a child of
MergingMediaSource.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=129971782
- Invoked --> Called
- Gets --> Returns
- "True if X. False otherwise." --> "Whether X."
- Removed some @returns where the Javadoc is in "Returns X" form
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=128678638
- Cleaned up documentation
- Removed getIndex from Renderer interface
- Renamed reset to be positionReset
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=127731006
Renderer no longer extends RendererCapabilities after this
change. Capabilities are instead accessed via a getter.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=127532634
In V1 we received complaints that Renderer was too locked down.
In particular, it wasn't possible to implement a Renderer that
wrapped another Renderer, since most of the methods were package
private and final (e.g. enable).
This change defines Renderer as a proper interface, removing
this limitation. A method-reordering-only change will follow
this one, to get things into a nice consistent/sane order in
each of the Renderer classes.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=127527995