No description
Find a file
olly bc1d76a3eb Fix ParsableByteArray.readLine + discard BOM at start of line.
- I think \r and \n are handled the wrong way around?
- We only expect to encounter a BOM sequence at the start of a
  file, but it feels fine to automatically discard it in all
  cases for simplicity. A BOM sequence doesn't mean anything in
  UTF-8. See https://en.wikipedia.org/wiki/Byte_order_mark. Note
  that I think the advice not to remove it on that page relates
  only to the case where the file is being edited + saved.

Issue #1136
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=112143407
2016-01-14 17:13:32 +00:00
demo HlsChunkSource: Expose stuff for WebVtt/Variant selection. 2016-01-14 17:13:32 +00:00
demo_misc Fixed demo-misc-vp9-opus-sw DASH check 2016-01-14 17:13:32 +00:00
extensions opus: Add CodecCounters support 2016-01-14 17:08:25 +00:00
gradle/wrapper Include gradle plugin 1.0.0 2014-12-22 10:34:46 +08:00
library Fix ParsableByteArray.readLine + discard BOM at start of line. 2016-01-14 17:13:32 +00:00
playbacktests Check support for adaptive playback 2016-01-05 14:52:36 +00:00
third_party Push tests. 2015-03-06 16:39:00 +00:00
.gitignore Update .gitignore to ignore VP9/Opus specific files. 2015-02-02 14:43:55 -08:00
build.gradle Bump bintray release version. 2015-10-12 17:58:01 +01:00
CONTRIBUTING.md Update CONTRIBUTING.md 2015-02-18 23:42:42 +00:00
gradle.properties Initial drop. 1.0.10. 2014-06-16 12:56:04 +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
LICENSE Initial drop. 1.0.10. 2014-06-16 12:56:04 +01:00
README.md Enforce 80 char line limit in README.md 2015-12-16 20:55:04 +00:00
RELEASENOTES.md Bump version to 1.5.3. 2015-12-08 18:00:46 +00:00
settings.gradle Package restructuring 2015-09-29 21:51:45 +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.

News

Read news, hints and tips on the news page.

Documentation

Using ExoPlayer

Via jCenter

The easiest way to get started using ExoPlayer is by including the following in your project's build.gradle file:

gradle
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.

As source

ExoPlayer can also be built from source using Gradle. You can include it as a dependent project like so:

gradle
// settings.gradle
include ':app', ':..:ExoPlayer:library'

// app/build.gradle
dependencies {
    compile project(':..:ExoPlayer:library')
}

As a jar

If you want to use ExoPlayer as a jar, run:

sh
./gradlew jarRelease

and copy library.jar to the libs folder of your new project.

Developing ExoPlayer

Project branches

  • The master branch holds the most recent minor release.
  • Most development work happens on the dev branch.
  • Additional development branches may be established for major features.

Using Android Studio

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

Using Eclipse

To develop ExoPlayer using Eclipse:

  1. Install Eclipse and setup the Android SDK.
  2. Open Eclipse and navigate to File->Import->General->Existing Projects into Workspace.
  3. Select the root directory of the repository.
  4. Import the projects.