1640 Commits

Author SHA1 Message Date
olly
560071683f Guide V2 + a few related code tweaks
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=133022058
2016-09-13 19:15:31 +01:00
benm
2ebabc54eb Support raw resources inside the APK as a DataSource.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=133013132
2016-09-13 19:14:46 +01:00
aquilescanta
76a05ce30f Fix race condition in timestamp adjustment for HLS
If a Webvtt HlsChunkSource got to schedule its chunk load before the
master HlsChunkSource (the one that downloads the TS or the fMP4
chunks), the player would never get past the buffering state.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132985792
2016-09-13 17:47:07 +01:00
olly
f4248410d9 PlaybackControlView improvements
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132981908
2016-09-13 17:45:40 +01:00
olly
de67fa5017 Allow replacement of libraries for Opus/Flac/Ffmpeg too
- Also make some of the naming more concise + misc style cleanup.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132899979
2016-09-13 17:44:10 +01:00
olly
c46c6f18c2 Add DRM request headers to exolist.json format
Plus misc fixes related to the added samples.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132891534
2016-09-13 17:42:47 +01:00
olly
26e1306639 Fix HLS Timeline.isDynamic
- Also fix an issue that allowed blacklisting of all tracks,
due to incorrect index being used.
- Also fix an issue with track deselection for HLS.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132882151
2016-09-13 17:42:05 +01:00
andrewlewis
2da35769ff Fix some typos/consistency nits.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132876946
2016-09-13 17:41:24 +01:00
olly
383966b307 No-op cleanup for playback controls II
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132862043
2016-09-13 17:40:00 +01:00
aquilescanta
625bb4ed48 Fix PMT descriptors parsing bug
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132862014
2016-09-13 17:39:16 +01:00
olly
bcec597023 No-op cleanup for playback controls
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132859943
2016-09-13 17:38:40 +01:00
olly
8190089b32 Rename defaultStartPosition -> defaultPosition
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132858669
2016-09-13 17:37:59 +01:00
olly
94983675c2 Expose an unknown mimeType video track rather throwing in parser
Issue: #631

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132858217
2016-09-13 17:37:17 +01:00
olly
f2ddfb0867 Expose getPhysicalDisplaySize for non-primary display
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132856997
2016-09-13 17:35:58 +01:00
[]inger
7925342fa0 Provide a VideoView for simple use cases.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132855091
2016-09-13 17:35:11 +01:00
aquilescanta
7e51c3af74 Add continuity counter support in Transport Streams
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132684574
2016-09-13 17:33:38 +01:00
aquilescanta
3bad28ac91 Fix TsExtractor tests
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132561841
2016-09-13 17:32:55 +01:00
aquilescanta
c78010c212 Add support for language descriptors in MPEG-2 TS
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132559667
2016-09-13 17:32:10 +01:00
eguven
26466679df Added CacheDataSourceFactory, FileDataSourceFactory and CacheDataSinkFactory.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132556806
2016-09-08 16:29:48 +01:00
aquilescanta
cab02289f5 Generalize the PtsTimestampAdjuster
This allows the adjustment of timestamps in microseconds along with
TS timestamps. This is useful for containers that include the
timestamps in microseconds format, like fMP4 and WebVTT.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132547521
2016-09-08 16:29:48 +01:00
olly
04c28c6d7d Minimal change to fix seeking before prepare + finalize API
- This change fixes seeking before the prepare (or more
  accurately, before the timeline is set). The fix a minimal
  one to fix the behavior. It's inefficient compared to
  posting the pending seek onto the playback thread, which
  will be the long term solution.
- As of this change, I think we can call V2 "done". There are
  some loose ends to tie up, but the API is effectively
  finalized and the implementation is in a state where you
  can take it, use it and expect it to work.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132468107
2016-09-08 16:29:48 +01:00
olly
8f70845631 Tweak VideoListener doc
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132433848
2016-09-08 16:29:48 +01:00
aquilescanta
651f5fafa7 HLS: Instantiate an AC3 extractor for .ec3 files
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132417755
2016-09-08 16:29:48 +01:00
aquilescanta
45d5d308b4 Add transport error indicator support to TsExtractor
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132307448
2016-09-08 16:29:48 +01:00
[]inger
7c48028fe7 Add support to render video onto a TextureView with SimpleExoPlayer.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132306954
2016-09-08 16:29:48 +01:00
aquilescanta
12b7bbf803 Improve HLS master playlist parsing
Adds a few unused fields to HlsUrl and moves things towards the Hls
reimplementation we are looking for. Also fixes a bug related to
asuming every getNextChunk().loadable == null being related to
reaching the live edge.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132305206
2016-09-08 16:29:48 +01:00
olly
5f39b93d30 Properly release sample streams for DASH
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132301223
2016-09-08 16:29:48 +01:00
olly
e296d10c3f Start moving ExoPlayerImpl to use windows not periods
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132248872
2016-09-08 16:29:48 +01:00
aquilescanta
32867217a3 Improve profile/level check support for AVC
Issue:#1772

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132078273
2016-09-08 16:29:48 +01:00
Santiago Seifert
520e6caa60 Fixed style things from pull request 2016-09-08 12:59:21 +01:00
Sergio Moreno Mozota
e2722dee39 TsExtractor support for language code in the audio tracks. 2016-09-07 07:43:23 +02:00
olly
f8c05ebd93 Better selection of default start position for live
If the live window has a small duration, we currently
end up setting the default start position to be right
at the start of the window. This increases the chance
of a BehindLiveWindowException.

With this change we impose a minimum 5s gap between
the start of the window and the default start position.
If the window is *really* small (<10s) then doing this
would push the default start position too close to the
end of the window. We don't have much time to play with
in either direction in this case, so we put the default
start position in the middle of the window and hope for
the best.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132054802
2016-09-02 16:20:44 +01:00
eguven
06a644eccd DataSourceException: Used to specify a DataSource error.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132053698
2016-09-02 16:20:06 +01:00
olly
884bcb649e Support looping with LoopingMediaSource
Now you can do cool things (if you really want to!) like
play a video twice, then play a second video, then loop
the whole thing, all seamlessly.

new LoopingMediaSource(
  new LoopingMediaSource(firstVideoSource, 2),
  secondVideoSource));

You can also just loop, which is probably more useful :).

Issue: #490

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132049599
2016-09-02 16:19:27 +01:00
aquilescanta
fa500791c5 Rename Variant to HlsUrl and move into HlsMasterPlaylist
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132049545
2016-09-02 16:18:47 +01:00
olly
bd76ec8b13 Support duplicate entries in ConcatenatingMediaSource
People will inevitably try and do it, and it's pretty
easy to handle properly, so why not...

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=132047019
2016-09-02 16:18:04 +01:00
olly
d48bf94145 MergingMediaSource fixes
- Don't send a timeline to the listener until all children
  have reported their timelines.
- Propagate a proper merge error if merging fails.
- The PlayerActivity hack is necessary due to the way Andorid's
  MediaController widget attaches to the window :(. It'll go
  away once we get our own player controls.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=131958169
2016-09-02 16:17:23 +01:00
aquilescanta
a964da7922 Add support for PATs spread across multiple packets
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=131946543
2016-09-02 16:16:41 +01:00
aquilescanta
a671ebd019 Add live media playlist refresh requests when live edge is reached
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=131931868
2016-09-02 16:16:01 +01:00
eguven
860c6588c0 created DefaultHttpDataSourceFactory
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=131931668
2016-09-02 16:15:18 +01:00
olly
ceebb4c561 Fix incorrect index in DefaultAllocator.trim
This could cause us to "lose" allocations backed by an
initial block, meaning they became unavailable for use
despite still being allocated.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=131931465
2016-09-02 16:14:35 +01:00
olly
a779eabdc5 Update SDK / Tools.
- Centralise compileSdkVersion, targetSdkVersion and
  buildToolsVersion in a single place for gradle.
- Bump compileSdkVersion and targetSdkVersion to 24.
- Bump com.android.tools.build version to re-enable
  instant start.
- Bump targetSdkVersion in manifests (needed for
  internal builds).
- Use standard expandable_list_item from Android in
  the demo app, since ours doesn't look right when
  targeting API level 24. We were also setting the
  theme on the wrong element in the manifest, so I'm
  removing that line.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=131929216
2016-09-02 16:12:55 +01:00
olly
962b5940c2 Update ExoPlayer documentation + tweak method naming
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=131843222
2016-09-02 16:08:45 +01:00
aquilescanta
50527c0a7d Add profile/level check support for AVC
Issue:#1772

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=131812670
2016-08-31 15:26:02 +01:00
olly
d65feb682b Make public util method to get physical display size
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=131810070
2016-08-31 15:26:02 +01:00
aquilescanta
f0c0b3efbf Decouple HlsSampleStream from HlsSampleStreamWrapper
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=131731376
2016-08-31 15:26:02 +01:00
olly
797cd46e89 Detailed Javadoc for Timeline, Period and Window
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=131715194
2016-08-31 15:26:02 +01:00
eguven
b88a5e1b12 Fix generateReleaseJavadoc "unmappable character for encoding ASCII" error.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=131714051
2016-08-31 15:26:02 +01:00
eguven
bd7be1b5e7 Cache support unbounded requests.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=131696858
2016-08-31 15:26:02 +01:00
olly
98919fe709 Add ExoMediaDrm/ExoMediaCrypto to V2
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=131693379
2016-08-31 15:25:35 +01:00