diff --git a/RELEASENOTES.md b/RELEASENOTES.md index 63834978fd..fb3b33d696 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -1,10 +1,85 @@ # Release notes # -### r2.x ### +### r2.0.0 ### -ExoPlayer 2.x is a major rewrite that's still under development. We suggest -following our [Medium page](https://medium.com/google-exoplayer) to learn more, -as we work toward writing more complete documentation and the first 2.x release. +ExoPlayer 2.x is a major iteration of the library. It includes significant API +and architectural changes, new features and many bug fixes. You can read about +some of the motivations behind ExoPlayer 2.x +[here](https://medium.com/google-exoplayer/exoplayer-2-x-why-what-and-when-74fd9cb139#.am7h8nytm). + +* Root package name changed to `com.google.android.exoplayer2`. The library + structure and class names have also been sanitized. Read more + [here](https://medium.com/google-exoplayer/exoplayer-2-x-new-package-and-class-names-ef8e1d9ba96f#.lv8sd4nez). +* Key architectural changes: + * Late binding between rendering and media source components. Allows the same + rendering components to be re-used from one playback to another. Enables + features such as gapless playback through playlists and DASH multi-period + support. + * Improved track selection design. More details can be found + [here](https://medium.com/google-exoplayer/exoplayer-2-x-track-selection-2b62ff712cc9#.n00zo76b6). + * LoadControl now used to control buffering and loading across all playback + types. + * Media source components given additional structure. A new MediaSource class + has been introduced. MediaSources expose Timelines that describe the media + they expose, and can consist of multiple MediaPeriods. This enables features + such as seeking in live playbacks and DASH multi-period support. + * Responsibility for loading the initial DASH/SmoothStreaming/HLS manifest is + promoted to the corresponding MediaSource components and is no longer the + application's responsibility. + * Higher level abstractions such as SimpleExoPlayer have been added to the + library. These make the library easier to use for common use cases. The demo + app is halved in size as a result, whilst at the same time gaining more + functionality. Read more + [here](https://medium.com/google-exoplayer/exoplayer-2-x-improved-demo-app-d97171aaaaa1). + * Enhanced library support for implementing audio extensions. Read more + [here](https://medium.com/google-exoplayer/exoplayer-2-x-new-audio-features-cfb26c2883a#.ua75vu4s3). + * Format and MediaFormat are replaced by a single Format class. +* Key new features: + * Playlist support. Includes support for gapless playback between playlist + items and consistent application of LoadControl and TrackSelector policies + when transitioning between items + ([#1270](https://github.com/google/ExoPlayer/issues/1270)). + * Seeking in live playbacks for DASH and SmoothStreaming + ([#291](https://github.com/google/ExoPlayer/issues/291)). + * DASH multi-period support + ([#557](https://github.com/google/ExoPlayer/issues/557)). + * MediaSource composition allows MediaSources to be concatenated into a + playlist, merged and looped. Read more + [here](https://medium.com/google-exoplayer/exoplayer-2-x-mediasource-composition-6c285fcbca1f#.zfha8qupz). + * Looping support (see above) + ([#490](https://github.com/google/ExoPlayer/issues/490)). + * Ability to query information about all tracks in a piece of media (including + those not supported by the device) + ([#1121](https://github.com/google/ExoPlayer/issues/1121)). + * Improved player controls. + * Support for PSSH in fMP4 moof atoms + ([#1143](https://github.com/google/ExoPlayer/issues/1143)). + * Support for Opus in Ogg + ([#1447](https://github.com/google/ExoPlayer/issues/1447)). + * CacheDataSource support for standalone media file playbacks (mp3, mp4 etc). + * FFMPEG extension (for audio only). +* Key bug fixes: + * Removed unnecessary secondary requests when playing standalone media files + ([#1041](https://github.com/google/ExoPlayer/issues/1041)). + * Fixed playback of video only (i.e. no audio) live streams + ([#758](https://github.com/google/ExoPlayer/issues/758)). + * Fixed silent failure when media buffer is too small + ([#583](https://github.com/google/ExoPlayer/issues/583)). + * Suppressed "Sending message to a Handler on a dead thread" warnings + ([#426](https://github.com/google/ExoPlayer/issues/426)). + +### r1.5.11 ### + +* Cronet network stack extension. +* HLS: Fix propagation of language for alternative audio renditions + ([#1784](https://github.com/google/ExoPlayer/issues/1784)). +* WebM: Support for subsample encryption. +* ID3: Fix EOS detection for 2-byte encodings + ([#1774](https://github.com/google/ExoPlayer/issues/1774)). +* MPEG-TS: Support multiple tracks of the same type. +* MPEG-TS: Work toward robust handling of stream corruption. +* Fix ContentDataSource failures triggered by garbage collector + ([#1759](https://github.com/google/ExoPlayer/issues/1759)). ### r1.5.10 ###