olly
434b5a3029
Enable use of database storage in CachedContentIndex
...
It's not yet enabled in the SimpleCache layer, however, so
this is a no-op change.
PiperOrigin-RevId: 233064490
2019-02-18 15:57:09 +00:00
andrewlewis
9c3ac92ae8
Allow extension of MatroskaExtractor
...
Subclasses can handle arbitrary elements.
PiperOrigin-RevId: 233057241
2019-02-18 15:57:04 +00:00
aquilescanta
36da5fb511
Group audio renditions by name
...
Allows the player to adapt between audio renditions with different
names.
PiperOrigin-RevId: 233052105
2019-02-18 15:56:59 +00:00
aquilescanta
891ec2230e
Rearrange condition blocking to ensure Handler thread loops
...
Without this change, any prepare() operation that requires posting to
the DummyMainThread's handler cannot complete preparation.
PiperOrigin-RevId: 233050367
2019-02-18 15:56:54 +00:00
olly
fd979790f2
Some no-op CacheContentIndex cleanup
...
Push Cipher and SecretKeySpec instantiation into AtomicFileStorage,
since SQLiteStorage no longer needs them.
PiperOrigin-RevId: 233043754
2019-02-18 15:56:49 +00:00
olly
42e691519a
Generate per-cache unique identifier.
...
PiperOrigin-RevId: 233030337
2019-02-18 15:56:44 +00:00
andrewlewis
dec00997e3
Remove deprecated ImaAdsMediaSource and constructors
...
Given the change to require setPlayer on AdsLoaders, it seems like a good
opportunity to clean up deprecated ads-related symbols.
PiperOrigin-RevId: 233020171
2019-02-18 15:56:39 +00:00
olly
1a5bf28669
Cleanup for database on internal storage
...
PiperOrigin-RevId: 232923385
2019-02-18 15:56:34 +00:00
olly
dd99fdcb82
Changes for SQLite databases on internal storage
...
- Remove ability to encrypt content index for SQLite storage
- Remove hack for specifying arbitrary database location
PiperOrigin-RevId: 232863763
2019-02-18 15:56:29 +00:00
olly
a7324061b3
Fix proguard configuration
...
PiperOrigin-RevId: 232835218
2019-02-18 15:56:24 +00:00
andrewlewis
858415e3b1
Update test names for attach -> start renaming
...
PiperOrigin-RevId: 232676346
2019-02-18 15:56:18 +00:00
tonihei
f898bddbfc
Do not prepare MediaPeriods in a loop.
...
They may prepare immediately and let pendingMediaPeriods become empty before
all other periods are even created.
PiperOrigin-RevId: 232675283
2019-02-18 15:56:13 +00:00
Arnold Szabo
eaf0d40886
Extract time bar delay calculations to a static method
2019-02-16 12:17:09 +02:00
Arnold Szabo
ecfce46296
Changes according to the code review
2019-02-13 19:31:11 +02:00
Arnold Szabo
62e6455dce
Taking consideration the current position before calculating the delay before the next update
2019-02-12 23:02:34 +02:00
Arnold Szabo
c905891d10
Taking into consideration the media's duration when updating the time bar
2019-02-10 21:43:34 +02:00
zsmatyas
fd4998bcca
Merge branch 'dev-v2' into dev-v2
2019-02-07 13:13:47 -08:00
olly
a6c1dbe156
Implement CacheFileMetadataIndex using SQLite
...
PiperOrigin-RevId: 232670039
2019-02-06 15:47:08 +00:00
eguven
7eed60c9e3
Add DownloadManager.stopDownloads(int manualStopReason)
...
Also removed STOP_FLAG_DOWNLOAD_MANAGER_NOT_READY.
PiperOrigin-RevId: 232669463
2019-02-06 15:46:57 +00:00
olly
bdc87a4fc7
API and plumbing for indexing file metadata (length + timestamp)
...
When SimpleCache uses a CacheFileMetadataIndex, it will be able to avoid
querying file.length() and renaming files, both of which are expensive
operations on some file systems.
PiperOrigin-RevId: 232664255
2019-02-06 15:46:47 +00:00
olly
3845304e58
Shard SimpleCache files into 10 sub-directories
...
Issue: #4253
PiperOrigin-RevId: 232659869
2019-02-06 15:46:37 +00:00
andrewlewis
2169b9417f
Fix HEVC level error logging
...
PiperOrigin-RevId: 232651944
2019-02-06 15:46:27 +00:00
olly
ebfbb4f915
Hide progress bar for end state download notifications
...
Now we're reusing the builder, it's necessary to set maxProgress
back to 0 to avoid the progress bar appearing for end state
notifications.
PiperOrigin-RevId: 232520007
2019-02-06 15:46:18 +00:00
andrewlewis
0bf9ebf91e
Switch to non-deprecated way of setting AdDisplayContainer
...
PiperOrigin-RevId: 232507469
2019-02-06 15:46:06 +00:00
aquilescanta
fc2a99a688
Generalize selectedVariantIndices in preparation for non-main adaptation
...
After this change, multiple HlsSampleStreamWrappers may contain an apdaptive
track group.
PiperOrigin-RevId: 232507292
2019-02-06 15:45:54 +00:00
olly
6b81d9e7a4
Fix DownloadHelper for some HLS streams
...
onContinueLoadingRequested can occur during preparation, so
MediaPreparer needs to handle it.
PiperOrigin-RevId: 232507267
2019-02-06 15:45:44 +00:00
andrewlewis
589af35c65
Set player on ads loader in IMA demo
...
Issue: #5476
PiperOrigin-RevId: 232503736
2019-02-06 15:45:34 +00:00
olly
e3981ec484
Fix notifications to avoid flicker on KitKat
...
On KitKat you need to reuse the same notification builder when
generating a notification that's intended to replace a previous
one. See:
https://stackoverflow.com/questions/6406730/updating-an-ongoing-notification-quietly
PiperOrigin-RevId: 232503682
2019-02-06 15:45:24 +00:00
olly
391f2bb6c2
Remove indirection in DefaultDownloadIndex
...
DefaultDownloadIndex is currently just forwarding all calls to its
inner class. getDownloadTable() handles initialization, but this
doesn't really seem different to having an initialization method. It
doesn't guarantee initialization happens, since a bad method
implementation could try and access downloadTable directly, just as
a bad method implementation could forget to call the initialization
method. Hence this change removes the indirection.
PiperOrigin-RevId: 232482228
2019-02-06 15:45:10 +00:00
olly
784906b872
Update release notes
...
PiperOrigin-RevId: 232481580
2019-02-06 15:44:56 +00:00
eguven
c0e6cd1b17
Add DownloadState.mergeAction method
...
This method is needed by DownloadManager.
PiperOrigin-RevId: 232447145
2019-02-06 15:44:45 +00:00
olly
67be9e7783
Merge #5462 : Making easier to set the playClearSampleWithoutKeys to renderers
...
Imported from GitHub PR https://github.com/google/ExoPlayer/pull/5462
Pull request for the following issue: #5421
Merge d9d88b079c4ca0533a836b2715a65b924babbb89 into a738191627
PiperOrigin-RevId: 232335113
2019-02-04 19:40:22 +00:00
tonihei
3818d7329d
Use ExoPlayer's AnalyticsListener and AnalyticsCollector.
...
This combines all the different listeners in ExoVideosPlayerV2 into one and
moves the PlaybackLogger class towards ExoPlayer's AnalyticsCollector with
the same purpose.
In the future this allows two things:
1. Gradually move LogginClient implementations to AnalyticsListener to
prevent custom event forwarding.
2. Using ExoPlayer's QoE extension (which is also an AnalyticsListener).
PiperOrigin-RevId: 232321182
2019-02-04 19:40:06 +00:00
tonihei
7a4cf96f4a
Improve housekeeping of ConcatenatingMediaSource callbacks.
...
When calling releaseSource(), all pending messages will be removed. That means
that all action-on-completion callbacks which are somewhere in flight are
just dropped without being called. This change adds code to keep track of the
current state of each callback to allow all of them being called when the
source is released.
Issue:#5464
PiperOrigin-RevId: 232312528
2019-02-04 19:39:54 +00:00
tonihei
cd536a73b1
Add missing removeCallbacksAndMessages to RobolectricUtil.
...
The Util class already handles removeMessages calls but so far ignored calls
to removeCallbacksAndMessages.
PiperOrigin-RevId: 232312458
2019-02-04 19:39:44 +00:00
eguven
a5d64463c7
Make DownloadTracker use DownloadIndex
...
DownloadTracker will stop updating DownloadIndex when DownloadManager
starts using the same DownloadIndex.
PiperOrigin-RevId: 232306803
2019-02-04 19:39:34 +00:00
olly
fb99c26426
Implement CacheContentIndex storage switching
...
This change enables transitioning to/from different Storage
implementations, to allow experimentally enabling (and if
necessary, disabling) SQLiteStorage. All that's left to do
is the final wiring to turn it on
PiperOrigin-RevId: 232304458
2019-02-04 19:39:24 +00:00
olly
f1ded9c3c2
Wider fix for OMX.SEC.mp3.dec issue
...
Issue: #4519
PiperOrigin-RevId: 232299233
2019-02-04 19:39:13 +00:00
eguven
5e311fc82a
Refactor DownloadManage to simplify DownloadThread management
...
Now DownloadManager is responsible for starting and stopping DownloadThreads.
PiperOrigin-RevId: 232278072
2019-02-04 19:39:00 +00:00
aquilescanta
c61c0bd1ac
Cast demo: Fix a few miscellaneous bugs
...
PiperOrigin-RevId: 231801562
2019-02-04 19:38:49 +00:00
ybai001
55ed5cfac6
Set ac4-is sync only if SDK_INT <= 28
2019-02-01 09:03:40 +08:00
andrewlewis
a738191627
Remove remainder of skip button focus hack
...
PiperOrigin-RevId: 231772920
2019-01-31 14:06:38 +00:00
aquilescanta
503c17d2ed
Add constraint based track selection for ExoCast
...
PiperOrigin-RevId: 231764284
2019-01-31 14:06:28 +00:00
olly
d0b3d1cf63
Add additional device to output surface workaround
...
Issue: #4468
PiperOrigin-RevId: 231759438
2019-01-31 14:06:17 +00:00
olly
ef6725bf48
Bump version for 2.9.5 release
...
PiperOrigin-RevId: 231744540
2019-01-31 14:06:02 +00:00
ybai001
8f32c29cc6
Update code based on code review result
...
* remove field mimeType in Ac4Util.java
* change constant CHANNEL_COUNT_2 to private in Ac4Util.java
2019-01-31 11:31:19 +08:00
ybai001
3ea71f8ab8
Merge branch 'dev-v2-ac4' of https://github.com/DolbyLaboratories/ExoPlayer into dev-v2-ac4
2019-01-31 11:19:59 +08:00
olly
2ab91bf08a
Update OkHttp and Cronet dependencies
...
PiperOrigin-RevId: 231644908
2019-01-30 20:32:18 +00:00
aquilescanta
2bd12c2270
Move DefaultTrackSelector.Parameters out of DefaultTrackSelector
...
Including ParametersBuilder and TrackSelectionOverride.
PiperOrigin-RevId: 231609249
2019-01-30 20:32:08 +00:00
olly
ab67ab1aea
Implement database CachedContentIndex.Storage
...
PiperOrigin-RevId: 231600104
2019-01-30 16:38:37 +00:00