Tweak and add READMEs + remove refs to V1

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=165578518
This commit is contained in:
olly 2017-08-17 07:59:29 -07:00 committed by Oliver Woodman
parent 4d7f37f5a9
commit 34960ad891
22 changed files with 194 additions and 54 deletions

View File

@ -9,21 +9,23 @@ and extend, and can be updated through Play Store application updates.
## Documentation ## ## Documentation ##
* The [developer guide][] provides a wealth of information to help you get * The [developer guide][] provides a wealth of information.
started. * The [class reference][] documents ExoPlayer classes.
* The [class reference][] documents the ExoPlayer library classes.
* The [release notes][] document the major changes in each release. * The [release notes][] document the major changes in each release.
* Follow our [developer blog][] to keep up to date with the latest ExoPlayer
developments!
[developer guide]: https://google.github.io/ExoPlayer/guide.html [developer guide]: https://google.github.io/ExoPlayer/guide.html
[class reference]: https://google.github.io/ExoPlayer/doc/reference [class reference]: https://google.github.io/ExoPlayer/doc/reference
[release notes]: https://github.com/google/ExoPlayer/blob/dev-v2/RELEASENOTES.md [release notes]: https://github.com/google/ExoPlayer/blob/release-v2/RELEASENOTES.md
[developer blog]: https://medium.com/google-exoplayer
## Using ExoPlayer ## ## Using ExoPlayer ##
ExoPlayer modules can be obtained via JCenter. It's also possible to clone the ExoPlayer modules can be obtained from JCenter. It's also possible to clone the
repository and depend on the modules locally. repository and depend on the modules locally.
### Via JCenter ### ### From JCenter ###
The easiest way to get started using ExoPlayer is to add it as a gradle 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 and Google Maven dependency. You need to make sure you have the JCenter and Google Maven
@ -39,7 +41,7 @@ repositories {
``` ```
Next add a gradle compile dependency to the `build.gradle` file of your app Next add a gradle compile dependency to the `build.gradle` file of your app
module. The following will add a dependency to the full ExoPlayer library: module. The following will add a dependency to the full library:
```gradle ```gradle
compile 'com.google.android.exoplayer:exoplayer:r2.X.X' compile 'com.google.android.exoplayer:exoplayer:r2.X.X'
@ -56,8 +58,8 @@ compile 'com.google.android.exoplayer:exoplayer-dash:r2.X.X'
compile 'com.google.android.exoplayer:exoplayer-ui:r2.X.X' compile 'com.google.android.exoplayer:exoplayer-ui:r2.X.X'
``` ```
The available modules are listed below. Adding a dependency to the full The available library modules are listed below. Adding a dependency to the full
ExoPlayer library is equivalent to adding dependencies on all of the modules library is equivalent to adding dependencies on all of the library modules
individually. individually.
* `exoplayer-core`: Core functionality (required). * `exoplayer-core`: Core functionality (required).
@ -66,11 +68,16 @@ individually.
* `exoplayer-smoothstreaming`: Support for SmoothStreaming content. * `exoplayer-smoothstreaming`: Support for SmoothStreaming content.
* `exoplayer-ui`: UI components and resources for use with ExoPlayer. * `exoplayer-ui`: UI components and resources for use with ExoPlayer.
For more details, see the project on [Bintray][]. For information about the In addition to library modules, ExoPlayer has multiple extension modules that
latest versions, see the [Release notes][]. depend on external libraries to provide additional functionality. Some
extensions are available from JCenter, whereas others must be built manaully.
Browse the [extensions directory] and their individual READMEs for details.
More information on the library and extension modules that are available from
JCenter can be found on [Bintray][].
[extensions directory][]: https://github.com/google/ExoPlayer/tree/release-v2/extensions/
[Bintray]: https://bintray.com/google/exoplayer [Bintray]: https://bintray.com/google/exoplayer
[Release notes]: https://github.com/google/ExoPlayer/blob/release-v2/RELEASENOTES.md
### Locally ### ### Locally ###
@ -109,15 +116,9 @@ compile project(':exoplayer-library-ui)
#### Project branches #### #### Project branches ####
* The project has `dev-vX` and `release-vX` branches, where `X` is the major * Development work happens on the `dev-v2` branch. Pull requests should
version number. normally be made to this branch.
* Most development work happens on the `dev-vX` branch with the highest major * The `release-v2` branch holds the most recent release.
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 #### #### Using Android Studio ####

4
demos/README.md Normal file
View File

@ -0,0 +1,4 @@
# ExoPlayer demos #
This directory contains applications that demonstrate how to use ExoPlayer.
Browse the individual demos and their READMEs to learn more.

View File

@ -1,5 +1,5 @@
# Demo application # # ExoPlayer main demo #
This folder contains a demo application that uses ExoPlayer to play a number This is the main ExoPlayer demo application. It uses ExoPlayer to play a number
of test streams. It can be used as a starting point or reference project when of test streams. It can be used as a starting point or reference project when
developing other applications that make use of the ExoPlayer library. developing other applications that make use of the ExoPlayer library.

5
extensions/README.md Normal file
View File

@ -0,0 +1,5 @@
# ExoPlayer extensions #
ExoPlayer extensions are modules that depend on external libraries to provide
additional functionality. Browse the individual extensions and their READMEs to
learn more.

View File

@ -1,7 +1,5 @@
# ExoPlayer Cronet extension # # ExoPlayer Cronet extension #
## Description ##
The Cronet extension is an [HttpDataSource][] implementation using [Cronet][]. The Cronet extension is an [HttpDataSource][] implementation using [Cronet][].
[HttpDataSource]: https://google.github.io/ExoPlayer/doc/reference/com/google/android/exoplayer/upstream/HttpDataSource.html [HttpDataSource]: https://google.github.io/ExoPlayer/doc/reference/com/google/android/exoplayer/upstream/HttpDataSource.html
@ -56,3 +54,10 @@ new DefaultDataSourceFactory(
new CronetDataSourceFactory(...) /* baseDataSourceFactory argument */); new CronetDataSourceFactory(...) /* baseDataSourceFactory argument */);
``` ```
respectively. respectively.
## Links ##
* [Javadoc][]: Classes matching `com.google.android.exoplayer2.ext.cronet.*`
belong to this module.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html

View File

@ -1,7 +1,5 @@
# ExoPlayer FFmpeg extension # # ExoPlayer FFmpeg extension #
## Description ##
The FFmpeg extension provides `FfmpegAudioRenderer`, which uses FFmpeg for The FFmpeg extension provides `FfmpegAudioRenderer`, which uses FFmpeg for
decoding and can render audio encoded in a variety of formats. decoding and can render audio encoded in a variety of formats.
@ -140,3 +138,10 @@ then implement your own logic to use the renderer for a given track.
[Android NDK]: https://developer.android.com/tools/sdk/ndk/index.html [Android NDK]: https://developer.android.com/tools/sdk/ndk/index.html
[#2781]: https://github.com/google/ExoPlayer/issues/2781 [#2781]: https://github.com/google/ExoPlayer/issues/2781
[Supported formats]: https://google.github.io/ExoPlayer/supported-formats.html#ffmpeg-extension [Supported formats]: https://google.github.io/ExoPlayer/supported-formats.html#ffmpeg-extension
## Links ##
* [Javadoc][]: Classes matching `com.google.android.exoplayer2.ext.ffmpeg.*`
belong to this module.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html

View File

@ -1,7 +1,5 @@
# ExoPlayer Flac extension # # ExoPlayer Flac extension #
## Description ##
The Flac extension provides `FlacExtractor` and `LibflacAudioRenderer`, which The Flac extension provides `FlacExtractor` and `LibflacAudioRenderer`, which
use libFLAC (the Flac decoding library) to extract and decode FLAC audio. use libFLAC (the Flac decoding library) to extract and decode FLAC audio.
@ -82,3 +80,10 @@ Note: These instructions assume you're using `DefaultTrackSelector`. If you have
a custom track selector the choice of `Renderer` is up to your implementation, a custom track selector the choice of `Renderer` is up to your implementation,
so you need to make sure you are passing an `LibflacAudioRenderer` to the so you need to make sure you are passing an `LibflacAudioRenderer` to the
player, then implement your own logic to use the renderer for a given track. player, then implement your own logic to use the renderer for a given track.
## Links ##
* [Javadoc][]: Classes matching `com.google.android.exoplayer2.ext.flac.*`
belong to this module.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html

View File

@ -1,7 +1,5 @@
# ExoPlayer GVR extension # # ExoPlayer GVR extension #
## Description ##
The GVR extension wraps the [Google VR SDK for Android][]. It provides a The GVR extension wraps the [Google VR SDK for Android][]. It provides a
GvrAudioProcessor, which uses [GvrAudioSurround][] to provide binaural rendering GvrAudioProcessor, which uses [GvrAudioSurround][] to provide binaural rendering
of surround sound and ambisonic soundfields. of surround sound and ambisonic soundfields.
@ -26,9 +24,17 @@ locally. Instructions for doing this can be found in ExoPlayer's
## Using the extension ## ## Using the extension ##
* If using SimpleExoPlayer, override SimpleExoPlayer.buildAudioProcessors to * If using `DefaultRenderersFactory`, override
return a GvrAudioProcessor. `DefaultRenderersFactory.buildAudioProcessors` to return a
* If constructing renderers directly, pass a GvrAudioProcessor to `GvrAudioProcessor`.
MediaCodecAudioRenderer's constructor. * If constructing renderers directly, pass a `GvrAudioProcessor` to
`MediaCodecAudioRenderer`'s constructor.
[top level README]: https://github.com/google/ExoPlayer/blob/release-v2/README.md [top level README]: https://github.com/google/ExoPlayer/blob/release-v2/README.md
## Links ##
* [Javadoc][]: Classes matching `com.google.android.exoplayer2.ext.gvr.*`
belong to this module.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html

View File

@ -1,7 +1,5 @@
# ExoPlayer IMA extension # # ExoPlayer IMA extension #
## Description ##
The IMA extension is a [MediaSource][] implementation wrapping the The IMA extension is a [MediaSource][] implementation wrapping the
[Interactive Media Ads SDK for Android][IMA]. You can use it to insert ads [Interactive Media Ads SDK for Android][IMA]. You can use it to insert ads
alongside content. alongside content.
@ -55,3 +53,10 @@ playback.
[top level README]: https://github.com/google/ExoPlayer/blob/release-v2/README.md [top level README]: https://github.com/google/ExoPlayer/blob/release-v2/README.md
[sample ad tags]: https://developers.google.com/interactive-media-ads/docs/sdks/android/tags [sample ad tags]: https://developers.google.com/interactive-media-ads/docs/sdks/android/tags
## Links ##
* [Javadoc][]: Classes matching `com.google.android.exoplayer2.ext.ima.*`
belong to this module.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html

View File

@ -1,6 +1,4 @@
# ExoPlayer Leanback Extension # # ExoPlayer Leanback extension #
## Description ##
This [Leanback][] Extension provides a [PlayerAdapter][] implementation for This [Leanback][] Extension provides a [PlayerAdapter][] implementation for
ExoPlayer. ExoPlayer.
@ -24,3 +22,10 @@ locally. Instructions for doing this can be found in ExoPlayer's
[top level README][]. [top level README][].
[top level README]: https://github.com/google/ExoPlayer/blob/release-v2/README.md [top level README]: https://github.com/google/ExoPlayer/blob/release-v2/README.md
## Links ##
* [Javadoc][]: Classes matching `com.google.android.exoplayer2.ext.leanback.*`
belong to this module.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html

View File

@ -1,7 +1,5 @@
# ExoPlayer MediaSession extension # # ExoPlayer MediaSession extension #
## Description ##
The MediaSession extension mediates between a Player (or ExoPlayer) instance The MediaSession extension mediates between a Player (or ExoPlayer) instance
and a [MediaSession][]. It automatically retrieves and implements playback and a [MediaSession][]. It automatically retrieves and implements playback
actions and syncs the player state with the state of the media session. The actions and syncs the player state with the state of the media session. The
@ -25,3 +23,10 @@ locally. Instructions for doing this can be found in ExoPlayer's
[top level README][]. [top level README][].
[top level README]: https://github.com/google/ExoPlayer/blob/release-v2/README.md [top level README]: https://github.com/google/ExoPlayer/blob/release-v2/README.md
## Links ##
* [Javadoc][]: Classes matching
`com.google.android.exoplayer2.ext.mediasession.*` belong to this module.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html

View File

@ -1,7 +1,5 @@
# ExoPlayer OkHttp extension # # ExoPlayer OkHttp extension #
## Description ##
The OkHttp extension is an [HttpDataSource][] implementation using Square's The OkHttp extension is an [HttpDataSource][] implementation using Square's
[OkHttp][]. [OkHttp][].
@ -49,3 +47,10 @@ new DefaultDataSourceFactory(
new OkHttpDataSourceFactory(...) /* baseDataSourceFactory argument */); new OkHttpDataSourceFactory(...) /* baseDataSourceFactory argument */);
``` ```
respectively. respectively.
## Links ##
* [Javadoc][]: Classes matching `com.google.android.exoplayer2.ext.okhttp.*`
belong to this module.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html

View File

@ -1,9 +1,7 @@
# ExoPlayer Opus extension # # ExoPlayer Opus extension #
## Description ## The Opus extension provides `LibopusAudioRenderer`, which uses libopus (the Opus
decoding library) to decode Opus audio.
The Opus extension provides `LibopusAudioRenderer`, which uses
libopus (the Opus decoding library) to decode Opus audio.
## Build instructions ## ## Build instructions ##
@ -86,3 +84,10 @@ Note: These instructions assume you're using `DefaultTrackSelector`. If you have
a custom track selector the choice of `Renderer` is up to your implementation, a custom track selector the choice of `Renderer` is up to your implementation,
so you need to make sure you are passing an `LibopusAudioRenderer` to the so you need to make sure you are passing an `LibopusAudioRenderer` to the
player, then implement your own logic to use the renderer for a given track. player, then implement your own logic to use the renderer for a given track.
## Links ##
* [Javadoc][]: Classes matching `com.google.android.exoplayer2.ext.opus.*`
belong to this module.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html

View File

@ -1,7 +1,5 @@
# ExoPlayer RTMP extension # # ExoPlayer RTMP extension #
## Description ##
The RTMP extension is a [DataSource][] implementation for playing [RTMP][] The RTMP extension is a [DataSource][] implementation for playing [RTMP][]
streams using [LibRtmp Client for Android][]. streams using [LibRtmp Client for Android][].
@ -41,3 +39,10 @@ application code are required. Alternatively, if you know that your application
doesn't need to handle any other protocols, you can update any `DataSource`s and doesn't need to handle any other protocols, you can update any `DataSource`s and
`DataSource.Factory` instantiations in your application code to use `DataSource.Factory` instantiations in your application code to use
`RtmpDataSource` and `RtmpDataSourceFactory` directly. `RtmpDataSource` and `RtmpDataSourceFactory` directly.
## Links ##
* [Javadoc][]: Classes matching `com.google.android.exoplayer2.ext.rtmp.*`
belong to this module.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html

View File

@ -1,9 +1,7 @@
# ExoPlayer VP9 extension # # ExoPlayer VP9 extension #
## Description ## The VP9 extension provides `LibvpxVideoRenderer`, which uses libvpx (the VPx
decoding library) to decode VP9 video.
The VP9 extension provides `LibvpxVideoRenderer`, which uses
libvpx (the VPx decoding library) to decode VP9 video.
## Build instructions ## ## Build instructions ##
@ -110,3 +108,10 @@ performed using a GL shader. To enable this mode, send the renderer a message of
type `LibvpxVideoRenderer.MSG_SET_OUTPUT_BUFFER_RENDERER` with the type `LibvpxVideoRenderer.MSG_SET_OUTPUT_BUFFER_RENDERER` with the
`VpxVideoSurfaceView` as its object, instead of sending `MSG_SET_SURFACE` with a `VpxVideoSurfaceView` as its object, instead of sending `MSG_SET_SURFACE` with a
`Surface`. `Surface`.
## Links ##
* [Javadoc][]: Classes matching `com.google.android.exoplayer2.ext.vp9.*`
belong to this module.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html

7
library/README.md Normal file
View File

@ -0,0 +1,7 @@
# ExoPlayer library #
The ExoPlayer library is split into multiple modules. See ExoPlayer's
[top level README][] for more information about the available library modules
and how to use them.
[top level README]: https://github.com/google/ExoPlayer/blob/release-v2/README.md

13
library/all/README.md Normal file
View File

@ -0,0 +1,13 @@
# ExoPlayer full library #
An empty module that depends on all of the other library modules. Depending on
the full library is equivalent to depending on all of the other library modules
individually. See ExoPlayer's [top level README][] for more information.
[top level README]: https://github.com/google/ExoPlayer/blob/release-v2/README.md
## Links ##
* [Javadoc][]: Note that this Javadoc is combined with that of other modules.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html

9
library/core/README.md Normal file
View File

@ -0,0 +1,9 @@
# ExoPlayer core library module #
The core of the ExoPlayer library.
## Links ##
* [Javadoc][]: Note that this Javadoc is combined with that of other modules.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html

12
library/dash/README.md Normal file
View File

@ -0,0 +1,12 @@
# ExoPlayer DASH library module #
Provides support for Dynamic Adaptive Streaming over HTTP (DASH) content. To
play DASH content, instantiate a `DashMediaSource` and pass it to
`ExoPlayer.prepare`.
## Links ##
* [Javadoc][]: Classes matching `com.google.android.exoplayer2.source.dash.*`
belong to this module.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html

11
library/hls/README.md Normal file
View File

@ -0,0 +1,11 @@
# ExoPlayer HLS library module #
Provides support for HTTP Live Streaming (HLS) content. To play HLS content,
instantiate a `HlsMediaSource` and pass it to `ExoPlayer.prepare`.
## Links ##
* [Javadoc][]: Classes matching `com.google.android.exoplayer2.source.hls.*`
belong to this module.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html

View File

@ -0,0 +1,12 @@
# ExoPlayer SmoothStreaming library module #
Provides support for Smooth Streaming content. To play Smooth Streaming content,
instantiate a `SsMediaSource` and pass it to `ExoPlayer.prepare`.
## Links ##
* [Javadoc][]: Classes matching
`com.google.android.exoplayer2.source.smoothstreaming.*` belong to this
module.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html

10
library/ui/README.md Normal file
View File

@ -0,0 +1,10 @@
# ExoPlayer UI library module #
Provides UI components and resources for use with ExoPlayer.
## Links ##
* [Javadoc][]: Classes matching `com.google.android.exoplayer2.ui.*`
belong to this module.
[Javadoc]: https://google.github.io/ExoPlayer/doc/reference/index.html