7073 Commits

Author SHA1 Message Date
sofijajvc
1312a54295 Avoid sync failures if libgav1 isn't present
PiperOrigin-RevId: 273734495
2019-10-10 14:44:48 +01:00
olly
3d0886f458 Fix bogus reporting of audio focus loss
Playback cannot be suppressed if playWhenReady=false

PiperOrigin-RevId: 273726084
2019-10-10 14:44:39 +01:00
andrewlewis
e6fe80fa88 Improve sample naming consistency
PiperOrigin-RevId: 273712563
2019-10-10 14:44:30 +01:00
sofijajvc
70abbb9689 Add test AV1 video to demo app
PiperOrigin-RevId: 273706425
2019-10-10 14:44:20 +01:00
Oliver Woodman
4026c8a01e Merge pull request #6502 from caiiiyua:bug_default_dash_chunk_source_wrong_segmentnumshift
PiperOrigin-RevId: 273549830
2019-10-08 20:55:25 +01:00
andrewlewis
fab2a0d55e Fix VideoDecoderOutputBuffer supplemental data
The limit of this.supplementalData was not reset.

PiperOrigin-RevId: 273515718
2019-10-08 20:55:15 +01:00
andrewlewis
a7db26c352 Delete the IMA demo
This doesn't offer anything on top of the functionality in the main demo app.
There's less code but we have a blog post and presentations that walk through
how to use the extension, so it seems fine to delete the code so we don't need
to maintain it. This also avoids potential confusion about what the demo app
means on IMA-related GitHub issues.

PiperOrigin-RevId: 273501720
2019-10-08 20:55:07 +01:00
ibaker
711a16c88a Remove the content_not_playing issue template
PiperOrigin-RevId: 273475232
2019-10-08 20:54:59 +01:00
Cai Yuanqing
d2b221b95b Issue: #6501 Wrong segmentNumShift was calculated in copyWithNewRepresentation
When newIndex overlaps oldIndex with newstarttime < oldstarttime, according to the segNum of endtime
in newIndex and oldIndexLastSegnum to calculate the segmentNumShift.
2019-10-08 09:07:27 +13:00
olly
b052ea9bed Parse Label elements for adaptation sets
Issue: #6297
PiperOrigin-RevId: 273297284
2019-10-07 16:32:50 +01:00
andrewlewis
48bfb37e93 Fix surfacedemo nullness issues
PiperOrigin-RevId: 273296545
2019-10-07 16:32:42 +01:00
andrewlewis
fed89d76ca Migrate surfacedemo to new DRM APIs
PiperOrigin-RevId: 273296461
2019-10-07 16:32:34 +01:00
andrewlewis
8d7f474fa6 Fix surfacedemo build
PiperOrigin-RevId: 273296236
2019-10-07 16:32:26 +01:00
aquilescanta
dddce4307b Mask playWhenReady state in CastPlayer
When the user calls setPlayWhenReady, the state modifications are
observed as immediate, in spite of being sent to the receiver app
as asynchronous operations.

PiperOrigin-RevId: 273289768
2019-10-07 16:32:19 +01:00
aquilescanta
29eebca5c5 Fix section comments in CastPlayer
PiperOrigin-RevId: 273270892
2019-10-07 16:32:11 +01:00
samrobinson
a8adb97b5d Move AudioFocusManager to different package & made default visibility.
PiperOrigin-RevId: 273263822
2019-10-07 16:32:03 +01:00
olly
c269890259 Define default colors as constants
It's confusing that app:played_color also modifies the colors
that derive from it, but the corresponding setter does not. It
seems generally clearer just to define constants.

PiperOrigin-RevId: 273249557
2019-10-07 16:31:55 +01:00
sofijajvc
fa06f0b4cc Fix video decoder GL rendering
Calculate stride and width ratio per each plane.

PiperOrigin-RevId: 272916423
2019-10-07 16:31:47 +01:00
sofijajvc
8f3a363dd2 Add OpenGL support to av1 extension: Libgav1VideoRenderer
Move reusable code from LibvpxVideoRenderer to SimpleDecoderVideoRenderer.
Pass outputBuffer to renderOutputBuffer method instead of keeping the reference in the renderer.

PiperOrigin-RevId: 272899549
2019-10-07 16:31:39 +01:00
samrobinson
27b90fba0e Make WakeLockManager package private.
PiperOrigin-RevId: 272888174
2019-10-07 16:31:31 +01:00
olly
efe6e6408a Cleanup: Only clamp seek positions for FFWD/RWND
It's confusing that seekTo(player, windowIndex, positionMs) does
clamping, because it only makes sense if windowIndex is the current
window.

Note: This doesn't actually fix anything (other than code clarity).
In cases where we were passing other windowIndices, we always
passed 0 as the position and so the clamping logic wouldn't have
had any effect.
PiperOrigin-RevId: 272857104
2019-10-04 13:33:09 +01:00
Oliver Woodman
6e65a71806 Merge pull request #6379 from wingyippp:flac-seek-map-two-points
PiperOrigin-RevId: 272856747
2019-10-04 13:32:59 +01:00
ibaker
b2900aa560 Exclude .li files in ExoPlayer's .hgignore
These seem to be created by the Android Studio layout inspector

PiperOrigin-RevId: 272856118
2019-10-04 13:32:50 +01:00
olly
8453d07f54 Remove unnecessary DeleteLocalRef usage
Keeping the ones inside loops, because theoretically they
can be useful there (in practice, for this use case, it's
highly unlikely to make any difference).

PiperOrigin-RevId: 272834073
2019-10-04 13:32:42 +01:00
tonihei
4297800f38 Update logic to set isLoading.
We currently set it to shouldContinueLoading, which isn't correct if
shouldContinueLoading is set to false and we still have an ongoing load.

Change it to also be true if the media period is still loading.

PiperOrigin-RevId: 272823473
2019-10-04 13:32:34 +01:00
aquilescanta
69cf7d130e Fix acquisition of placeholder sessions
Issue:#4867
PiperOrigin-RevId: 272698404
2019-10-04 13:32:27 +01:00
samrobinson
f326f7110f Added SendBroadcast as an Action.
Removed a redundant TestSimpleExoPlayer subclass.

PiperOrigin-RevId: 272681643
2019-10-04 13:32:19 +01:00
andrewlewis
3d5ab29da7 Add @RequiresApi(18) for FrameworkMediaDrm
Without this Android Studio shows a warning for newInstance.

PiperOrigin-RevId: 272660373
2019-10-04 13:32:12 +01:00
andrewlewis
957387855e Add missing player null check
PiperOrigin-RevId: 272654378
2019-10-04 13:32:04 +01:00
aquilescanta
433526e034 Deprecate DefaultDrmSessionManager factory methods and migrate main demo app
PiperOrigin-RevId: 272643202
2019-10-04 13:31:56 +01:00
sofijajvc
737b5cd82d Fix GL error logging
Log only if an error occured.

PiperOrigin-RevId: 272618322
2019-10-04 13:31:48 +01:00
olly
3c235dfc1f Make factories return specific types
PiperOrigin-RevId: 272614917
2019-10-04 13:31:40 +01:00
olly
e377e13d50 Clean up DashManifestParserTest
Also improve some tests by asserting the parser is left in
the correct position (assertNextTag).

PiperOrigin-RevId: 272614768
2019-10-04 13:31:33 +01:00
olly
fbb4715646 Minor upstream cleanup
PiperOrigin-RevId: 272614610
2019-10-04 13:31:25 +01:00
Cai Yuanqing
9ec94a4bdc Check the new index contains the old index based on stat time instead of segNum 2019-10-04 13:55:25 +13:00
wingyippp
8ce8e351e1 new int64_t[4] after check mSeekTable supported 2019-10-03 14:40:39 +08:00
wingyippp
03ba1c9a2f return null if Seek Table is not supported. proguard in flac-extension 2019-10-03 13:50:17 +08:00
tonihei
4f640bc62e Add SequencableLoader.isLoading
This method allows the player to figure out whether we still have an ongoing
load even if LoadControl.shouldContinueLoading returns false.

PiperOrigin-RevId: 272445577
2019-10-02 21:30:07 +01:00
aquilescanta
9f78187678 Migrate Cast demo app to use DefaultDrmSessionManager.Builder
PiperOrigin-RevId: 272444896
2019-10-02 21:30:00 +01:00
tonihei
bc9a0860e0 Clear renderedFirstFrame at stream changes even if no reconfiguration is needed
This ensures a more consistent playback behavior no matter if an item is the
first playlist item or a later one. For example, each playlist item gets its
own onRenderedFirstFrame callback and other logic within the renderer that
force renders the first frame more quickly is also triggered.

PiperOrigin-RevId: 272434814
2019-10-02 21:29:52 +01:00
ibaker
f7b8d07cd2 Add specific error message if file-not-found for path with fragment or query
This doesn't change the current behaviour, just adds a clear error message
to the developer with instructions on how to avoid it.

Issue:#6470
PiperOrigin-RevId: 272405556
2019-10-02 21:29:45 +01:00
ibaker
6780b802e0 Pass the raw ICY metadata through IcyInfo
The ICY 'spec' isn't really clear/tight enough to do anything more
specific than this I think.

Issue:#6476
PiperOrigin-RevId: 272405322
2019-10-02 21:29:37 +01:00
ibaker
db68aa9490 Rollback of 01f484cbe9
*** Original commit ***

Modify EventMessageDecoder to return null if decoding fails (currently throws exceptions)

This matches the documentation on MetadataDecoder.decode:
"@return The decoded metadata object, or null if the metadata could not be decoded."

***

PiperOrigin-RevId: 272405287
2019-10-02 21:29:30 +01:00
samrobinson
f5873b8f00 WakeLock handling
Created the WakeLockManager for use in SimpleExoPlayer.
Added a setter in SimpleExoPlayer to adjust this functionality.

Issue:#5846
PiperOrigin-RevId: 272176998
2019-10-02 21:29:21 +01:00
bachinger
6c20616f87 remove validation comments from github templates
PiperOrigin-RevId: 272176894
2019-10-02 21:29:14 +01:00
aquilescanta
af9ce21e2f Log failures when instantiating Framework MediaDrms
PiperOrigin-RevId: 272166041
2019-10-02 21:29:06 +01:00
andrewlewis
c9029479f4 Remove references to cast_receiver_app
PiperOrigin-RevId: 272010353
2019-10-02 21:28:59 +01:00
tonihei
7d8bee799b Add convenience Player.isCurrentWindowLive method.
PiperOrigin-RevId: 272005632
2019-10-02 21:28:51 +01:00
tonihei
dd4f9bcaae Add Timeline.Window.isLive
This flag is currently merged into Window.isDynamic, which isn't always true
because
1. A window can be dynamic for other reasons (e.g. when the duration is still
missing).
2. A live stream can be become non-dynamic when it ends.

Issue:#2668
Issue:#5973
PiperOrigin-RevId: 271999378
2019-10-02 21:28:43 +01:00
tonihei
26dd4aad68 Add missing methods to EventLogger.
PiperOrigin-RevId: 271998087
2019-10-02 21:28:36 +01:00