1.3.0 (September 11, 2017)
New Features
-
twilio-video.js now features an API for setting and updating bandwidth
constraints. When youconnect
to a Room, you can specify an optional
maxAudioBitrate
and an optionalmaxVideoBitrate
, both in bits per second
(bps). These values are set as hints for variable bitrate codecs, but will not
take effect for fixed bitrate codecs.For example, to connect with a maximum audio bitrate of 64 kilobits per
second and a maximum video bitrate of 500 kilobits per second:const room = await connect(token, { maxAudioBitrate: 64000, maxVideoBitrate: 500000 });
You can also update your
maxAudioBitrate
andmaxVideoBitrate
while
participating in a Room. For example, to reset your maximum bitrates for audio
and video, you could set each tonull
:room.localParticipant.setParameters({ maxAudioBitrate: null, maxVideoBitrate: null });
If you want to change only one value—for example, just the maximum video
bitrate—you can omit the other value. For example, to update only the maximum
video bitrate, leaving the maximum audio bitrate unchanged:room.localParticipant.setParameters({ maxVideoBitrate: 1000000 });
-
twilio-video.js now features an API for setting preferred codecs when
publishing Tracks. When youconnect
to a Room, you can specify an optional
preferredAudioCodecs
array and an optionalpreferredVideoCodecs
array.
These are codec "preferences" because they will only be applied if your
browser and the type of Room you are connected to support them. If a
preference cannot be satisfied, we will fallback to the next best codec.For example, to connect with a preferred video codec of H.264:
const room = await connect(token, { preferredVideoCodecs: ['H264'] });
You can also specify more than one preferred codec. For example, to connect
with a preferred audio codec of iSAC, falling back to Opus if iSAC is
unavailable:const room = await connect(token, { preferredAudioCodecs: ['isac', 'opus'] });
Please refer to the API docs for more information on both of these features.
Bug Fixes
- Track's
attach
method now sets theplaysInline
attribute on <audio>
and <video> elements. This is necessary to allow playback in Safari 11
on iOS.