Skip to main content
Video call with one participant large and and other smaller participants float to top left Self-view, if enabled, now floats to the top of a Daily Prebuilt call with setShowParticipantsBar(false).

daily-js 0.17.0

  • 🗣 Shipped activeSpeakerMode iframe property to control whether Daily Prebuilt displays the person currently speaking ({ activeSpeakerMode: true }; this is the default) or a grid of call participants ({ activeSpeakerMode: false } ).
// Set Daily Prebuilt to grid mode
DailyIFrame.createFrame({ activeSpeakerMode: false });
  • 🧩 New iframe property layoutConfig customizes how the grid of video tiles behaves when the browser is resized (if the call is in grid mode, of course).
// Example layoutConfig usage
DailyIframe.createFrame({
  layoutConfig: {
    grid: {
      minTilesPerPage: 3, // default: 1, minimum required: 1
      maxTilesPerPage: 36, // default: 25, maximum allowable: 49
    },
  },
});
  • 🎭 Added ‘staged’ media track subscription state that corresponds to setting up the connections for a track, but not transmitting data across that connection. This lets you “stage” tracks that you know you’ll need soon, for later rapid transition into the fully “subscribed” state, without using any extra bandwidth. Reminder: Track subscriptions are only supported when your call is in SFU mode.
// Example 'staged' usage
call.updateParticipant(id, {
  setSubscribedTracks: {
    video: 'staged',
  },
});
  • 🎁 Launched several affordances to give you control over how you want to receive the video tracks that you’re subscribed to. These are referred to as receive settings. The first—and so far only—configurable receive settings are the desired maximum simulcast layers for video and screenVideo. A higher simulcast layer corresponds to higher quality. The new affordances are:
Note: Simulcast layer settings only apply when a call is in SFU mode.
// Example usage: update receive settings for a participant on the fly
call.updateReceiveSettings({
  'some-participant-id': { video: { layer: 0 } },
});

react-native-daily-js 0.14.0

Daily Prebuilt

  • 🙈 You can now toggle whether or not you see your own video during a call.
  • 🧩 The new layoutConfig iframe property lets you customize the number of participant videos displayed when a call is in grid mode (see daily-js update above).
  • 🎶 Use setPlayNewParticipantSound() to turn off the default sound when a new participant joins a call (setPlayNewParticipantSound(false)).
  • ☁ Updated setShowParticipantsBar() when set to false with self-view still visible to float the self-view to the upper left corner of the call.
  • 🐛 Fixed a bug that occasionally prevented color themes from being applied.
  • 📛 Added a badge that notifies call participants when a call is being live streamed.