453 Commits

Author SHA1 Message Date
eguven
a473e7300c Move utility methods to DemoUtil from TrackSelectionHelper
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=151706338
2017-03-31 19:13:18 +01:00
olly
cc1a8f4034 Make playlist samples a little more interesting
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=151696298
2017-03-31 19:12:13 +01:00
olly
9bc20d23a8 Print when frame is rendered in EventLogger + tidying
This is the boring part of a larger change that fixes
how video renderers behave when surfaces are attached and
detached whilst they're enabled or started.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=151563031
2017-03-31 19:10:07 +01:00
olly
e7a4c28dde Fix missing NonNull annotations for overriding methods
If the super method has the annotation on an argument, then
the overriding method should have it too.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=151440313
2017-03-31 19:05:54 +01:00
olly
f4c33daf77 Bump version for bugfix release
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=151028565
2017-03-23 19:15:48 +00:00
andrewlewis
0e6ef0edf6 Add Sonic library for audio speed adjustment.
Add methods to ExoPlayer for setting/getting the playback speed, using
SonicAudioProcessor.

Remove PlaybackParams support, as the AudioTrack timestamp does not work
reliably on Marshmallow. The platform also uses Sonic and performance
should be comparable between the Java and native versions on recent Android
runtimes.

In a later change, SonicAudioProcessor will be made public so it can
be used in conjunction with other processors.

Issue: #26

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=151027121
2017-03-23 19:14:48 +00:00
olly
c8059e5969 Update release notes + bump versions
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=150358346
2017-03-17 12:17:41 +00:00
olly
b98de975f1 Make Util.inferContentType marginally smarter
Issue: #2513

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=150310349
2017-03-16 16:16:20 +00:00
aquilescanta
ce5c0c18f9 Rename AdaptiveVideoTrackSelection to AdaptiveTrackSelection
This will allow us to use the same class for Audio adaptation.

Issue:#1975

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=150302561
2017-03-16 16:13:03 +00:00
olly
8a411c310d Suppress some lint errors
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=150078703
2017-03-15 15:48:09 +00:00
olly
563a397284 Merge remainder of https://github.com/google/ExoPlayer/pull/2372
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148344124
2017-02-28 13:47:18 +00:00
andrewlewis
82d33cde68 Add support for draining audio output.
At the end of playback, BufferProcessors need to be drained to process all
remaining data, then the output needs to be written to the AudioTrack before
stop() is called.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148339194
2017-02-28 13:47:18 +00:00
wasabeef
dc17163351 Clarify naming for ClearKey DRM support 2017-02-24 00:47:09 +09:00
ojw28
7e02e58e16 Merge pull request #2372 from wasabeef/dev-v2-cenc-clearkey
Added support for CENC ClearKey
2017-02-23 14:17:11 +00:00
olly
55a3fca6f9 Clean up position restoration logic in demo app
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148024082
2017-02-23 14:05:47 +00:00
wasabeef
e0f7a12488 Added support for CENC ClearKey 2017-02-22 16:01:43 +09:00
olly
4cca2f2d0a Remove unnecessary null check.
Issue #2462

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=147731351
2017-02-16 18:54:03 +00:00
cdrolle
5bfad5d99b Added sample mime type to the track list descriptions.
The addition of sample mime types can make it easier to identify tracks in the case of mixed media (e.g. CEA-608 and CEA-708 caption tracks). This change appends the mime type to the end of the track description for all media types.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=147303187
2017-02-15 16:59:39 +00:00
olly
7c1b2beb84 Support dyanmically setting key request headers
Issue: #1924

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=146120465
2017-02-15 16:37:27 +00:00
olly
4b8a6572fd Fix resume position if user seeks whilst in error state
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=146001900
2017-01-30 17:47:09 +00:00
aquilescanta
8ddfc12f05 Avoid resetting the tracks on BLWE media source reinitialization
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=145998158
2017-01-30 17:46:13 +00:00
olly
615b707b16 Bump version + update release notes
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=145994313
2017-01-30 16:31:30 +00:00
aquilescanta
7ee8567f4a Fix demo app to avoid seeking if resume position is clear
This fixed the resume live window issue by modifying the demo app.

Issue:#2344

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=145987470
2017-01-30 16:29:23 +00:00
olly
ed69749957 Update logo assets + shorten name
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=145570392
2017-01-25 19:30:05 +00:00
aquilescanta
d303db975e Re-initialize the DemoApp player on BLWE
This CL shows a de facto way to solve BLWEs until an in-player
solution is implemented.

Issue:#1782

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=145265895
2017-01-24 14:25:47 +00:00
olly
e3b3c8b69c Display EMSG metadata events in EventLogger
Issue #2176

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=144998826
2017-01-20 15:40:37 +00:00
olly
877c7f4e30 Some misc file rearrangement.
- Move .graffle files out of third_party
- Add logo .ai file
- Remove logo .svg files

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=144812776
2017-01-18 11:27:12 +00:00
Oliver Woodman
c828d9b0bf Some ID3 bug fixes 2017-01-17 15:49:51 +00:00
Oliver Woodman
5aff31c061 Further improve ID3 parsing 2017-01-17 15:29:07 +00:00
olly
270f68a95e Add convenience methods to query current window
- 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
2017-01-13 17:27:26 +00:00
olly
1eede5d5bb Fix gradle/proguard setup
- 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
2017-01-13 17:27:25 +00:00
olly
59ab0fa9f1 Introduce MetadataDecoderFactory
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
2017-01-10 10:50:52 +00:00
eguven
9d5c750fe9 Support offline drm key downloading and restoring
Renamed StreamingDrmSessionManager to DefaultDrmSessionManager and added functionality to download, restore, renew and release offline keys. Added a utility class, OfflineLicenseHelper, to facilitate use of DefaultDrmSessionManager for downloading, renewing and releasing offline keys.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=143769955
2017-01-06 16:56:31 +00:00
olly
46245251e1 Fix bad indent + clean up Format formatting
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=143469714
2017-01-04 23:04:07 +00:00
eguven
39827fad27 Allow specifying a custom cacheKey to ExtractorMediaSource
Issue: #2201

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=142772885
2017-01-04 23:04:07 +00:00
Oliver Woodman
0b141aeeee Revert "Improving handling of atoms with size less than header in FragmentedMp4Extractor."
This reverts commit 71186ef16ee2f3dc07a4f9d1d696c273b1c6ca87.
2017-01-04 22:32:28 +00:00
cblay
71186ef16e Improving handling of atoms with size less than header in FragmentedMp4Extractor.
These currently lead to cryptic ArrayIndexOutOfBoundsExceptions being thrown from System.arraycopy() so my proposal is to throw a more useful ParserException instead.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=142087132
2017-01-04 22:26:58 +00:00
olly
a007d9a2e7 Bump version + update release notes
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=142539314
2016-12-20 11:39:12 +00:00
kylealexander
72097432bd Adding Widevine subsample VP9 clips
These are the new subsample clips used by the android-drm-team.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=142162918
2016-12-16 16:21:16 +00:00
olly
88d2a6a348 Bump version + update release notes
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=142015031
2016-12-14 16:22:48 +00:00
olly
759cb32315 Try exceeding renderer capabilities by default
Not sure what I think about this, but we're getting quite
a lot of issues reported where streams play fine but capabilities
indicate they wont. It's probably best just to cross our fingers
and hope for the best in such cases, as was the case in V1 when
using ExtractorSampleSource.

Issue: #2157
Issue: #2034
Issue: #2007

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=141758070
2016-12-12 16:15:38 +00:00
olly
195a93e5af Fix playback control focus
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=140623107
2016-11-30 22:04:18 +00:00
olly
289ae3ff38 Make demo app visible in AndroidTV launcher
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=140605251
2016-11-30 22:01:39 +00:00
olly
bfc2faa269 Enable focus highlighting in track selection dialogs
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=140479099
2016-11-30 21:58:52 +00:00
olly
7bbe213e57 Add option to select track that exceeds renderer capabilities
Leaving disabled by default for now, but we may want to consider
enabling it by default. Note that in V1 for ExtractorSampleSource
the behaviour was equivalent to this option being enabled, since
we didn't perform capabilities checks. For DASH/SS/HLS the V1
behaviour was equivalent to this option being disabled.

The type in PlayerActivity has been changed just to make it
easier to add a line that calls setParameters.

Issue: #2034
Issue: #2007
Issue: #2078

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=140477568
2016-11-30 21:58:13 +00:00
olly
e56cf49038 Fix BuildConfig generation for internal builds
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=140210128
2016-11-25 20:18:32 +00:00
olly
ce9ec79e59 Make Timeline always non-null from ExoPlayer
Note that we still have null timelines in ExoPlayerImplInternal.
This is deliberate; and is likely necessary to distinguish between
the no-timeline-yet and timeline-is-empty cases (we want to try
and process a pending seek for the latter, but not the former).

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=140200980
2016-11-25 20:18:32 +00:00
olly
894ae1a310 Improve SimpleExoPlayer flexibility
- Allow extension and overriding of renderer creation.
  Several developers have asked for this, so that they
  can use their own renderers (typically extensions to
  the core ones) without losing the ability to use
  SimpleExoPlayer.
- Add option to not attempt extension renderer creation,
  for efficiency.
- Align build variants for internal and external demo
  apps. This is slightly unfortunate, but convergence
  seems necessary for useExtensionRenderers.
- Fix DASH playback tests to use the debug video
  renderer.

Issue #2102

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=140140915
2016-11-25 20:18:32 +00:00
olly
ee969b738e Load all exolist.json asset files
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=137406773
2016-10-31 19:49:42 +00:00
andrewlewis
70cc98bb99 Fix broken log call
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=137392736
2016-10-31 19:49:28 +00:00