- 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
This is an initial version that does not handle cross-playlists
adjustment in an ideal way.
Issue:#1789
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=144692969
This will allow recreating timestamp adjustment on the decoding side.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=144692956
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
At this point the renderers all have TODOs in enable(),
and turning on tunneling is reduced to the problem of
propagating a tunneling ID to these points.
Issue: #1688
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=144619393
under certain circumstances (e.g. seek to a position where the input format
changed) the audio track needs a reconfigure even if there aren't any
pending buffers
- Support querying whether the current window is dynamic
and seekable. The new methods are similar to getDuration,
which is also a convenience method for the current window.
- Improve demo app to restore positions in VOD items within
playlists where the last item is live. Also restore the
position within the window for live items unless the player
failed with BehindLiveWindowException.
Issue: #2320
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=144443898
This overrides the start position relative to the window.
Issue:#1544
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=144434903
This class can accommodate extra information that may potentially
be specified by TrackSelectors in the future (e.g. configuration
for renderers). Even if we don't do this, it's cleaner to have a
proper class and an info field to refer to, as opposed to using a
Pair.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=144428963
- Add proguard rules for libraries/extensions into .aar files
- Add proguard rules to retain CEA608/708 decoder constructors
- Remove lots of default config from gradle files
- Remove disabling of abort on lint error
- Enable optimizations on release builds of demo app
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=144350233
Also revert ability to query for a decoder that explicitly
supports tunneling, since in the new design we'll just be
querying the first decoder provided by the MediaCodecSelector
and then reporting what it supports. This is in line with
what we do when reporting support for adaptive switching.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=144315746
Position discontinuities are notified via AudioTrack.Listener.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=144202048
Move initialization code from the audio renderers into handleBuffer. The audio
session id and tunneling enabled state can be altered using new setters.
This change is not intended to change the behavior of the audio renderers.
Before this change, the AudioTrack would always be reinitialized by the
renderers before calling handleBuffer.
Add a protected onAudioTrackUnderrun method for custom renderers that want to
implement custom handling of underruns.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=144067149
Extra calls to CipherOutputStream.close() causes each time extra 16 bytes written to the
underlying OutputStream. Prevented close() is called more than once and also discarded any
data in ReusableBufferedOutputStream buffer on reset().
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=144063120
ClippingMediaPeriod may be a useful component for other MediaSources too so
remove its dependency on ClippingMediaSource.
Also allow the clipping end point to be TIME_END_OF_SOURCE, in which case
the clipping window extends to the end of the wrapped period.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=144056285
This is analogous to what we do for text/subtitles, and
adds support for playlists where the type of metadata
changes from one playlist item to the next.
Issue: #2176
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=143948307