ExoPlayer 2.1 is our first major update to ExoPlayer 2. In addition to a whole raft of bug fixes, ExoPlayer 2.1 adds significant pieces of new functionality. Some of the highlights are outlined below.
Seeking in live HLS streams
The ability to seek in live HLS streams has been a much requested feature. In ExoPlayer 2.1 this functionality finally arrives, allowing you to seek anywhere within the window of media advertised by the HLS media playlists!
Styling and positioning support for CEA-608 captions
Previous versions of ExoPlayer rendered CEA-608 captions centered and without styling at the bottom of the screen. ExoPlayer 2.1 parses and applies any positioning and styling information that’s embedded in the caption data, allowing the captions to be displayed as the content creator intended.
ID3 metadata and album art
ExoPlayer now parses ID3 metadata from the headers of MP3 and MP4 files. The metadata is placed into the Format object of the corresponding track. If you wish to receive and handle ID3 metadata then add an EventListener to the player via ExoPlayer.addListener. In the listener’s onTracksChanged method, iterate over the tracks looking for metadata. For example:
SimpleExoPlayerView has also been updated to look at ID3 metadata, and will automatically display embedded ID3 album art during audio playbacks. If not desired, this functionality can be disabled using SimpleExoPlayerView’s setUseArtwork method.
Improved flexibility of UI components
ExoPlayer’s out-of-the-box UI components can be more easily customized in ExoPlayer 2.1. This is the subject of a separate blog post, which can be found here.
The features described above are just some of the additions in the 2.1 release. Since the release also contains many important bug fixes, we recommend that developers upgrade from earlier versions. Full release notes can be found here.