2553 Commits

Author SHA1 Message Date
andrewlewis
5985f28e1b Add GVR extension and GvrBufferProcessor.
A GvrBufferProcessor can be passed to the player by overriding SimpleExoPlayer's
buildBufferProcessors method.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148442114
2017-02-28 13:47:18 +00:00
anjalibh
84def0d048 Implement VP9 profile 2 - 10 bit BT2020 support with libvpx. This code truncates the 10 bits to 8. We'll later update this to upload half-float or 16 bit short textures.
Pending: Convert BT2020 to DCI-P3 before render.

I'll add the same code to V2 after initial review.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148403349
2017-02-28 13:47:18 +00:00
olly
88fc337db0 Expose empty CEA-608 and EMSG tracks for DASH
This change exposes declared CEA-608 and EMSG tracks. The
tracks currently provide no samples.

Issue: #2362
Issue: #2176

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148390849
2017-02-28 13:47:18 +00:00
olly
d99cb28e6a Correctly handle a SampleStream ending without providing a format
I'm going to introduce an EmptySampleStream that will be used in
some cases in conjunction as part of 608/EMSG support. This change
avoids EmptySampleStream having to provide a dummy format.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148383831
2017-02-28 13:47:18 +00:00
aquilescanta
ef2541e654 Fix negative start time values
Issue:#2495

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148348663
2017-02-28 13:47:18 +00:00
andrewlewis
e3a57146d2 Fix BufferProcessor.queueEndOfStream javadoc
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148344328
2017-02-28 13:47:18 +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
ojw28
69bd956bd7 Merge pull request #2496 from wasabeef/dev-v2-naming-for-clearkey
Clarify naming for ClearKey DRM support
2017-02-23 15:48:36 +00:00
wasabeef
dc17163351 Clarify naming for ClearKey DRM support 2017-02-24 00:47:09 +09:00
Oliver Woodman
5fe5076c86 Clarify naming for ClearKey DRM support 2017-02-23 14:51:58 +00:00
Oliver Woodman
3bb08e58f6 Cleanup of CENC support 2017-02-23 14:27:23 +00: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
aquilescanta
3fc3349e95 Add support for Caption Format Descriptor
This allows the TsExtractor to automatically determine the
closed caption tracks to expose by parsing available
descriptors.

Issue:#2161

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148321380
2017-02-23 14:14:23 +00:00
olly
698e081eda Handle empty PRIV frames
Issue: #2486

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148217936
2017-02-23 14:13:30 +00:00
olly
ddbced7317 Conditionally enable EMSG/608 based on manifest declarations
Issue: #2362
Issue: #2176

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148216614
2017-02-23 14:12:28 +00:00
andrewlewis
682987a0cf Separate input/output handling in BufferProcessors.
This allows BufferProcessors to partially and/or asynchronously handle
input/output. Document contract for queueInput and getOutput.

Update ResamplingBufferProcessor to use the new interface.

Separate submitting bytes vs. writing data to the AudioTrack.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148212269
2017-02-23 14:11:23 +00:00
aquilescanta
896550883f Add support for multiple CC channels in HLS
Issue:#2161

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148203980
2017-02-23 14:10:18 +00:00
aquilescanta
e86629ef3a Allow exposing multiple CEA608 tracks for Transport Streams
This CL allows passing multiple formats describing CC channels to the
TS payload reader factory. As a simple usecase, ATSC can expose both
608 channels by passing a two element list with the corresponding
accessibility channels. The HLS media source can construct this list
from the EXT-X-MEDIA:TYPE="CLOSED-CAPTIONS" tags, including language
and selection flags. The interface extends without modification to
708.

Pending work:
* Multiple CC channels in HLS.
* caption_service_descriptor parsing for overriding the user's selection.
* 708 support in SEI reader.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148030293
2017-02-23 14:09:05 +00:00
olly
a84216c3a9 Allow enabling of EMSG/608 outputs on DefaultDashChunkSource
Issue #2176

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148027655
2017-02-23 14:08:01 +00:00
aquilescanta
72e1eae6f5 Discard preparation chunk if track selection does not include it
This avoids breaking the player if the first variant is not
supported by the device.

Issue:#2353

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148025791
2017-02-23 14:06:54 +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
andrewlewis
17762ebaa2 Reformat @IntDef field/return type annotations.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=148018580
2017-02-23 14:04:42 +00:00
wasabeef
e0f7a12488 Added support for CENC ClearKey 2017-02-22 16:01:43 +09:00
Oliver Woodman
11c16d83fd Final nit fixes for Cue/SubtitlePainter 2017-02-20 13:13:13 +00:00
Oliver Woodman
539072dbf4 Remove useless Cue constructor 2017-02-20 13:09:40 +00:00
Oliver Woodman
5fbf109694 Use Math.round instead of floor. 2017-02-20 13:03:06 +00:00
Oliver Woodman
31513202df Fix subtitle painter issues 2017-02-20 13:01:00 +00:00
Oliver Woodman
21923ae1fa m 2017-02-20 12:55:07 +00:00
Oliver Woodman
f16058422d Fix import order 2017-02-20 12:51:56 +00:00
Oliver Woodman
276788bc50 Merge branch 'drhill-dev-v2_imagesubs' into dev-v2 2017-02-20 12:47:00 +00:00
Oliver Woodman
e27a6eca89 Merge branch 'dev-v2_imagesubs' of git://github.com/drhill/ExoPlayer into drhill-dev-v2_imagesubs 2017-02-20 12:46:51 +00:00
Oliver Woodman
edae29dff7 Fix import order 2017-02-20 11:35:06 +00:00
Oliver Woodman
37c15e7cee Minor stylistic tweaks 2017-02-20 11:33:43 +00:00
ojw28
bf120cac61 Merge pull request #2444 from twisstosin/dev-v2
Updated Gradle, Compile and Build Tools Version
2017-02-20 11:26:32 +00:00
ojw28
ba0aad4b77 Merge pull request #2468 from danysantiago/dev-v2
Add Flags to MP3 Extractor to force CBR Seeker
2017-02-20 11:21:24 +00:00
Daniel Santiago
e9399f8684 Added flags to the mp3 extractor to control behavior of the extractor. Added FLAG_ENABLE_CONSTANT_BITRATE_SEEKING to let the extractor know that the CBR seeker is desired in the case where the seeker has determine the track is not seekable For example, in the case where the track has a Xing Header but no content table. 2017-02-19 13:51:13 -08:00
eguven
c3d7eecd1f Fix ChunkExtractorWrapper.init(TrackOutput) calls with null TrackOutput after extractor initialized
InitializationChunk calls init(null). When the initialization and index data is separate they need to
be loaded separately which results to two init(null) calls.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=147837985
2017-02-17 16:10:49 +00:00
olly
14507c4503 Fix NPE parsing ContentProtection element
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=147833328
2017-02-17 16:09:55 +00:00
olly
bc9dfa8139 Fix build
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=147796398
2017-02-17 16:08:53 +00:00
olly
ba9a82e982 Use execute instead of submit
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=147794314
2017-02-17 16:07:46 +00:00
twisstosin
636eecf4e7 Reverted Font Size Change 2017-02-16 21:30:37 +01: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
ojw28
fccaa07be3 Merge pull request #2463 from purpleblues/dev-v2
Fixed a typing error
2017-02-16 17:22:25 +00:00
ojw28
26f4e528d5 Merge pull request #2464 from jschamburger/dev-v2
Make DrmSessionException constructor public to enable creating custom DrmSessionManager implementations.
2017-02-16 17:22:01 +00:00
olly
0d468ca7bf DASH: Support mspr:pro element
Issue: #2386

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=147725616
2017-02-16 17:20:19 +00:00
Johannes Schamburger
f8bb329ef2 Make DrmSessionException constructor public to enable creating custom DrmSessionManager implementations. 2017-02-16 17:05:12 +01:00
Sungmin Kim
e74b729952 fixed a typing error 2017-02-16 21:23:28 +09:00
olly
65d4b1cf5c Make CeaUtil robust against malformed SEI data
I've also added a TODO to not even bother trying to parse CEA from
SEI NAL units if they're fully or partially encrypted, which it's
possible to determine in the FMP4 extractor.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=147613979
2017-02-15 18:59:45 +00:00
andrewlewis
ec98bd9ea1 Work around broken AAC decoder EoS handling on L.
SoftAAC2 would cause an exception to be thrown from
dequeueOutputBuffer/releaseOutputBuffer after queueing an end-of-stream buffer
for certain streams.

The bug was introduced in L and fixed in L MR1, so the workaround is targeted to
API 21.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=147613659
2017-02-15 18:58:51 +00:00