Bump release to 2.10.0 and update release notes

PiperOrigin-RevId: 243592790
This commit is contained in:
olly 2019-04-15 12:40:30 +01:00 committed by AquilesCanta
parent 1ee51518ae
commit 18dd3fdb46
3 changed files with 80 additions and 85 deletions

View File

@ -2,44 +2,28 @@
### dev-v2 (not yet released) ### ### dev-v2 (not yet released) ###
* Update to Mockito 2 ### 2.10.0 ###
* Cast extension: Work around Cast framework returning a limited-size queue
items list ([#4964](https://github.com/google/ExoPlayer/issues/4964)). * Core library:
* Add new `ExoPlaybackException` types for remote exceptions and out-of-memory
errors.
* DASH:
* Parse role and accessibility descriptors into `Format.roleFlags`.
* Support multiple CEA-608 channels muxed into FMP4 representations
([#5656](https://github.com/google/ExoPlayer/issues/5656)).
* HLS:
* Work around lack of LA_URL attribute in PlayReady key request init data.
* Prevent unnecessary reloads of initialization segments.
* Form an adaptive track group out of audio renditions with matching name.
* Support encrypted initialization segments
([#5441](https://github.com/google/ExoPlayer/issues/5441)).
* Parse `EXT-X-MEDIA` `CHARACTERISTICS` attribute into `Format.roleFlags`.
* Add metadata entry for HLS tracks to expose master playlist information.
* MPEG-TS: enable HDMV DTS stream detection only if a flag is set. By default
(if the flag is not set), the 0x82 elementary stream type is now treated as an
SCTE subtitle track
([#5330](https://github.com/google/ExoPlayer/issues/5330)).
* `ExtractorMediaSource` renamed to `ProgressiveMediaSource`.
* Support for playing spherical videos on Daydream.
* Improve decoder re-use between playbacks. TODO: Write and link a blog post * Improve decoder re-use between playbacks. TODO: Write and link a blog post
here ([#2826](https://github.com/google/ExoPlayer/issues/2826)). here ([#2826](https://github.com/google/ExoPlayer/issues/2826)).
* Track selection: * Rename `ExtractorMediaSource` to `ProgressiveMediaSource`.
* Add options for controlling audio track selections to `DefaultTrackSelector` * Fix issue where using `ProgressiveMediaSource.Factory` would mean that
([#3314](https://github.com/google/ExoPlayer/issues/3314)). `DefaultExtractorsFactory` would be kept by proguard. Custom
* Update `TrackSelection.Factory` interface to support creating all track `ExtractorsFactory` instances must now be passed via the
selections together. `ProgressiveMediaSource.Factory` constructor, and `setExtractorsFactory` is
* Allow to specify a selection reason for a `SelectionOverride`. deprecated.
* Move `PriorityTaskManager` from `DefaultLoadControl` to `SimpleExoPlayer`.
* Add new `ExoPlaybackException` types for remote exceptions and out-of-memory
errors.
* Use full BCP 47 language tags in `Format`.
* Do not retry failed loads whose error is `FileNotFoundException`. * Do not retry failed loads whose error is `FileNotFoundException`.
* Support Dolby Vision extraction in MP4 and fMP4. * Fix issue where not resetting the position for a new `MediaSource` in calls
to `ExoPlayer.prepare` causes an `IndexOutOfBoundsException`
([#5520](https://github.com/google/ExoPlayer/issues/5520)).
* Offline: * Offline:
* Speed up removal of segmented downloads * Improve offline support. `DownloadManager` now tracks all offline content,
([#5136](https://github.com/google/ExoPlayer/issues/5136)). not just tasks in progress. TODO: Write and link a blog post here.
* Add `setStreamKeys` method to factories of DASH, SmoothStreaming and HLS
media sources to simplify filtering by downloaded streams.
* Caching: * Caching:
* Improve performance of `SimpleCache` * Improve performance of `SimpleCache`
([#4253](https://github.com/google/ExoPlayer/issues/4253)). ([#4253](https://github.com/google/ExoPlayer/issues/4253)).
@ -47,13 +31,38 @@
this behavior (`DataSpec.FLAG_ALLOW_CACHING_UNKNOWN_LENGTH`) has been this behavior (`DataSpec.FLAG_ALLOW_CACHING_UNKNOWN_LENGTH`) has been
replaced with an opt out flag replaced with an opt out flag
(`DataSpec.FLAG_DONT_CACHE_IF_LENGTH_UNKNOWN`). (`DataSpec.FLAG_DONT_CACHE_IF_LENGTH_UNKNOWN`).
* DownloadManager: * Extractors:
* Create only one task for all DownloadActions for the same content. * MP3: Add support for SHOUTcast ICY metadata
* Rename TaskState to DownloadState. ([#3735](https://github.com/google/ExoPlayer/issues/3735)).
* Add new states to DownloadState. * MP4/FMP4: Add support for Dolby Vision.
* Replace DownloadState.action with DownloadAction fields. * MP4: Fix issue handling meta atoms in some streams
* DRM: Fix black flicker when keys rotate in DRM protected content ([#5698](https://github.com/google/ExoPlayer/issues/5698),
([#3561](https://github.com/google/ExoPlayer/issues/3561)). [#5694](https://github.com/google/ExoPlayer/issues/5694)).
* MP3: Fix ID3 frame unsychronization
([#5673](https://github.com/google/ExoPlayer/issues/5673)).
* MPEG-TS: Enable HDMV DTS stream detection only if a flag is set. By default
(i.e. if the flag is not set), the 0x82 elementary stream type is now
treated as an SCTE subtitle track
([#5330](https://github.com/google/ExoPlayer/issues/5330)).
* Track selection:
* Add options for controlling audio track selections to `DefaultTrackSelector`
([#3314](https://github.com/google/ExoPlayer/issues/3314)).
* Update `TrackSelection.Factory` interface to support creating all track
selections together.
* Allow to specify a selection reason for a `SelectionOverride`.
* UI:
* Update `DefaultTimeBar` based on duration of media and add parameter to set
the minimum update interval to control the smoothness of the updates
([#5040](https://github.com/google/ExoPlayer/issues/5040)).
* Fix issues with flickering notifications on KitKat when using
`PlayerNotificationManager` and `DownloadNotificationUtil`. For the latter,
applications should switch to using `DownloadNotificationHelper`.
* Add option to include navigation actions in the compact mode of
notifications created using `PlayerNotificationManager`.
* Change signature of `PlayerNotificationManager.NotificationListener` to
better fit service requirements.
* Move creation of dialogs for `TrackSelectionView`s to
`TrackSelectionDialogBuilder` and add option to select multiple overrides.
* Audio: * Audio:
* Allow `AudioProcessor`s to be drained of pending output after they are * Allow `AudioProcessor`s to be drained of pending output after they are
reconfigured. reconfigured.
@ -70,47 +79,33 @@
type ([#3100](https://github.com/google/ExoPlayer/issues/3100)). type ([#3100](https://github.com/google/ExoPlayer/issues/3100)).
* Query `MediaCodecList.ALL_CODECS` when selecting a tunneling decoder * Query `MediaCodecList.ALL_CODECS` when selecting a tunneling decoder
([#5547](https://github.com/google/ExoPlayer/issues/5547)). ([#5547](https://github.com/google/ExoPlayer/issues/5547)).
* Add support for SHOUTcast ICY metadata * DRM: Fix black flicker when keys rotate in DRM protected content
([#3735](https://github.com/google/ExoPlayer/issues/3735)). ([#3561](https://github.com/google/ExoPlayer/issues/3561)).
* CEA-608: Improved conformance to the specification * CEA-608: Improved conformance to the specification
([#3860](https://github.com/google/ExoPlayer/issues/3860)). ([#3860](https://github.com/google/ExoPlayer/issues/3860)).
* DASH:
* Parse role and accessibility descriptors into `Format.roleFlags`.
* Support multiple CEA-608 channels muxed into FMP4 representations
([#5656](https://github.com/google/ExoPlayer/issues/5656)).
* HLS:
* Work around lack of LA_URL attribute in PlayReady key request init data.
* Prevent unnecessary reloads of initialization segments.
* Form an adaptive track group out of audio renditions with matching name.
* Support encrypted initialization segments
([#5441](https://github.com/google/ExoPlayer/issues/5441)).
* Parse `EXT-X-MEDIA` `CHARACTERISTICS` attribute into `Format.roleFlags`.
* Add metadata entry for HLS tracks to expose master playlist information.
* Support for playing spherical videos on Daydream.
* Cast extension: Work around Cast framework returning a limited-size queue
items list ([#4964](https://github.com/google/ExoPlayer/issues/4964)).
* VP9 extension: Remove RGB output mode and libyuv dependency, and switch to * VP9 extension: Remove RGB output mode and libyuv dependency, and switch to
surface YUV output as the default. Remove constructor parameters `scaleToFit` surface YUV output as the default. Remove constructor parameters `scaleToFit`
and `useSurfaceYuvOutput`. and `useSurfaceYuvOutput`.
* Change signature of `PlayerNotificationManager.NotificationListener` to better * MediaSession extension:
fit service requirements. Remove ability to set a custom stop action. * Let apps intercept media button events
* Fix issues with flickering notifications on KitKat.
`PlayerNotificationManager` has been fixed. Apps using
`DownloadNotificationUtil` should switch to using
`DownloadNotificationHelper`.
* Provide flag to include next/prev buttons in compact mode of a notification
([#5616](https://github.com/google/ExoPlayer/issues/5616)).
* Move creation of dialogs for `TrackSelectionView`s to
`TrackSelectionDialogBuilder` and add option to select multiple overrides.
* MediaSessionConnector: Let apps intercept media button events
([#5179](https://github.com/google/ExoPlayer/issues/5179)). ([#5179](https://github.com/google/ExoPlayer/issues/5179)).
* Fix issue with `TimelineQueueNavigator` not publishing the queue in shuffled * Fix issue with `TimelineQueueNavigator` not publishing the queue in shuffled
order when in shuffle mode. order when in shuffle mode.
* Fix issue where not resetting the position for a new `MediaSource` in calls to
`ExoPlayer.prepare` causes an `IndexOutOfBoundsException`
([#5520](https://github.com/google/ExoPlayer/issues/5520)).
* Update `DefaultTimeBar` based on duration of media and add parameter to set
the minimum update interval to control the smoothness of the updates
([#5040](https://github.com/google/ExoPlayer/issues/5040)).
* Fix issue where using `ProgressiveMediaSource.Factory` would mean that
`DefaultExtractorsFactory` would be kept by proguard. Custom
`ExtractorsFactory` instances must now be passed via the
`ProgressiveMediaSource.Factory` constructor, and `setExtractorsFactory` is
deprecated.
* Prevent seeking when ICY metadata is present to prevent playback problems
([#5658](https://github.com/google/ExoPlayer/issues/5658)).
* Use full BCP 47 language tags in `Format`.
* Take byte offset into account when unsynchronizing an id3 frame
([#5673](https://github.com/google/ExoPlayer/issues/5673)).
* Handle meta atom as a full box when parsing mp4
([#5698](https://github.com/google/ExoPlayer/issues/5698),
[#5694](https://github.com/google/ExoPlayer/issues/5694)).
* Move `PriorityTaskManager` from `DefaultLoadControl` to `SimpleExoPlayer`.
### 2.9.6 ### ### 2.9.6 ###

View File

@ -13,8 +13,8 @@
// limitations under the License. // limitations under the License.
project.ext { project.ext {
// ExoPlayer version and version code. // ExoPlayer version and version code.
releaseVersion = '2.9.6' releaseVersion = '2.10.0'
releaseVersionCode = 2009006 releaseVersionCode = 2010000
minSdkVersion = 16 minSdkVersion = 16
targetSdkVersion = 28 targetSdkVersion = 28
compileSdkVersion = 28 compileSdkVersion = 28

View File

@ -29,11 +29,11 @@ public final class ExoPlayerLibraryInfo {
/** The version of the library expressed as a string, for example "1.2.3". */ /** The version of the library expressed as a string, for example "1.2.3". */
// Intentionally hardcoded. Do not derive from other constants (e.g. VERSION_INT) or vice versa. // Intentionally hardcoded. Do not derive from other constants (e.g. VERSION_INT) or vice versa.
public static final String VERSION = "2.9.6"; public static final String VERSION = "2.10.0";
/** The version of the library expressed as {@code "ExoPlayerLib/" + VERSION}. */ /** The version of the library expressed as {@code "ExoPlayerLib/" + VERSION}. */
// Intentionally hardcoded. Do not derive from other constants (e.g. VERSION) or vice versa. // Intentionally hardcoded. Do not derive from other constants (e.g. VERSION) or vice versa.
public static final String VERSION_SLASHY = "ExoPlayerLib/2.9.6"; public static final String VERSION_SLASHY = "ExoPlayerLib/2.10.0";
/** /**
* The version of the library expressed as an integer, for example 1002003. * The version of the library expressed as an integer, for example 1002003.
@ -43,7 +43,7 @@ public final class ExoPlayerLibraryInfo {
* integer version 123045006 (123-045-006). * integer version 123045006 (123-045-006).
*/ */
// Intentionally hardcoded. Do not derive from other constants (e.g. VERSION) or vice versa. // Intentionally hardcoded. Do not derive from other constants (e.g. VERSION) or vice versa.
public static final int VERSION_INT = 2009006; public static final int VERSION_INT = 2010000;
/** /**
* Whether the library was compiled with {@link com.google.android.exoplayer2.util.Assertions} * Whether the library was compiled with {@link com.google.android.exoplayer2.util.Assertions}