6675 Commits

Author SHA1 Message Date
olly
1e37d31867 Remove spurious VisibleForTesting annotation
It needs to have package visiblity, otherwise nothing can use it.

PiperOrigin-RevId: 222821546
2018-11-27 19:48:21 +00:00
tonihei
d3f4c18401 Provide Cronet request and response data for subclasses.
Subclasses may want to analyze, log and react to the Cronet-specific
connection data.

Issue:#5134
PiperOrigin-RevId: 222809441
2018-11-27 19:47:09 +00:00
olly
0bcce18976 Assume text tracks in protected SmoothStreaming are not protected
Issue: #4838
PiperOrigin-RevId: 222805051
2018-11-27 19:47:00 +00:00
olly
2cab83e6e4 Fix unnecessary media playlist requests when playing live streams
Issue: #5059
PiperOrigin-RevId: 222803511
2018-11-27 19:46:37 +00:00
olly
3a0b127074 Update content url for IMA demo app
The existing one seems to be dead, and isn't https.

PiperOrigin-RevId: 222795996
2018-11-27 19:46:31 +00:00
Oliver Woodman
9c821777a0 Noop fix to WebvttDecoder
We already have tests for comment blocks, and they already
pass because we discard the comment when we fail to parse it
as a cue. We should just skip it directly, however.
2018-11-27 19:46:25 +00:00
olly
327d23c711 Clarify contribution branch
PiperOrigin-RevId: 222632883
2018-11-27 19:46:19 +00:00
olly
07053aaa51 Add Lint.IfChange/ThenChange for repeat modes
PiperOrigin-RevId: 222630411
2018-11-27 19:46:12 +00:00
olly
2d808010ee Ensure changes are reflected into attrs
PiperOrigin-RevId: 222628386
2018-11-27 19:46:06 +00:00
BrainCrumbz
e99c904179 Merge #5126: fix(playlist): always call onCompletion when moving media sources
Imported from GitHub PR https://github.com/google/ExoPlayer/pull/5126

Closes #5125
Merge 55a4c1e15de7f100f37e38119f1da360910fd1e3 into fe41f17c387b7c18a818c8cf2a1ebcdfbd36836a

PiperOrigin-RevId: 222612873
2018-11-27 19:46:00 +00:00
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
olly
05a79a417a Fall back to TYPE_ROTATION_VECTOR if TYPE_GAME_ROTATION_VECTOR unavailable
Issue: #5119
PiperOrigin-RevId: 222978448
2018-11-27 15:46:10 +00:00
andrewlewis
19a6f904e5 Reformat cast DemoUtil
PiperOrigin-RevId: 222978255
2018-11-27 15:46:04 +00:00
olly
1ce33362c9 Strip private ID3 data from HLS sample formats
Issue: #5063
PiperOrigin-RevId: 222975020
2018-11-27 15:45:58 +00:00
olly
6819192690 Clean up CacheDataSourceTest
PiperOrigin-RevId: 222965111
2018-11-27 15:45:51 +00:00
olly
aacb212c17 Remove duplicate CacheAsserts class
PiperOrigin-RevId: 222963935
2018-11-27 15:45:45 +00:00
olly
e317305909 Remove custom data from remove actions
A remove action will eventually just be the unique ID of the download
that should be removed. This is a step toward that goal.

PiperOrigin-RevId: 222832456
2018-11-27 15:45:38 +00:00
Zsolt Matyas
d1e49f2074 CEA608: PAINT-ON Mode must keep the last shown captions on the screen
[Problem]
PAINT-ON mode is not implemented. From the compliance tests:
* RDC command has no effect except to select paint-on style.
* Next data are written directly to the display upon receipt.
* If other captioning is already on the screen, the four-row
limit is still in effect.

[Solution]
It is a rare use case, we do not support overriding characters in
existing cueBuilders as PAINT-ON would require. But several
compliance tests check if the screen is cleared when the mode
switch happens. We must keep the old captions when switching
to PAINT-ON mode

[Test]
- Live Over-the-Air content, beginning of commercials often uses
PAINT-ON mode
2018-11-26 11:39:02 -08:00
olly
f4d9deddaf Remove spurious VisibleForTesting annotation
It needs to have package visiblity, otherwise nothing can use it.

PiperOrigin-RevId: 222821546
2018-11-26 16:40:40 +00:00
olly
a31a3f3c73 Simplify DownloadActionTest legacy tests using assets
PiperOrigin-RevId: 222819933
2018-11-26 16:40:34 +00:00
tonihei
30e753ea1d Provide Cronet request and response data for subclasses.
Subclasses may want to analyze, log and react to the Cronet-specific
connection data.

Issue:#5134
PiperOrigin-RevId: 222809441
2018-11-26 16:40:27 +00:00
olly
3e150b54f4 Assume text tracks in protected SmoothStreaming are not protected
Issue: #4838
PiperOrigin-RevId: 222805051
2018-11-26 16:40:21 +00:00
olly
d6b6600a28 Fix unnecessary media playlist requests when playing live streams
Issue: #5059
PiperOrigin-RevId: 222803511
2018-11-26 16:40:14 +00:00
olly
40c65dbcea Move deserialization code to a more natural location
- Add DownloadAction.fromByteArray for symmetry with toByteArray
- Make DownloadService call fromByteArray, for symmetry with calls
  to toByteArray

PiperOrigin-RevId: 222801703
2018-11-26 16:40:08 +00:00
Oliver Woodman
5284ad2e41 Merge pull request #5144 from google:dev-v2-vttfix
PiperOrigin-RevId: 222798467
2018-11-26 11:06:10 +00:00
olly
17eadcc433 Fix Cea608 caption valid
PiperOrigin-RevId: 222797622
2018-11-26 11:05:55 +00:00
olly
03101444af Update content url for IMA demo app
The existing one seems to be dead, and isn't https.

PiperOrigin-RevId: 222795996
2018-11-26 11:05:44 +00:00
Oliver Woodman
166acad93d Noop fix to WebvttDecoder
We already have tests for comment blocks, and they already
pass because we discard the comment when we fail to parse it
as a cue. We should just skip it directly, however.
2018-11-26 10:50:49 +00:00
olly
799bf16764 Pull reading of data bytes back above if(...){continue} clauses
PiperOrigin-RevId: 222633838
2018-11-23 17:59:27 +00:00
Oliver Woodman
e2e1c459c8 Merge #5140: Cea608 - Check parity and valid bits
Imported from GitHub PR https://github.com/google/ExoPlayer/pull/5140

https://github.com/google/ExoPlayer/pull/5086 moved onto the right branch.
Merge 8822e188d24c1d9b3ed101918763b16e46c8debc into 0c385a854d1c54f794789b390a5793a43a0eb147

PiperOrigin-RevId: 222633340
2018-11-23 17:47:40 +00:00
olly
0c385a854d Clarify contribution branch
PiperOrigin-RevId: 222632883
2018-11-23 17:41:06 +00:00
olly
1216068255 Add Lint.IfChange/ThenChange for repeat modes
PiperOrigin-RevId: 222630411
2018-11-23 17:40:54 +00:00
olly
ea8696d820 Ensure changes are reflected into attrs
PiperOrigin-RevId: 222628386
2018-11-23 17:40:42 +00:00
BrainCrumbz
d3095cccfe Merge #5126: fix(playlist): always call onCompletion when moving media sources
Imported from GitHub PR https://github.com/google/ExoPlayer/pull/5126

Closes #5125
Merge 55a4c1e15de7f100f37e38119f1da360910fd1e3 into fe41f17c387b7c18a818c8cf2a1ebcdfbd36836a

PiperOrigin-RevId: 222612873
2018-11-23 12:37:57 +00:00