720p not working in Zoom Meeting SDK after Pro upgrade

Meeting SDK Type : Zoom Meeting Android SDK
Meeting SDK Version : 6.3.10

Question : I have bought pro plan to support 720p Zoom Meeting SDK , still not supporting

I have Try following step :

So official zoom app workinng HD, but not in mine sdk app

Max resolution i m getting in android meeting SDK is 640*360 even the video is pinned .. while the same meeting I m getting 1280*720 resolution in the official zoom app

Also there is problem like whenever I have more than 4 videos pinning the video does not work it doesn’t improve quality of video to 720P

Can anyone please help me out with this ?

It has been 4 days

Hi @Riddhi Apologies for the wait here. Can you provide a meeting id of a meeting you tested and replicated the issue with?

Also are you using a virtual or real device?

Hello @ticorrian.heard

  • We are using real android device
  • Meeting Details, that we tested -
    • Meeting Id : 88932215743
    • Meeting Password : 000
    • Note: We are experiencing quality issues in all meetings.
  • Video link thats describe quality issue : https://johntv.live/issue-explaination.mp4
  • And When there are more than four videos, the quality drops to below 360p—even for pinned videos. We understand that gallery view quality decreases when there are more than four videos, but even after pinning, the video quality remains the same as in gallery view

We are waiting for your reply…

hello @ticorrian.heard

After extensive testing, I confirmed that the default UI SDK functions correctly. However, the Custom UI SDK has the following issues:

  1. Video Quality Stays at 640x360 with Four Videos
    When four videos are displayed, the video quality remains at 640x360. Pinning a video should increase its quality to 1080x720, but this does not occur.
    Observation: Minimizing and reopening the app changes the video quality to 1080x720, but a random video is pinned and upgraded instead of the user-selected pinned video.

  2. Video Quality Drops to 320x180 with More Than Four Videos
    When more than four videos are played, the quality of all videos drops to 320x180. Pinning a video does not improve its quality to the expected 1280x720, exhibiting the same issue as above.

    **Core Issue: While the quality drop to 320x180 with more than four videos is expected, the pinned video’s quality should improve to 1280x720, which is not happening,
    inshort i can confirm that there is bug in CUSTOM UI SDK user not able to pin the video,

    i used latest android sdk
    android device : oneplus nord
    i have pro plan that support 720P
    ******

    i can provide video of the bug if you need for better understanding.
    thankyou waiting for resolution ASAP .

Hi @Riddhi From the looks of the video, it looks like the issue is the ability for your SDK to receive 720p from your desktop client video stream. I believe this is caused by custom UIs pin not signaling to the meeting server that a video has been pinned, so the server cannot scale up the video resolution. I will check with our engineering team to confirm.

Can you share the code snippet you’re using for pinning your video?

@ticorrian.heard Here is pin video code from MyMeetingActivity.java


    AttenderVideoAdapter.ItemClickListener pinVideoListener = new AttenderVideoAdapter.ItemClickListener() {
        @Override
        public void onItemClick(View view, int position, long userId) {
            if(currentLayoutType == LAYOUT_TYPE_VIEW_SHARE) {
                return;
            }
            if(userId==currentPinUser){
                toggleVideoList();
                return ;
            }
            mDefaultVideoViewMgr.removeAllVideoUnits();
            mDefaultVideoViewMgr.removeAllAttendeeVideoUnit();

            // check video can remove or not in videolist
            DisplayMetrics displayMetrics = new DisplayMetrics();
            getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);

            int screenWidth = displayMetrics.widthPixels;
            int screenHeight = displayMetrics.heightPixels;
//            Log.d(Helper.TAG, "Screen Width "+ screenWidth + ", Height +" + screenHeight);
            MobileRTCVideoUnitRenderInfo renderInfo = new MobileRTCVideoUnitRenderInfo(0, 0, screenWidth, screenHeight); // video active..
            renderInfo.enableGalleryMode= false;  // false mean, its sdk set high resulotion
            mDefaultVideoViewMgr.addAttendeeVideoUnit(userId, renderInfo);
            currentPinUser = userId;
            mInMeetingService.getInMeetingVideoController().pinVideo(false, userId); // focus this video id to quality...

//            MobileRTCVideoUnitRenderInfo renderInfo = new MobileRTCVideoUnitRenderInfo(0, 0, 100, 100);
//            mDefaultVideoViewMgr.addAttendeeVideoUnit(userId, renderInfo);
//            currentPinUser = userId;


            toggleVideoList();
            Log.d(Helper.TAG, "In-is 720p "+ ZoomSDK.getInstance().getMeetingSettingsHelper().is720PEnabled());
        }
    };




@ticorrian.heard If you need to review more Java code and layouts, I can share the source code with you in a ZIP file via email!

That would be great! I will DM you for this information.

still no update ? no solution ?

Hi @Riddhi Im pinging engineering for an update now. Updates coming shortly.

Are you there ? Still no response regarding resolution? All the required things i already given you

@Riddhi Here is the response from engineering:

While pinVideo function is not supported, the pinVideo behavior can be implemented on the UI side by manually subscribing to a specific user’s video stream.
Note that video subscription is subject to a total bandwidth limit:

  • When a 720p stream is present, only one additional 360p stream can be subscribed to.

  • Without a 720p stream, up to four 360p streams can be subscribed to.

@ticorrian.heard Thanks for you reply !

Yes, I’ve already tested the pinVideo method is not work. But the issue is: when there are more than 4 videos in the meeting, pinning any video results in very low quality (like 90p or 180p). That’s the major problem we’re facing.

You mentioned subscribing to a specific user’s video, but in the Meeting SDK there’s no method to tell Zoom that it’s our pinned video.

Currently, what we’re doing is: we get the list of all video users, and if a user clicks on a video, we simply hide the video list and make the clicked video full screen.

Is there any new method or process for properly pinning video? Please let us know!


@Riddhi I think there is confusion when you say you’re “pinning” the video. Is this just terminology to describe a way your orchestrating the video layout in your app or are you using a method from the SDK to “pin” a video?

From your last reply “we get the list of all video users, and if a user clicks on a video, we simply hide the video list and make the clicked video full screen” it sound like the former but I want to be sure before going back to engineering.

@ticorrian.heard hello
Yes, you’re right — by “pinning” I mean we’re just handling the layout manually (hiding other videos and making one fullscreen). The main issue is that when there are more than 4 videos, even the fullscreen video drops to very low resolution.

@ticorrian.heard

You see also

In the custom UI, videos render at 360p resolution for the initial four videos. Subsequently, the quality of all videos degrades to 90p or 180p.

The primary concern is that, once this degradation occurs, expanding any of the affected videos to fullscreen mode does not improve the resolution, which remains capped at 90p or 180p.

Thanks for clarifying @Riddhi I’ll bring this back to engineering for further suggestions.