Skip to content

v2.1.0

Compare
Choose a tag to compare
@peaBerberian peaBerberian released this 29 May 14:25

Release 2.1.0 (2017-05-29)

Overview

This release adds new features, completely documents the API and fixes multiple bugs.

To keep improving the player, multiple API calls and options have been deprecated. That is, they still work for now but won't in the next major version. All of these are documented in the doc/deprecated.md file.

To sum up this version:

  • The API has been completely documented

  • audio description (just for DASH) and closed caption (DASH+smooth) support has been added

  • live DASH contents are better handled. SegmentTimeline based contents should now be completely managed. (SegmentTemplate without a SegmentTimeline still have a problem for now)

  • new methods have been added to access the parsed manifest's information (getSegments, getCurrentRepresentations, getCurrentAdaptations)

  • it is now possible to implement your own segment loader through the loadVideo's segmentLoader option.

  • A powerful new loadVideo option to define the starting position startAt has been added. It can be set relatively to the live edge or buffer depth of live contents

  • new player options have been added to better control the adaptive logic (specifically the max authorized bitrate)

  • BIF (image tracks) support for dash contents has been added.

Added

Audio description and closed captions support

It's now possible to switch specifically to audio description and closed captions tracks.

Those are now automatically detected following the DASH-IF and DVB-DASH specifications for DASH contents and the smooth streaming specification for smooth streaming contents.

To keep a compatibility with the old API (and to improve the naming overall), new API calls have been added:

New manifest-related API

Multiple manifest informations are now accessible through the API. The structure of a Manifest has been completely documented here.

This is what will be returned when you call the getManifest method.

Also new methods have been added:

segmentLoader option

A new loadVideo option, segmentLoader, allows to define a specific segment downloader option. One of the main usecase is for P2P streaming. It is documented here.

New options for adaptive streaming

Two new player options to better control the strategy calcultating the maximum authorized video bitrate have been added:

startAt option

The timeFragment has been deprecated to be replaced by the startAt option. This option is much more powerful and is documented here.

BIF support for DASH contents

DASH contents can now have a image track. This is detected in the DASH manifest if the following condition is respected:

  • the adaptation/representation's mimeType is equal to "application/bif"

The rest of the implementation is the same than for smooth streaming.

Other features

Multiple new API have been added. They generally replace in a more stable way now deprecated methods and options.

Deprecated

A large part of the API has been deprecated. Everything is documented here.

Bug fixes

This release comes with its lot of bug fixes. Most of it is related to dash and languages. You can consult the changelog for more infos.

What's next

The next important steps are:

  • better adaptive management (take into account the buffer available when defining the bitrate)
  • better player stability (ensure the player is never stalled indefinitely, better error management)
  • better DASH support, live or onDemand (support SegmentTemplate live contents, better text track support)

Those will surely come with a new major release v3.0.0.