Enabling WebCodec stops screen share feature from working in Chorme

Hi @tommy and @vic.yang guys,
We’ve been using web video sdk from day one and recently migrated to latest version(1.1.3).
Since the beginning of Gallery view feature we’ve been facing an issue where restarting the camera takes a long time (CS-3067) . As per @tommy 's suggestion we started tinkering with WebCodecs experimental feature of Chrome.
It seems that the lag disappears as soon as we enable WebCodecs but the screen sharing feature stops working.
We tried using origin trial token and chrome flags to enable WebCodec in Chrome.

Error screenshot:

Which Web Video SDK version?
1.1.0 and 1.1.3

To Reproduce(If applicable)
Steps to reproduce the behavior:

  1. Downlad react demo
  2. Enable WebCodecs in Chrome (origin token or chrome flags)
  3. Start videos
  4. Strat screen sharing

Result:
Screen sharing does not work. Error thrown from the screen sharing method.

Device :

  • Device: Desktop
  • OS: Windows 10 and Ubuntu 20.04
  • Browser: Chorme
  • Browser - Version 92.0.4515.131 (Official Build) (64-bit)

Since screen sharing is a quintessential part of online meetings, we are not able to use the WebCodecs as a solution to the stuck camera problem. Please share with us a solution to this long persisting problem.

Also Cross Origin Isolation is a major hindrance to Single Page applications such as Angular and React.
Could you guys please provide a detailed guide on how to enable Cross origin isolation for Angular in production?
Here’s our production configuartion:
Proxy Server: Nginx
WebServer: Apache
Application framework: Angular 8
OS: Ubuntu

Regards and Thanks,
Mehedi Hasan
Software Engineer

Yes! We are also facing the same issue in VideoSDK@1.1.3.
I’ve enabled WebCodecs and SharedArrayBuffers origin trial but strange part is issue is not there in local environment but in production I’m getting this error.

Hey @shoaib , @hasan.md ,

Thanks for reporting this issue, and apologies for the inconvenience. We are working on a fix and will release one soon. :slight_smile: Stay updated here: https://marketplace.zoom.us/docs/changelog

Here is the same issue for Web Client SDK that we fixed: Enabling WebCodecs Origin Trial causes the screen sharing not to work properly

Thanks,
Tommy

Hey @shoaib @hasan.md

Thanks for your feedback. Sorry for the unpleasant experience of Web Video SDK.

If the Web Codecs is enabled, you should pass the Video Element instead of Canvas Element to stream.startShareScreen method. Following is a quick way to determine whether the browser supports WebCodecs:

function isSupportWebCodecs(){
  return typeof window.MediaStreamTrackProcessor === 'function'
}

We have updated the react-demo sample code, you can also refer to its implementation.

In the next release of Web Video SDK, we will provide detailed instructions on the console when the WebCodecs is enabled.

Thanks
Vic

1 Like

@yic.yang I’m using origin trials for WebCodecs and SharedBuffer but

function isSupportWebCodecs(){
  return typeof window.MediaStreamTrackProcessor === 'function'
}

It always returns me false.

Hey @shoaib

Thanks for your feedback.

Once the WebCodecs is enabled, this function will return true. Make sure there are two OTs applied on your page. SharedArrayBuffer and WebCodecs are independent features that require an OT.

Thanks
Vic

@vic.yang Yes, there are two meta tags that I have embedded one for SharedArrayBuffer and other for WebCodecs, but its returning false only. Does that mean that OTs are not applied on the page? and if that so then how come ScreenShare is not working.

Hey @shoaib

The errors on consoles show that ’ e.desktopSharingValue.video.play is not a function ', which indicates Video SDK judges that WebCodecs was enabled. Video SDK will use VideoElement instead of CanvasElement to render sharing content.

Thanks
Vic

Hey @vic.yang! So, now I’m using VideoElement in chrome, now below error is occurring on screen share.

Hey @shoaib

Did you try our react-sample-project ? Can it work without error?

Thanks
Vic

@vic.yang Yes It works (there are no errors), but sometimes at receiving side I get black screen, but that I think is a different issue.
We are almost done but this screen share issue on Chrome is blocking everything :confused:.

Hey @shoaib ,

Do you see any errors in the browser console when you see the black screen?

Thanks,
Tommy

@tommy No, There are no errors in the console.

Hey @hasan.md were you able to resolve this screen share issue on Chrome?

Hey @shoaib ,

Which version of Chrome are you using?

Thanks,
Tommy

@tommy Version 92.0.4515.131 (Official Build) (x86_64)

@tommy any updates on this?

Hey @shoaib ,

I am not able to reproduce this issue. Can you please share a screenshot of the browser console when this issue happens?

Thanks,
Tommy

@tommy I just need to resolve this error that comes on invoking startShareScreen on Chrome. In other browsers its working.
This solution by @vic.yang is giving another error.

Kindly provide some solution as I’m stuck here.

Hey @shoaib ,

For the first issue, we are releasing the fix in the Video SDK soon, but for now you can follow the fix in the sample app: fix sharing webcodecs issue · zoom/videosdk-web-sample@046951a · GitHub

Thanks,
Tommy

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.