# Video SDK Web 1.4.0 release

**URL:** <https://devforum.zoom.us/t/video-sdk-web-1-4-0-release/73183>\
**Category:** New Releases\
**Created:** [July 28, 2022, 7:11pm UTC](https://devforum.zoom.us/t/video-sdk-web-1-4-0-release/73183 "2022-07-28T19:11:51Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![tommy](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/tommy/32/72769_2.png) [@tommy](https://devforum.zoom.us/u/tommy)\
**Post date:** [July 28, 2022, 7:11pm UTC](https://devforum.zoom.us/t/video-sdk-web-1-4-0-release/73183/1 "2022-07-28T19:11:51Z")

</div>

Hello Zoom Developers, here are the updates for the **Meeting SDK Web 1.4.0 release** 🙂

## 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](https://marketplacefront.zoom.us/sdk/custom/web/interfaces/localaudiotrack.html) 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

---

<div class="post-metadata">

**Author:** ![shoaib](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/shoaib/32/28580_2.png) [@shoaib](https://devforum.zoom.us/u/shoaib)\
**Post date:** [July 29, 2022, 7:06pm UTC](https://devforum.zoom.us/t/video-sdk-web-1-4-0-release/73183/2 "2022-07-29T19:06:38Z")

</div>

> [@tommy](#):
>
> `preloadDependentAssets` method to preload asset dependencies to optimize performance in poor network environments.

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:

 ![Screenshot 2022-07-30 at 12.04.41 AM](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/9/8/988f0a33a89d461dfe47fc5f8b5e7da84f22c5a5.png)

 ![Screenshot 2022-07-30 at 12.08.14 AM](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/5/4/542be46283ee1fe45318f6108997574b8c41c8a6.png)

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

 ![Screenshot 2022-07-30 at 12.09.35 AM](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/5/8/5806055c7becb3cf67064eb683872d1931aa14af.png)

 ![Screenshot 2022-07-30 at 12.10.15 AM](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/2/0/207682359b1946976b7861a3fccd15564c86a75c.png)

---

<div class="post-metadata">

**Author:** ![tommy](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/tommy/32/72769_2.png) [@tommy](https://devforum.zoom.us/u/tommy)\
**Post date:** [August 1, 2022, 7:12pm UTC](https://devforum.zoom.us/t/video-sdk-web-1-4-0-release/73183/3 "2022-08-01T19:12:03Z")

</div>

Hey @shoaib ,

We are taking a look.

Thanks,  
Tommy

---

<div class="post-metadata">

**Author:** ![vic.yang](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/vic.yang/32/24656_2.png) [@vic.yang](https://devforum.zoom.us/u/vic.yang)\
**Post date:** [August 2, 2022, 1:51am UTC](https://devforum.zoom.us/t/video-sdk-web-1-4-0-release/73183/4 "2022-08-02T01:51:07Z")

</div>

Hey @shoaib

That’s correct. The `preloadDependentAssets` method preloads the assets from [source.zoom.us](https://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

---

<div class="post-metadata">

**Author:** ![shoaib](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/shoaib/32/28580_2.png) [@shoaib](https://devforum.zoom.us/u/shoaib)\
**Post date:** [August 2, 2022, 5:55am UTC](https://devforum.zoom.us/t/video-sdk-web-1-4-0-release/73183/5 "2022-08-02T05:55:16Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![vic.yang](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/vic.yang/32/24656_2.png) [@vic.yang](https://devforum.zoom.us/u/vic.yang)\
**Post date:** [August 2, 2022, 6:24am UTC](https://devforum.zoom.us/t/video-sdk-web-1-4-0-release/73183/6 "2022-08-02T06:24:17Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![shoaib](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/shoaib/32/28580_2.png) [@shoaib](https://devforum.zoom.us/u/shoaib)\
**Post date:** [August 2, 2022, 6:58am UTC](https://devforum.zoom.us/t/video-sdk-web-1-4-0-release/73183/7 "2022-08-02T06:58:09Z")

</div>

Okay, Thanks @vic.yang !

---

<div class="post-metadata">

**Author:** ![tommy](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/tommy/32/72769_2.png) [@tommy](https://devforum.zoom.us/u/tommy)\
**Post date:** [August 2, 2022, 3:57pm UTC](https://devforum.zoom.us/t/video-sdk-web-1-4-0-release/73183/8 "2022-08-02T15:57:18Z")

</div>

Thanks @vic.yang !

-Tommy

---

<div class="post-metadata">

**Author:** ![tommy](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/tommy/32/72769_2.png) [@tommy](https://devforum.zoom.us/u/tommy)\
**Post date:** [August 2, 2022, 3:57pm UTC](https://devforum.zoom.us/t/video-sdk-web-1-4-0-release/73183/9 "2022-08-02T15:57:21Z")

</div>

Closed on August 2, 2022, 3:57pm UTC


