No description
Find a file
cdrolle 65490f52f8 Added support for handling window/cue priority and fill color to Cue and SubtitlePainter.
Cue has been modified to optionally accept a fill color and a toggle specifying when to use the fill color. When the fill color toggle is set, then SubtitlePainter will use the fill color value instead of the color specified by the device's Accessibility settings. Cea708Decoder has also been modified to propagate that value, as well as cleaned up (in terms of documentation) to prepare it for inclusion in the open-source project.

There is also a new Cea708Cue, extending Cue, which holds the Cue's priority, which is used to sort potentially overlapping cues/windows.

Note that I've left the @ClosedSource annotation and logging in this CL. I intend to start testing the 608 and 708 functionality in the Fiber app to ensure that it works as expected on a wide-range of channels (as opposed to the single channel in ExoPlayer Demo) before removing these.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=142173264
2016-12-16 16:21:16 +00:00
demo Adding Widevine subsample VP9 clips 2016-12-16 16:21:16 +00:00
extensions Move track sample index updates out of getPosition(long). 2016-12-12 16:15:38 +00:00
gradle/wrapper Update gradle wrapper 2016-10-24 18:42:37 +01:00
library Added support for handling window/cue priority and fill color to Cue and SubtitlePainter. 2016-12-16 16:21:16 +00:00
playbacktests Delete CS classes 2016-12-14 23:00:10 +00:00
testutils Improving handling of atoms with size less than header in FragmentedMp4Extractor. 2016-12-16 16:21:16 +00:00
.gitignore Cronet extension project setup 2016-08-10 20:06:43 +01:00
build.gradle Bump version + update release notes 2016-12-14 16:22:48 +00:00
CONTRIBUTING.md Fix broken documentation 2016-08-31 15:25:25 +01:00
gradle.properties Tweak project structure 2016-08-08 11:53:22 +01:00
gradlew Initial drop. 1.0.10. 2014-06-16 12:56:04 +01:00
gradlew.bat Cleanup following #884 2015-10-27 21:03:16 +00:00
ISSUE_TEMPLATE Revert: Rm newline 2016-12-06 21:09:44 +00:00
LICENSE Initial drop. 1.0.10. 2014-06-16 12:56:04 +01:00
README.md Bump version to 2.0.2 + document inclusion of OkHttp extension 2016-10-05 21:20:34 +01:00
RELEASENOTES.md Add missing # chars to release notes! 2016-12-14 18:28:08 +00:00
settings.gradle Create Cronet extension in v2 2016-08-31 15:25:31 +01:00

ExoPlayer

ExoPlayer is an application level media player for Android. It provides an alternative to Androids MediaPlayer API for playing audio and video both locally and over the Internet. ExoPlayer supports features not currently supported by Androids MediaPlayer API, including DASH and SmoothStreaming adaptive playbacks. Unlike the MediaPlayer API, ExoPlayer is easy to customize and extend, and can be updated through Play Store application updates.

Documentation

Using ExoPlayer

The easiest way to get started using ExoPlayer is to add it as a gradle dependency. You need to make sure you have the jcenter repository included in the build.gradle file in the root of your project:

repositories {
    jcenter()
}

Next, include the following in your module's build.gradle file:

compile 'com.google.android.exoplayer:exoplayer:rX.X.X'

where rX.X.X is the your preferred version. For the latest version, see the project's Releases. For more details, see the project on Bintray.

Developing ExoPlayer

Project branches

  • The project has dev-vX and release-vX branches, where X is the major version number.
  • Most development work happens on the dev-vX branch with the highest major version number. Pull requests should normally be made to this branch.
  • Bug fixes may be submitted to older dev-vX branches. When doing this, the same (or an equivalent) fix should also be submitted to all subsequent dev-vX branches.
  • A release-vX branch holds the most recent stable release for major version X.

Using Android Studio

To develop ExoPlayer using Android Studio, simply open the ExoPlayer project in the root directory of the repository.