Zoom Video SDK Issue: 9:16 Aspect Ratio on Desktop Browser for Participants Joining from Mobile Browser

Issue Description:

I am encountering an issue with the Zoom Video SDK where participant video displays in a 9:16 aspect ratio on desktop browsers when the participant joins from a mobile browser.

  • I have already set the originalRatio property to false in the stream.startVideo() configuration.
  • My expectation is for all participant videos to consistently maintain a 16:9 aspect ratio, irrespective of the device or browser used by the participant to join.

Despite this configuration, videos from participants joining via mobile browsers appear as portrait (9:16) when viewed on a desktop browser.

Environment:

  • SDK Version: (Please fill in the specific version you are using)
  • Platforms:
    • Participant Device: Mobile Browser (Android/iOS; Chrome/Safari)
    • Viewer Device: Desktop Browser (Chrome, Firefox, Safari, Edge)

What I Have Tried:

  1. Set originalRatio to false in the video client configuration.
  2. Verified SDK video settings for layout and aspect ratio.
  3. Tested across different desktop browsers and mobile devices.

Screenshot:

Below is a screenshot showing how the participant video is displayed as 9:16 instead of 16:9:

Expected Behavior:

All participant videos should adhere to the 16:9 aspect ratio, regardless of the participant’s device or browser.

Questions:

  1. How can I ensure the participant video maintains a 16:9 aspect ratio on the desktop browser, even when the participant joins from a mobile browser?

  2. Are there specific configurations or methods in the Zoom Video SDK to enforce this behavior?

  3. Does this issue stem from the mobile device’s camera orientation, and if so, how can I correct it programmatically?

@vic.yang @tommy

Please reply here or direct me how to resolve above issue.

Thanks

Hey @freelancer.nak

Thanks for your feedback.

Could you share some problematic session IDs with us for troubleshooting purposes?

Thanks
Vic

Hi thanks for reply.

here are the details

Code snippet

Session Details
24424
RNKy85f8T8SSDsZcX10zaw==

The ‘Guest’ participant has joined using an iPhone 14 Pro with Google Chrome (version 131.0.6778.154).

:point_up_2: This is from the host’s end, where the video of the ‘Guest’ participant is being accessed using an M1 Pro device running Google Chrome (version 131.0.6778.205, Official Build, arm64).

Let me know if any thing still you needed.

Thanks,
Naeem Ahmed

@vic.yang @tommy

Please reply here. Thanks

Hey @freelancer.nak

Sorry for the late reply.

Currently, we don’t support originalRatio:false on the iOS platform due to performance concerns.

I will further explain the reason:

  • Before Safari 16.4, we used a canvas as an intermediary to obtain video frame data. This allowed us to crop the video frames through the canvas. However, this approach had poor performance and often caused lag.
  • Starting with Safari 16.4, we switched to using VideoFrame for video data cropping directly, which improved performance. However, if cropping is still required, we would have to revert to the canvas intermediary solution.
  • After evaluation, we have decided not to support originalRatio: false natively on the iOS platform. For those who need this functionality, our upcoming version will introduce an interface for adding a customized video processor, allowing developers to implement their own cropping logic.

Thanks
Vic

1 Like