5452 Commits

Author SHA1 Message Date
tonihei
3039c358cc Fix show_buffering attribute values.
The corresponding IntDef has changed without updating the attribute values.

Issue:#5139
PiperOrigin-RevId: 222598044
2018-11-27 19:45:49 +00:00
tonihei
0701fed708 Use overflow-save add operation for blacklisting duration.
This allows to specify open-ended blacklisting with Long.MAX_VALUE.

PiperOrigin-RevId: 222550939
2018-11-27 19:45:03 +00:00
Oliver Woodman
028bd9df8f Remove stray proguard files 2018-11-27 19:42:56 +00:00
olly
d075e4f91b Fix HLS ID3 sniffing
The input.getLength() check is invalid because the length may be
unknown (i.e. if the server doesn't include a Content-Length
response header when serving chunks).

Issue: #5063 (tangentially related only)

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=222406347
2018-11-27 19:42:49 +00:00
aquilescanta
473ed4cf69 Support removal of ranges from ShuffleOrders
This allows more efficient range removals and is consistent with addition,
which supports adding multiple elements in a single operation.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=222396310
2018-11-27 19:42:41 +00:00
olly
56b0294ba2 Support Opus and Flac in MP4/DASH
Issue: #4883

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=222392621
2018-11-27 19:42:30 +00:00
olly
233ff0729d Add test that DefaultDataSource is able to build an RtmpDataSource
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=222387374
2018-11-27 19:42:12 +00:00
andrewlewis
269615e62f Update IMA SDK and Play Services Ads versions
Since version 17.0 play-services-ads requires specifying AD_MANAGER_APP=true in
AndroidManifest.xml, so add this in the IMA extension's manifest. See also
https://developers.google.com/ad-manager/mobile-ads-sdk/android/quick-start.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=222087771
2018-11-27 19:42:04 +00:00
tonihei
ec43ed7e59 Improve DefaultLoadControl.shouldContinueLoading for the minBuffer=maxBuffer case.
Currently no path may be chosen if
minBufferUs == maxBufferUs == bufferedDurationUs.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=221639199
2018-11-27 19:41:52 +00:00
tonihei
30941c41c3 Ensure DefaultLoadControl.Builder is single-use.
This is needed because the allocator can't be reused for example.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=221638233
2018-11-27 19:41:45 +00:00
olly
c08edc5e0a Workaround for TS seeking
- Increase the search window size to fix TS seeking for problematic
  media we've had provided to us.
- As per my comments on the issue, we should look at doing more here
  to better fix the problem. This will solve the worst of the
  immediate problem, however.
- The memory usage is non-trivial, particularly with the increased
  search window size. I've made the allocations only live whilst
  determining duration and seeking to address this. I've done the same
  for PS just for consistency.

Issue: #5097

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=221449988
2018-11-27 19:41:26 +00:00
olly
84fc24492f DASH: Fix detection of end of live events
The remaining work is to split Window.isDynamic so that it's
possible to represent a window that wont be appended to, but
may still be removed from.

Issue: #4780

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=221439220
2018-11-27 19:40:58 +00:00
olly
177f3883e9 Noop cleanup of binary seeking / duration reading.
This is a precursor for fixing the ref'd issue. These classes are
well tested, so the tests passing should give you reasonable
confidence I didn't break anything :).

Issue: #5097

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=221435824
2018-11-27 19:40:32 +00:00
olly
0311e153f3 Document need to call MediaSessionCompat.setActive
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=221078075
2018-11-27 19:40:23 +00:00
aquilescanta
f7ed39ee17 Add constructor to DefaultShuffleOrder to support sideloaded shuffle orders
Issue: #4915

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=221075615
2018-11-27 19:39:52 +00:00
olly
2426a047f1 Make support-media-compat an API dependency
The extension cannot be used without also using support-media-compat
(e.g. to instantiate a MediaSessionCompat). So it may as well be an
API dependency.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=221072128
2018-11-27 19:39:41 +00:00
andrewlewis
d9462b9d2b Include channel count in capabilities check
Issue: #4690

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=220640737
2018-11-27 19:34:04 +00:00
ojw28
b5beb32618
Merge pull request #5037 from google/dev-v2-r2.9.1
r2.9.1
2018-11-08 16:48:20 +00:00
Oliver Woodman
a02a75ba57 Fix audio focus 2018-11-07 19:24:02 +00:00
olly
f5c3b30290 Fix BasePlayer.next()
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=220470213
2018-11-07 18:05:32 +00:00
olly
6bc0408222 Make BasePlayer.get[Next/Previous]WindowIndex more useful
When in REPEAT_MODE_ONE, it's unlikely apps want next/previous methods
on the player to keep them in the same window. Music apps in particular
tend to implement next/previous functionality as though repeat mode were
off when in this mode (i.e. current song loops forever during playback,
but next/previous navigation still navigates to next/previous items).

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=220469655
2018-11-07 18:05:25 +00:00
olly
fd98d70a11 Make TimelineQueueNavigator shuffle aware
Issue: #5065

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=220468285
2018-11-07 18:05:13 +00:00
olly
b8b8844083 Add missing update on repeat toggle mode change
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=220461315
2018-11-07 18:04:36 +00:00
borrelli
ac0b11edc0 Fix for #5055 - Cannot disable audio focus after enabled.
This fixes an issue where disabling audio focus handling
while audio focus is held would not release audio focus.

A new test was added for this situation.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=220316866
2018-11-07 18:03:46 +00:00
andrewlewis
54075ed166 Remove executable bit from some resources
Copybara propagates this bit on the files, so removing it avoids some
unnecessary changes in the first migrated commit.

Also losslessly optimize two PNG files.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=220268951
2018-11-07 17:59:50 +00:00
andrewlewis
3e35b6d016 Work around non-empty EoS buffers with timestamp 0
Issue: #5045

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=220237752
2018-11-06 11:10:40 +00:00
andrewlewis
e347239ac5 Document error case for generateAudioSessionIdV21
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=220132865
2018-11-06 11:09:20 +00:00
olly
af2b3f578f Tweak dev guide / readme
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=220059244
2018-11-06 11:09:09 +00:00
aquilescanta
8f57d85881 Add support for .cmf* extension in DefaultHlsExtractorFactory
This makes extractor selection a bit more efficient for some CMAF files.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=219795105
2018-11-02 16:05:07 +00:00
aquilescanta
6d84b2a496 Update the DefaultExtractorInput's peek buffer length on each write
This prevents leaving an inconsistent state after a EOF exception.

Issue:#5039

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=219785275
2018-11-02 16:04:59 +00:00
andrewlewis
1866e6bfba Double the buffer duration for AC3
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=219765107
2018-11-02 16:04:46 +00:00
Oliver Woodman
57042adec7 Remove methods now in BasePlayer 2018-11-01 11:55:40 +00:00
aquilescanta
10511e56cf Add constructor for adding payload reader factory flags
Issue:#4861

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=214772527
2018-11-01 11:33:12 +00:00
olly
f9a805070a Bump version to 2.9.1
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=219609471
2018-11-01 11:29:52 +00:00
andrewlewis
7876999ae7 Fix extended service number calculation
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=219597894
2018-11-01 11:24:24 +00:00
tonihei
e4c20aa3de Add convenience methods player.next() and player.previous()
This simplifies code skipping items in a playlist programatically.

Issue:#4863

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=214580742
2018-11-01 09:43:12 +00:00
tonihei
bbd82cf5da Add BasePlayer to avoid code duplication for common convenience methods.
A lot of methods just forward to other methods and there is no conceivable
way a player should implement it another way. Moving these methods to a
base player class allows to remove duplicated code across our player
implementations.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=215374192
2018-11-01 09:41:38 +00:00
Oliver Woodman
4d9044d690 Fix release notes typo 2018-10-31 22:18:31 +00:00
Oliver Woodman
c04cf30960 Update release notes 2018-10-31 22:04:37 +00:00
tonihei
eef7e28ab2 Add test action to wait for an isLoading change.
This allows to wait until loading started or finished.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=215704424
2018-10-31 21:59:12 +00:00
tonihei
7a3447fe9c Simplify some buffered position related code.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=215704344
2018-10-31 21:57:48 +00:00
Oliver Woodman
c9c4bd89c7 Fix nullability 2018-10-31 21:55:54 +00:00
Oliver Woodman
9c0bba3b5a Misc fixes / stylistic consistency changes for merged pull requests 2018-10-31 21:55:20 +00:00
ojw28
b88c88e21e Merge pull request #4930 from Comcast/program_information
Add Support for Parsing ProgramInformation
2018-10-31 21:55:12 +00:00
Oliver Woodman
8200fe5ae6 Merge branch 'customize-ads-rendering-settings-more' of https://github.com/ogaclejapan/ExoPlayer into ogaclejapan-customize-ads-rendering-settings-more 2018-10-31 21:54:46 +00:00
ojw28
22ee67617e Merge pull request #5004 from pakerfeldt/status-message-invalidresponsecodeexception
Provide http status message to InvalidResponseCodeException
2018-10-31 21:54:36 +00:00
ojw28
e4989d1743 Merge pull request #4996 from YukiMatsumura/fix-idle-requirements
fix checkIdleRequirement
2018-10-31 21:54:21 +00:00
ojw28
bb09f5cb12 Merge pull request #4911 from Comcast/feature/hls-audio-text-id-uniqueness
Create unique id for HLS audio and text tracks
2018-10-31 21:54:06 +00:00
tonihei
1fb2d83ba5 Clarify Java 8 gradle requirement in developer guide.
Issue:#5026

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=219454985
2018-10-31 21:53:13 +00:00
andrewlewis
b1d5966ea5 Allow MP4s with truncated stco to be played
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=219448836
2018-10-31 21:53:03 +00:00