No description
Find a file
andrewlewis 66a5c96c5a Calculate ExtractorSampleSource duration if unknown (playlists #4).
When buffering playlist items after the currently-playing one,
continueBuffering should take a position that is negative because the playback
position is before the start of the source being buffered. This change makes
sure that ExtractorSampleSources always have a known duration when they are
fully buffered, which means that the correct (negative) source-relative
position can be calculated.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=124949409
2016-06-15 20:25:26 +01:00
demo Clean up chunked media source event listeners. 2016-06-15 19:43:17 +01:00
extensions Clean up chunked media source event listeners. 2016-06-15 19:43:17 +01:00
gradle/wrapper Increase gradle version to 2.10 and Android Plugin for Gradle to 1.5. 2016-06-15 19:37:45 +01:00
library Calculate ExtractorSampleSource duration if unknown (playlists #4). 2016-06-15 20:25:26 +01:00
playbacktests Add DashTest to V2 2016-06-15 19:43:17 +01:00
testutils TestUtil.assertOutput() also tests seeking. 2016-06-15 19:42:58 +01:00
third_party Update moe to include third_party jars. 2016-06-15 19:41:33 +01:00
.gitignore Add FFmpeg extension. 2016-06-15 19:41:33 +01:00
build.gradle Upgrade gradle to version 2.1.0 to benefit from instant run. 2016-06-15 19:41:29 +01:00
CONTRIBUTING.md Guidelines on filing issues + release notes update. 2016-06-15 19:37:44 +01:00
gradle.properties Misc configuration updates for V2. 2016-06-15 19:38:05 +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 Add missing issue template. 2016-06-15 19:41:32 +01:00
LICENSE Initial drop. 1.0.10. 2014-06-16 12:56:04 +01:00
README.md Update README/RELEASENOTES from main. 2016-06-15 19:39:06 +01:00
RELEASENOTES.md Bump version to 1.5.9. 2016-06-15 19:43:17 +01:00
settings.gradle Add playback tests to V2. 2016-06-15 19:43:17 +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:

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:

// 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:

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