Video SDK Web 1.4.0 release

Hello Zoom Developers, here are the updates for the Meeting SDK Web 1.4.0 release :slight_smile:

Added

  • muteUserAudioLocally method to locally mute or unmute another user’s audio.
  • Mic and speaker preview support.
    • The microphone can be tested by recording voice and playing it.
    • Speakers can be tested by playing a sound and visualizing its audio wave.
    • See the LocalAudioTrack documentation in the SDK reference to learn more.
  • stayAwake option to the init method to prevent device dimming or locking during a session.
  • preloadDependentAssets method to preload asset dependencies to optimize performance in poor network environments.
  • Manager (co-host) support using the makeManager and removeManager methods.

Enhanced

  • Video playback in Safari and Firefox by removing black bars from 4:3 aspect ratio.
  • Maximum number of participants per canvas to 25 (5×5), increased from 9 (3×3) previously supported.
  • Video statistics and data to include FPS and resolution of each rendered video.
    • Enabled using the subscribeVideoStatisticData method, with data acquired using the video-detailed-data-change event.
  • Starting video in mobile browsers with facing mode support.
  • Video quality support (up to 720p) for Intel Macs.
  • Command channel by reducing delay between messages.

Fixed:

  1. An issue where if the host unmutes someone with unmuteAudio, the user receives the host-ask-unmute-audio event instead of the audio being unmuted directly.
  2. Edge cases on Firefox where calling startAudio would always return an unresolved promise.

Thanks,
Tommy

hey @tommy I tried preloadDependentAssets method but its loading resource from https://source.zoom.us no matter what path I pass to this method.

But we use zoomClient.init('en-US', 'CDN') and when session starts it loads assets from CDN link and preloaded assets from https://source.zoom.us doesn’t get used only. (i.e. it still taking the same amount of time to load those assets instead of fetching those libs from browser cache)

When page gets loaded I call preloadDependentAssets and then clicking on start call button starts the session.

Assets loaded using preloadDependentAssets method:

Assets loaded when I click start call button and zoomClient.join gets called:

Hey @shoaib ,

We are taking a look.

Thanks,
Tommy

1 Like

Hey @shoaib

That’s correct. The preloadDependentAssets method preloads the assets from source.zoom.us( The default Zoom served CDN). To simplify the usage of this API, we don’t provide the assets location options in this method. We will improve the API in the next release.

Thanks
Vic

hey @vic.yang Thanks for the information, but thats not the actual issue that I’m trying to convey here.

Here, I’m assuming when you call preloadDependentAssets then its pre-loads (make the network calls and downloads) the assets required for starting a session and now when you actually start the session then the duration to join the session will decrease as we won’t be making network calls to load those asset files again.

If this is the expected outcome of preloadDependentAssets method then it’s not working as expected because even after calling this method network calls are being made to download those asset files again while joining session and as a result join time duration is same only.

I hope now Its clear what I’m trying to convey here.

Hey @shoaib

Understood. Thanks for your clear explanation.

We will improve the API in the next release. If you want to use the preload function in this version, set the second parameter of the init method ‘Global’ or leave it empty.

Thanks
Vic

2 Likes

Okay, Thanks @vic.yang !

Thanks @vic.yang !

-Tommy