github daily-co/daily-js daily-js-2022-02-15-0.23.0
0.23.0

latest releases: daily-js-2024-10-31-0.73.0, daily-js-2024-10-30-0.72.2, daily-js-2024-10-04-0.72.1...
2 years ago

Features

  • Beta: Replacing your video background with an image is now supported, using the updateInputSettings() method. You can specify any custom image, or select from one of 10 pre-canned images provided by Daily, or just rely on Daily’s default background image:
callObject.updateInputSettings({
  video: {
    processor: {
      type: 'background-image',
      config?: {
        source?: 'default' | <public url to jpg, jpeg, or png> |	<int: 1-10>		
      }
    }
  }
});
  • Pre-beta: startRemoteMediaPlayer() now allows you to specify simulcast encoding settings:
callObject.startRemoteMediaPlayer({
  url: 'http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4',
  settings: { 
    state: 'play', 
    simulcastEncodings: [
      { maxBitrate: 80000, maxFramerate: 10, scaleResolutionDownBy: 4 },
      { maxBitrate: 200000, maxFramerate: 15, scaleResolutionDownBy: 2 },
      { maxBitrate: 600000, maxFramerate: 30}]
    }
});
  • Pre-beta: You can now get a new errorType'remote-media-player-error'—in the 'nonfatal-error' event, when an error occurs in a remote media player (started with startRemoteMediaPlayer()).

Bugfixes

  • If you’ve specified a false input device either up-front (i.e. join({ url, audioSource: false })) or in the middle of a call (i.e. setInputDevicesAsync({ audioSource: false })), then the corresponding track state will now be reported as 'off' as if it were a normal user mute (i.e. setLocalAudio(false)):
callObject.participants().local.tracks.audio.state; // 'off'
callObject.participants().local.tracks.audio.off.byUser; // true

// ...and from another participant's point of view...
callObject.participants()['some-id'].tracks.audio.state; // 'off'
callObject.participants()['some-id'].tracks.audio.off.byUser; // true

Prior to this change, participants would see tracks with no backing input source reported as either permanently 'interrupted' (if it was their own track) or permanently 'loading' (if it was a remote track).

Other improvements

  • Pre-beta: room() info now returns whether your domain has the enable_advanced_chat feature flag set (which controls a Prebuilt-only pre-beta feature).

Don't miss a new daily-js release

NewReleases is sending notifications on new releases.