Method for interface display, related device, equipment and readable storage medium

CN115220829BActive Publication Date: 2026-09-25HUAWEI TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202110427045.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-04-20
Publication Date
2026-09-25
Estimated Expiration
2041-04-20

AI Technical Summary

Technical Problem

[0004]本申请实施例提供一种界面显示的方法,解决了电子设备因显示窗口替换数量过多而引起界面不稳定,造成电子设备的传输带宽增加以及云端服务器负载加重的问题

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115220829B_ABST
    Figure CN115220829B_ABST
Patent Text Reader

Abstract

The application provides a method for interface display, related devices, equipment and readable storage medium; wherein, the method comprises: an electronic device calculates the activity ranking of each video call member based on the duration of target sound intensity and the average value of sound intensity of video call users within a preset time length and other factors; in the case that the activity ranking of a video call member in a non-display window is higher than that of a video call member in a display window, the video call member in the non-display window is replaced with the video call member in the display window. By setting the maximum replacement number L and limiting the replacement number, on the basis of ensuring that the activity ranking of the video call user corresponding to the display window is high, the problem of too many display window jumps caused by too many replacement numbers is prevented, thereby causing the instability of the display interface and causing poor user visual experience; the problem of increased transmission bandwidth of the electronic device and increased load of the cloud server caused by too many display window jumps is also avoided.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of interface display, and more particularly to an interface display method, related apparatus, device, and computer-readable storage medium. Background Technology

[0002] Many current terminal products and social / conference applications offer multi-person video and voice chat functionality. In a multi-person call, due to the limited screen size of the calling device, a dynamic layout is typically used to limit the number of call participants displayed on one screen. To allow users to see all call participants, they need to swipe the screen to view them, or the device needs to dynamically refresh to present active participants. Currently, video call applications primarily use the following interface display methods: The first method involves tiling the members' images in a fixed layout across the user's screen, displaying n members on one screen. When the number of members exceeds n, the display continues on the next screen level until another n members are displayed, and so on. The second method provides a grid layout with a member list button, allowing users to expand the member panel to view all members in the call. The third method involves the terminal device acquiring the volume of each member's voice during the call and prioritizing the member with the highest volume on the first screen or at the beginning of the entire member screen. The fourth method involves the terminal device initially displaying one member on the screen, while other members are displayed using thumbnails, allowing users to view other members by clicking on the thumbnails.

[0003] With the continuous development of video call applications, how to ensure that the display window of active users is displayed on the terminal device interface while preventing the terminal device interface from changing drastically, so as to prevent the terminal device from becoming unstable due to too many display window replacements, thereby increasing the transmission bandwidth of the terminal device and the load on the cloud server, is an issue that technicians are increasingly concerned about. Summary of the Invention

[0004] This application provides a method for displaying an interface, which solves the problem that the interface of an electronic device becomes unstable due to an excessive number of window replacements, resulting in increased transmission bandwidth for the electronic device and increased load on the cloud server.

[0005] In a first aspect, embodiments of this application provide a method for displaying an interface, comprising: an electronic device displaying video call interfaces of K users among the current video call users through K display windows; the electronic device, based on the current activity ranking of the video call users, replacing M first users in the ranking changes with second users in the M display windows when the number of user ranking changes reaches L; wherein, the number of user ranking changes is the number of changes obtained by comparing the user ranking numbers of the K video call users with the top K video call users in the current activity ranking; L is less than K; M is less than or equal to L; the replacement first user has a higher current activity ranking than the corresponding replacement second user. In this way, by setting the maximum number of replacement windows L, the number of replacement windows is controlled. This ensures the accuracy of matching the currently most active users with the displayed windows, while avoiding large jumps in the electronic device interface caused by too many replacement windows. This would lead to unstable interface display, visual discomfort for users, and a poor user experience. On the other hand, large jumps in the interface caused by too many replacement windows would increase the bandwidth of the video stream during transmission and increase the load on the cloud server. Setting the maximum number of replacement windows L can effectively solve the above problems.

[0006] In one possible implementation, before swapping the M first users in the ranking changes with the M second users in the display windows, based on the current activity ranking of the video call users, the electronic device includes: the electronic device calculating the duration of the target sound intensity for each video call user within a preset duration and the average sound intensity for each video call user within the preset duration; the target sound intensity is a sound intensity in decibels greater than a first threshold; the electronic device sorts the duration and the average value to obtain ranking values ​​Rank1 and Rank2; the electronic device calculates a first ranking value for each video call user within the preset duration based on Rank1, Rank2, the weight value of Rank1, and the weight value of Rank2; the electronic device calculates a current activity score for each video call user based on the first ranking value, the weight value of the preset duration, a second ranking value for each video call user within a historical preset duration, and the weight value of the historical preset duration; the electronic device sorts the current activity scores of the video call users to obtain the current activity ranking of the video call users. In this way, compared to the traditional method of using the duration of the target sound intensity within a preset time as a reference factor for ranking the current activity level of a video call user, the method of using the duration of the target sound intensity within a preset time, the average sound intensity of the user within a preset time, and the second ranking value of the user within a historical preset time as reference factors for calculating the current activity level ranking of the user makes the electronic device's calculation of the user's current activity level ranking more comprehensive and accurate.

[0007] In one possible implementation, the value of L is... Among them, the for Round up to the nearest integer, the for Round down to the nearest integer. This way, when a display window of size L or less appears in the user interface of an electronic device and is replaced, the user will appropriately perceive the change without experiencing a sudden sensory shock. This ensures that the user does not notice the change in the display window while maximizing the accuracy of matching the currently most active user with the displayed window.

[0008] In one possible implementation, the video call users are those who meet the eligibility criteria for activity ranking. These eligibility criteria include one or more of the following: video call users with only video streams, video call users with only audio streams, video call users with both video and audio streams, and video call users with neither video nor audio streams. This allows the electronic device to filter out users who do not meet the activity ranking criteria, thereby reducing the number of users the electronic device needs to rank, saving computing and storage resources, and avoiding excessive storage consumption due to ranking a large number of video call users, which could negatively impact the device's performance.

[0009] In one possible implementation, the electronic device, based on the current activity ranking of the video call users, swaps M first users with M second users in the display windows when the number of user ranking changes reaches L. This includes: among the video call users in the K display windows, if there are N users whose current activity ranking is lower than K and N is greater than or equal to M, the electronic device selects the last M users with the lowest current activity ranking from the N users as second users; the electronic device sorts the second users based on their user ranking numbers to obtain a second ranking number for the second users; the electronic device selects the first M users with the highest current activity ranking from the video call users whose current activity ranking is within the top K and who are not corresponding to the K display windows as first users; the electronic device sorts the first users based on their current activity ranking to obtain a first ranking number for the first users; and the electronic device swaps the first users and the second users with the same first and second ranking numbers. In this way, the electronic device swaps the first and second users with the same first and second ranking numbers. This facilitates the swapping of video call users with higher activity rankings (users with higher first ranking numbers) with video call users whose display windows have higher user rankings (users with higher second ranking numbers). When the size or position of the display window is related to the user ranking number, video call users with higher activity rankings can be matched with larger or better positioned display windows. This makes it easier for users participating in video calls to obtain information about highly active video call users, thus improving the user experience.

[0010] In one possible implementation, the M display windows do not include locked display windows. In this way, the electronic device identifies video call users in locked display windows as users the user is following. Even if the current activity ranking of the followed user is lower than K, the followed user will not be replaced, allowing the user to obtain information about the followed user through the display window, thus improving the user experience.

[0011] In one possible implementation, the electronic device, based on the current activity ranking of the video call users, before replacing the M first users in the ranking changes with the M second users in the display windows when the number of user ranking changes reaches L, includes: the electronic device adjusting the current activity ranking of a third user; the third user is a user in the first state among the video call users in the K display windows whose current activity ranking is outside the top K; the adjusted activity ranking of the third user is within the top K. Thus, even if the third user's current activity ranking is outside the top K, the electronic device can adjust the third user's current activity ranking to be within the top K, preventing the third user from being replaced. This allows the local user to obtain information about their followed members (the third user) through the display window, improving the user experience.

[0012] In one possible implementation, the electronic device, based on the current activity ranking of the video call users, before replacing the M first users in the ranking changes with the M second users in the display windows when the number of user ranking changes reaches L, includes: the electronic device adjusting the current activity ranking of a fourth user; the fourth user is one of the top S users in the second state and with a high activity ranking among the video call users whose current activity ranking is lower than the top K corresponding to non-display windows; S is less than or equal to M; the adjusted current activity ranking of the fourth user is in the top M. Thus, within a preset time period, if there are video call users (the fourth user) with high activity but whose current activity ranking is not in the top K, the electronic device can predict that the fourth user will be an active video call user in the next preset time period based on the fourth user's activity within the preset time period, and give the fourth user priority replacement by adjusting its activity ranking, thereby increasing the participation of active users within the preset time period.

[0013] In one possible implementation, the electronic device, based on the current activity ranking of the video call users, swaps M first users in the ranking changes with M second users in the display windows when the number of user ranking changes reaches L. This includes: if the current activity rankings of the video call users in the K display windows are all within the top K and the number of user ranking changes reaches L, the electronic device sets the sequence number i = 1; the electronic device selects a first video call user and a second video call user with sequence number i from the first user sequence and the second user sequence, respectively; wherein, the first user sequence includes the top L video call users with the highest current activity rankings, and the second user sequence includes the top L video call users with the highest sequence numbers in the user ranking sequence; the user ranking sequence includes video call users in the K display windows with user ranking numbers; compared with the original user ranking sequence, in the first video call user and the second video call user... If not all video call users' user ranking numbers have changed, and the current activity ranking of the first video call user is higher than that of the second video call user, the electronic device swaps the positions of the first and second video call users in the user ranking sequence to obtain an updated user ranking sequence. If the number of users whose user ranking numbers have changed in the updated user ranking sequence is greater than or equal to L, the electronic device replaces the M first users whose user ranking numbers have changed with the corresponding M second users in the display windows. Compared with the original user ranking sequence, if the number of users whose user ranking numbers have changed in the updated user ranking sequence is less than L, the electronic device updates the serial number i according to the formula i = i + 1, and performs the step of selecting the first video call user and the second video call user with serial number i from the first user sequence and the second user sequence, respectively. In this way, when the user ranking of the K display windows changes and the second user in the K display windows has an activity ranking in the top K, the electronic device will try to swap the first user with the higher activity ranking with the second user with the lower activity ranking among the video call users whose user ranking has changed. When the size or position of the display window is related to the user ranking number, the video call user with the higher activity ranking can be matched with a larger or better positioned display window, which makes it easier for users participating in the video call to obtain information about the more active video call user and improves the user experience.

[0014] In one possible implementation, the electronic device, based on the current activity ranking of the video call users, swaps the M first users in the ranking changes with the M second users in the display windows when the number of user ranking changes reaches L. This includes: if the current activity ranking of the video call users in the K display windows is all within the top K and the number of user ranking changes reaches L, the electronic device sets the sequence number i = 1; the electronic device selects the first video call user and the third video call user with sequence number i from the first user sequence and the user ranking sequence, respectively; wherein, the first user sequence includes the top L video call users with the highest current activity ranking, and the user ranking sequence includes the video call users in the K display windows with user ranking numbers; if the first video call user and the third video call user are not... For the same user, the electronic device swaps the positions of the first video call user and the third video call user in the user sorting sequence to obtain an updated user sorting sequence. If the number of users whose user sorting numbers change in the updated user sorting sequence is greater than or equal to L, the electronic device replaces the M first users whose user sorting numbers change in the updated user sorting sequence with the M second users of the display windows. Compared with the original user sorting sequence, if the number of users whose user sorting numbers change in the updated user sorting sequence is less than L and the sequence number i is less than L, the electronic device updates the sequence number i according to the formula i = i + 1, and performs the step of selecting the first video call user and the third video call user with sequence number i from the first user sequence and the user sorting sequence, respectively. In this way, when the user ranking of the K display windows changes and the second user in the K display windows has an activity ranking in the top K, the electronic device will try to swap the first user with the higher activity ranking with the second user with the lower activity ranking among the video call users whose user ranking has changed. When the size or position of the display window is related to the user ranking number, the video call user with the higher activity ranking can be matched with a larger or better positioned display window, which makes it easier for users participating in the video call to obtain information about the more active video call user and improves the user experience.

[0015] In one possible implementation, the first and second video call users do not include video call users whose display windows are in a third state. This way, if a video call user in a third state is, for example, a user currently casting their video call, that user is not involved in the replacement process. This ensures the stability of the display interface for the user in the third state and avoids the problem of the display window jumping due to changes in the user order of the video call users in the third state when the local user obtains information displayed through their display window, thus affecting the local user's user experience.

[0016] In one possible implementation, the first video call user and the third video call user do not include video call users whose display windows are in a third state. This way, if a video call user in a third state is, for example, a user currently casting their video call, that user does not participate in the replacement process. This ensures the stability of the display interface of the video call user in the third state and avoids the problem of the display window jumping due to changes in the user order of the video call user in the third state when the local user obtains information displayed through their display window, thus affecting the local user's user experience.

[0017] Secondly, embodiments of this application provide an interface display device, the interface display device comprising:

[0018] The display unit is used to display the video call interfaces of the K users currently in a video call through K display windows;

[0019] The first judgment unit is used to determine whether the number of user ranking changes reaches L based on the current activity ranking of the video call users.

[0020] The replacement unit is used to replace the M first users in the sorting change with the M second users in the display windows when the first judgment unit determines that it is true.

[0021] In one possible implementation, the interface display device further includes:

[0022] The statistics unit is used to calculate the duration of the target sound intensity for each video call user within a preset time period and the average sound intensity for each video call user within a preset time period.

[0023] A sorting unit is used to sort the duration and the average value to obtain sorting values ​​Rank1 and Rank2.

[0024] The first calculation unit is used to calculate the current activity score of each video call user based on the first ranking value, the weight value of the preset duration, the second ranking value of each video call user within the historical preset duration, and the weight value of the historical preset duration.

[0025] The second calculation unit is used to sort the current activity scores of the video call users to obtain the current activity ranking of the video call users.

[0026] In one possible implementation, the substitution unit includes:

[0027] The second judgment unit is used to determine whether there are N users whose current activity ranking is lower than K among the video call users in the K display windows; the third judgment unit is used to determine whether N is greater than or equal to M if the first judgment unit determines that N is true.

[0028] The second user selection unit is used to select the last M users with the lowest current activity ranking from the N users as the second user when the second judgment unit determines that it is true.

[0029] The second sorting number generation unit is used to sort the second user based on the second user's user sorting number to obtain the second user's second sorting number;

[0030] The first user selection unit is used to select the top M users with the highest current activity ranking from among the video call users whose current activity ranking is within the top K and who are not the video call users corresponding to the K display windows as the first user;

[0031] The first sorting number generation unit is used to sort the first user based on the first user's current activity ranking to obtain the first sorting number of the first user;

[0032] The first execution unit is used to replace the first user and the second user whose first and second sorting numbers are the same.

[0033] In one possible implementation, the interface display device further includes:

[0034] The first adjustment unit is used to adjust the current activity ranking of the third user before the replacement unit replaces the M first users in the sorting change with the M second users in the display window.

[0035] In one possible implementation, the interface display device further includes:

[0036] The second adjustment unit is used to adjust the current activity ranking of the fourth user before the replacement unit replaces the M first users in the sorting change with the M second users in the display window.

[0037] In one possible implementation, the substitution unit further includes:

[0038] The fourth judgment unit is used to determine whether the current activity ranking of the video call users in the K display windows is within the top K.

[0039] The fifth judgment unit is used to determine whether the number of user sorting changes reaches L when the fourth judgment unit determines that it is true.

[0040] The sequence number setting unit is used to set the sequence number i = 1 when the fifth judgment unit determines that it is yes;

[0041] The first selection unit is used to select the first video call user with sequence number i from the first user sequence;

[0042] The second selection unit is used to select the second video call user with sequence number i from the second user sequence;

[0043] The sixth judgment unit is used to determine whether the user sorting numbers of the first video call user and the second video call user have changed compared with the original user sorting sequence.

[0044] The seventh judgment unit is used to determine whether the current activity ranking of the first video call user is higher than that of the second video call user if the sixth judgment unit determines that it is not true.

[0045] The first updating unit is used to swap the positions of the first video call user and the second video call user in the user sorting sequence when the seventh judging unit judges it to be true, so as to obtain an updated user sorting sequence.

[0046] The eighth judgment unit is used to determine whether the number of users whose user sort numbers have changed in the updated user sort sequence is greater than or equal to L compared with the original user sort sequence.

[0047] The second execution unit is used to replace the M first users whose serial numbers have changed in the updated user sorting sequence with the second users of the M display windows when the eighth judgment unit determines that it is true.

[0048] The first sequence number update unit is used to update the sequence number i according to the formula i = i + 1 if the eighth judgment unit determines that it is not true.

[0049] In one possible implementation, the substitution unit further includes:

[0050] The third selection unit is used to select the second video call user with the sequence number i from the user sorting sequence;

[0051] The ninth judgment unit is used to determine whether the first video call user and the third video call user, both of which have the same serial number i, are the same user.

[0052] The second updating unit is used to swap the positions of the first video call user and the third video call user in the user sorting sequence when the ninth judging unit determines that it is not true, so as to obtain an updated user sorting sequence.

[0053] The tenth judgment unit is used to determine whether the number of users whose user sorting numbers have changed in the updated user sorting sequence is greater than or equal to L compared with the original user sorting sequence.

[0054] The third execution unit is used to replace the M first users whose serial numbers have changed in the updated user sorting sequence with the M second users of the display windows when the tenth judgment unit determines that it is true.

[0055] The second sequence number update unit is used to update the sequence number i according to the formula i = i + 1 when the tenth judgment unit determines that it is true and the sequence number i is less than L.

[0056] Thirdly, embodiments of this application provide an electronic device, including: a memory, a processor, and a touch screen; wherein:

[0057] The touchscreen is used to display content;

[0058] The memory is used to store computer programs, the computer programs including program instructions;

[0059] The processor is used to call the program code stored in the memory to perform the following steps:

[0060] The touchscreen displays the video call interfaces of K users currently in a video call through K display windows;

[0061] Based on the current activity ranking of the video call users, determine whether the number of user ranking changes reaches L;

[0062] If the determination is yes, the M first users in the sorting change will be swapped with the M second users in the display windows.

[0063] In one possible implementation, before the processor swaps the M first users with the M display windows in the sorting change, it includes:

[0064] The duration of the target sound intensity for each video call user within a preset time period and the average sound intensity for each video call user within a preset time period are calculated.

[0065] The durations and the average values ​​are sorted to obtain sorting values ​​Rank1 and Rank2.

[0066] Calculate the first ranking value of each video call user within the preset duration based on Rank1, Rank2, the weight value of Rank1, and the weight value of Rank2;

[0067] Based on the first ranking value, the weight value of the preset duration, the second ranking value of each video call user within the historical preset duration, and the weight value of the historical preset duration, the current activity score of each video call user is calculated.

[0068] The current activity scores of the video call users are sorted to obtain the current activity ranking of the video call users.

[0069] In one possible implementation, the processor swaps the M first users in the sorting change with the M second users in the display windows, including:

[0070] Determine whether, among the video call users in the K display windows, there are N users with a current activity ranking greater than 0 that are lower than K;

[0071] If the determination is yes, determine whether N is greater than or equal to M;

[0072] If the determination is yes, select the M users with the lowest current activity ranking as the second user;

[0073] The second user is sorted based on the user sort number to obtain the second user's second sort number;

[0074] Among the video call users whose current activity ranking is within the top K and who are not the video call users corresponding to the K display windows, select the top M users whose current activity ranking is the first user;

[0075] Based on the current activity ranking of the first user, the first user is sorted to obtain the first sort number of the first user;

[0076] The first user and the second user, whose first and second sort numbers are the same, are swapped.

[0077] In one possible implementation, before the processor swaps the M first users with the M display windows in the sorting change, it includes:

[0078] Adjust the current activity ranking of the third user.

[0079] In one possible implementation, before the processor swaps the M first users with the M display windows in the sorting change, it includes:

[0080] Adjust the current activity ranking of the fourth user.

[0081] In one possible implementation, the processor swaps the M first users in the sorting change with the M second users in the display windows, including:

[0082] Determine whether the current activity ranking of the video call users in the K display windows is within the top K;

[0083] If the determination is yes, determine whether the number of users whose order changes among the video call users in the K display windows reaches L;

[0084] If the determination is yes, set the sequence number i = 1;

[0085] Select the first video call user and the second video call user with serial number i from the first user sequence and the second user sequence, respectively.

[0086] Determine whether the user sort numbers of the first video call user and the second video call user have changed compared with the original user sorting sequence;

[0087] If the determination is negative, determine whether the current activity ranking of the first video call user is higher than that of the second video call user;

[0088] If the determination is yes, the positions of the first video call user and the second video call user in the user sorting sequence are swapped to obtain an updated user sorting sequence;

[0089] Determine whether the number of users whose user sorting number has changed in the updated user sorting sequence is greater than or equal to L compared with the original user sorting sequence;

[0090] If the determination is yes, the M first users whose sequence numbers have changed in the updated user sorting sequence are swapped with the second users in the M display windows;

[0091] If the determination is negative, the sequence number i is updated according to the formula i = i + 1, and the processor is executed to select the first video call user and the second video call user with sequence number i from the first user sequence and the second user sequence, respectively.

[0092] In one possible implementation, the processor swaps the M first users in the sorting change with the M second users in the display windows, including:

[0093] Determine whether the current activity ranking of the video call users in the K display windows is within the top K;

[0094] If the determination is yes, determine whether the number of users whose order changes among the video call users in the K display windows reaches L;

[0095] If the determination is yes, set the sequence number i = 1;

[0096] Select the first video call user and the second video call user with the sequence number i from the first user sequence and the user sorting sequence, respectively.

[0097] Determine whether the first video call user and the third video call user are the same user;

[0098] If the determination is negative, the positions of the first video call user and the third video call user in the user sorting sequence are swapped to obtain an updated user sorting sequence.

[0099] Determine whether the number of users whose user sorting number has changed in the updated user sorting sequence is greater than or equal to L compared with the original user sorting sequence;

[0100] If the determination is yes, the M first users whose sequence numbers have changed in the updated user sorting sequence are swapped with the second users in the M display windows;

[0101] If the determination is negative, determine whether the sequence number i is less than L;

[0102] If the determination is yes, update the sequence number i according to the formula i = i + 1, and execute the steps of the electronic device to select the first video call user and the third video call user with sequence number i from the first user sequence and the user sorting sequence respectively;

[0103] If the determination is negative, the M first users whose sequence numbers have changed in the updated user sorting sequence are swapped with the second users in the M display windows.

[0104] Fourthly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the interface display method described in the first aspect and its various possible implementations.

[0105] Fifthly, embodiments of this application provide a computer program including instructions that, when executed by a computer, cause an electronic device to perform the processes executed by the electronic device in the first aspect and its various possible implementations.

[0106] Sixthly, embodiments of this application provide a chip system including a processor for supporting electronic devices in implementing the functions involved in the methods of the first aspect and its various possible modes described above.

[0107] In one possible design, the chip system further includes a memory for storing necessary program instructions and data for the electronic device. The chip system can be composed of chips or may include chips and other discrete components. Attached Figure Description

[0108] The accompanying drawings used in the embodiments of this application are described below.

[0109] Figure 1 This is a schematic diagram of an interface display scenario provided in an embodiment of this application;

[0110] Figure 2 This is a flowchart illustrating a user interface replacement method provided in an embodiment of this application;

[0111] Figure 3 This is a user display window replacement interface diagram provided in an embodiment of this application;

[0112] Figure 4 This is another user display window replacement interface diagram provided in the embodiments of this application;

[0113] Figure 5 This is another user display window replacement interface diagram provided in the embodiments of this application;

[0114] Figure 6 This is another user display window replacement interface diagram provided in the embodiments of this application;

[0115] Figure 7 This is another user display window replacement interface diagram provided in the embodiments of this application;

[0116] Figure 8 This is another user display window replacement interface diagram provided in the embodiments of this application;

[0117] Figure 9 This is another user display window replacement interface diagram provided in the embodiments of this application;

[0118] Figure 10 This is a hardware structure diagram of an electronic device provided in an embodiment of this application;

[0119] Figure 11 This is a software structure block diagram of an electronic device provided in an embodiment of this application. Detailed Implementation

[0120] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. The term "embodiment" as used herein means that a specific feature, structure, or characteristic described in connection with the embodiment can be included in at least one embodiment of this application. The appearance of this phrase in various places in the specification does not necessarily indicate the same embodiment, nor is it an independent or alternative embodiment mutually exclusive with other embodiments. Those skilled in the art will understand, explicitly and implicitly, that the embodiments described herein can be combined with other embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without inventive effort are within the scope of protection of this application. The terms "first," "second," "third," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish different objects and are not used to describe a specific order. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. For example, it may include a series of steps or units, or optionally, steps or units not listed, or optionally other steps or units inherent to these processes, methods, products, or devices.

[0121] The accompanying drawings show only the portions relevant to this application, not all of them. Before discussing exemplary embodiments in more detail, it should be noted that some exemplary embodiments are described as processes or methods depicted as flowcharts. Although the flowcharts depict operations (or steps) as sequential processes, many of these operations may be performed in parallel, concurrently, or simultaneously. Furthermore, the order of the operations may be rearranged. The process may be terminated when its operation is completed, but may also have additional steps not included in the drawings. The process may correspond to a method, function, procedure, subroutine, subprogram, etc.

[0122] The terms “component,” “module,” “system,” “unit,” etc., used in this specification are used to refer to computer-related entities, hardware, firmware, combinations of hardware and software, software, or software in execution. For example, a unit can be, but is not limited to, a process running on a processor, a processor, an object, an executable file, a thread of execution, a program, and / or distributed between two or more computers. Furthermore, these units can be executed from various computer-readable media on which various data structures are stored. Units can communicate, for example, via local and / or remote processes based on signals having one or more data packets (e.g., data from a second unit interacting with another unit between a local system, a distributed system, and / or a network; for example, the Internet interacting with other systems via signals).

[0123] Please see Figure 1 , Figure 1 This is a schematic diagram of an interface display scenario provided in an embodiment of this application. For example... Figure 1 As shown, the display interface of terminal device 100 is a multi-user video conference interface, which is divided into an unstable area 111 and a stable area 112. Multiple display windows exist in the unstable area 111. Figure 1 Only four are listed in the text), and the video call users corresponding to the display windows are A, B, C, and D; multiple user thumbnails exist in the stable area 112. Figure 1 (Only 7 are listed), and the users corresponding to the thumbnails are E, Q, G, H, I, J, and O, respectively. When the terminal device 100 detects an input operation (e.g., swiping left or right) on the stable area 112, the terminal device 100 responds to the operation, and the stable area 112 displays the next screen, which displays thumbnails of other video call users, while the unstable area 111 remains unchanged.

[0124] At time T1, the video call users in the display windows of the unstable region are A, B, C, and D. After a preset duration, the terminal device 100 calculates the activity ranking of each video call user during that preset duration and replaces the video call users in the corresponding display windows of the unstable region 111 according to the user's activity ranking. At time T2, the activity ranking of the users participating in the video call is G, A, E, O, Q, B, D, C, H, I, J... There are cases where some video call users in the display windows of the unstable region 111 have a current activity ranking outside the top 4; therefore, in the unstable region 111, some video call users in the display windows are replaced by some video call users in the stable region, that is: user C is replaced by user G, and the user in display window 1113 becomes user G; user D is replaced by user E, and the user in display window 1114 becomes user E; the user corresponding to thumbnail 1121 becomes user D, and the user corresponding to thumbnail 1122 becomes user C.

[0125] In the above Figure 1 In the embodiments described, the replacement process between users in stable regions and unstable users is illustrated in detail in conjunction with the accompanying drawings. Please refer to... Figure 2 , Figure 2 This is a flowchart illustrating a user interface replacement method provided in an embodiment of this application; Figure 2 In the middle, the video call user corresponding to the display window can be the one mentioned above. Figure 1 In this embodiment, the video call user corresponding to the display window in the unstable area, and the video call user corresponding to the non-display window can be the aforementioned... Figure 1 The embodiment shows the video call user corresponding to the stable region thumbnail; this application embodiment uses an electronic device as an example for illustration. Below, in conjunction with... Figure 2 The process of replacing users in video calls will be explained in detail below:

[0126] Step S201: The electronic device calculates the current activity ranking of the video call users.

[0127] Specifically, the activity ranking is calculated as follows: The electronic device counts the duration and average intensity of the target sound intensity for each video call user within their current preset duration; wherein, the target sound intensity is the average value in decibels greater than a first threshold. The first threshold can be set based on empirical values; this embodiment is merely illustrative and not intended to be limiting. Then, the electronic device sorts the video call members based on the duration of the target sound intensity within the preset duration to obtain a ranking value Rank1 for each video call member; and sorts them based on the average sound intensity within the preset duration to obtain a ranking value Rank2 for each video call member; the electronic device can then use the formula P1 = Rank1 * W r1+Rank2*W r2 Obtain the first ranking value of each video call member within a preset duration; where P1 is the first ranking value, W r1 W represents the weight value of Rank1. r2 W represents the weight value of Rank2. r1 +W r2 =1. Then, the electronic device can be configured according to the formula F = P1 * W. t1 +P2*W t2 +…+Pi*W ti Obtain the activity score of each video call member within the preset duration; where F is the activity score of the video call member, and W is the activity score of the video call member. ti Pi is the weight value of the historical preset duration, Pi is the second ranking value of the video call member within the historical preset duration, and W is the weight value of the video call member within the historical preset duration. t1 +W t2 +…+W ti =1; the calculation formula for the second ranking value can refer to the calculation formula for the first ranking value, and this application embodiment does not impose any limitations. The electronic device sorts the F of each video call member to obtain the current activity ranking R of each video call member.

[0128] It should be noted that, in addition to calculating the duration and average intensity of the target audio for each video call user within a preset time period, the electronic device can also collect and analyze factors that influence user activity ranking during video calls, such as the duration of each user's video stream within the preset time period, and the quality and stability of each member's video stream; and sort these factors to obtain the corresponding ranking value Rank_n; then, according to the formula P1 = Rank1 * W r1 +Rank2*W r2 +…+Rank_n*W rn The first ranking value of each video call member within a preset duration is obtained; wherein, the W rn W represents the weight value corresponding to Rank_n. r1 +W r2 +…+W rn =1. The more factors that influence a user's activity ranking during a video call, the more comprehensive and accurate the electronic device's ranking of the user's current activity will be.

[0129] In one possible implementation, before calculating the current activity ranking of video call users, the electronic device verifies the ranking eligibility of video call users. Only video call users who meet the activity ranking eligibility criteria will have their activity ranking calculated by the electronic device. The activity ranking eligibility criteria include one or more of the following: video call users with only video streams, video call users with only audio streams, video call users with both video and audio streams, and video call users with neither video nor audio streams. The audio stream includes, but is not limited to, microphone audio and media audio picked up by the electronic device, and the video stream includes, but is not limited to, camera footage, media footage, and the user's screen. By verifying the ranking eligibility of video call users, the electronic device can filter out some video call users who do not meet the activity ranking criteria, thereby avoiding the electronic device consuming excessive computing resources to calculate the activity ranking of video call members, which would affect the performance of the electronic device. For example, if the electronic device focuses more on judging the activity of video call members based on their video and audio streams, only video call users who possess both video and audio streams will have their activity ranking calculated by the electronic device, thus saving computing resources to some extent.

[0130] Step S202: The electronic device determines whether the number of user ranking changes has reached L based on the current activity ranking of the video call users.

[0131] Specifically, the electronic device has K display windows in its display area, which are used to display users with high current activity levels (active users) in the video call; for example, the display windows can be as described above. Figure 1 In the embodiment, the display windows of the unstable region 111 can have the same or different shapes and sizes. This embodiment is only for illustrative purposes and is not intended to be limiting. The number of user ranking changes is the number of changes obtained by comparing the user ranking numbers of the K video call users with the K video call users currently ranked by activity. The user ranking number can be the identification information of the display window (e.g., the display window number). For example, in the above... Figure 1In the embodiment, at time T1, the electronic device 100 may obtain the user sequence numbers of users A, B, C, and D based on the labels of the display windows, that is: 1-User A, 2-User B, 3-User C, 4-User D. The embodiment of the present application is only for illustration and not limitation. The electronic device compares whether the user sequence numbers of K video call users in the display windows are consistent with their current activity ranking; if they are consistent, the electronic device does not perform any operation; if they are inconsistent, the electronic device determines whether the number of user sequence changes of video call users reaches L, where L is the maximum number of replaceable display windows; wherein, the number of user sequence changes is the number of changes obtained by comparing the user sequence numbers of the K video call users with the top K video call users in current activity ranking; the value range of L can be the is rounded up, the is rounded down. In actual experience, when more than half of the display windows in the user interface are replaced, the user will obviously perceive the instability and jumping of the interface. When about one third of the display windows in the user interface are replaced, the user can properly perceive the change of the display windows without the sensory impact of jumping. Therefore, in order to ensure the accuracy of as many active members as possible while the user does not obviously perceive the change of the display windows, the value range of L is set as (L is an integer). If the number N of user sequence changes is less than L, the electronic device replaces N first users whose sequence changes with corresponding N second users in the display windows.

[0132] For example, the replacement of N first users with corresponding N second users in the display windows can be as shown in Figure 3 , there are 6 display windows in Figure 3 , and the corresponding video call users are A, B, C, D, E, G respectively. Based on the identification information of the display windows ( Figure 3 is the label of the display window), the user sequence numbers corresponding to the users of the display windows can be obtained (1-A, 2-B, 3-C, 4-D, 5-E, 6-G). If the current activity ranking of the video call users is 1-H, 2-B, 3-I, 4-D, 5-E, 6-G, 7-A, 8-C, 9-J..., based on the above setting rule of L, L can be set to 3; by comparing the user sequence numbers of the video call users with their current activity ranking, it can be known that the number of user sequence changes is 2 (N<L, the current activity ranking of users A and C is outside the top six), the electronic device 100 can directly replace user A with user H and replace user C with user I at time T2.

[0133] Step S203: When the number of user sorting changes reaches L, the electronic device will swap the M first users in the sorting changes with the M second users in the display windows.

[0134] Specifically, the second user is the video call user corresponding to the replaced display window. The number of user ranking changes can be understood as the number N of users whose current activity ranking is outside the top K among the video call users in K display windows. If the number of users N is greater than or equal to L, then the M second users whose current activity ranking is outside the top K are replaced, so that the video call users with higher activity rankings occupy the display window as much as possible, making it easier for video call users to obtain the information displayed by active video call members, thereby improving the communication efficiency of video call users. On the other hand, setting a maximum replacement number L of display windows helps to prevent the number of display window replacements from being too large due to too many user ranking changes, which would cause instability of the electronic device display interface, give users an uncomfortable visual experience, and require a large amount of bandwidth when transmitting video streams and other data of the display windows, which would waste bandwidth resources to a certain extent and bring additional load to the cloud server. The specific process of the second user being replaced can be divided into the following five cases:

[0135] In the first scenario: Among the video call users with K display windows, the electronic device ranks users whose current activity ranking is outside the top K based on their current activity ranking, and selects the last M (M greater than or equal to L, this embodiment uses M=L as an example) users with the lowest current activity ranking as the video call users to be replaced (second users); among these M second users, they are sorted based on their user ranking number (the identifier of the display window corresponding to the second user, such as the display window number), to obtain a second ranking number for each second user; then, among the video call users whose current activity ranking is within the top K and who do not correspond to a display window, the electronic device sorts them based on their current activity ranking, to obtain the top M users (first users); the electronic device obtains a first ranking number for each first user based on their current activity ranking; then, the electronic device replaces the first users and second users with the same first and second ranking numbers; wherein, when the number of users N is greater than or equal to L, the value of M can be L; when the number of users N is less than L, the value of M can be N.

[0136] For example, such as Figure 4As shown, electronic device 100 has 6 display windows. Based on the above rules for the value of L, we can set L to 3. The users of the display windows of electronic device 100 at time T1 are C, B, D, A, G, and E. Based on the labels of the display windows, we can match the users to the following user ranking numbers: 1-C, 2-B, 3-D, 4-A, 5-G, 6-E. Electronic device 100 obtains the activity ranking of the users participating in the video call at the current time (time T2): 1-C, 2-E, 3-W, 4-H, 5-I, 6-O, 7-A, 8-D, 9-G, 10-B. 11-J, 12-P, 13-Q... Electronic device 100 compares the user's ranking number with the user's current activity ranking. Users A, D, G, and B's activity ranking is outside the top 6 and L=3; therefore, three users are selected from A, D, G, and B as replacement users (second users); Electronic device 100 sorts users A, D, G, and B based on their current activity ranking. Since users D, G, and B's current activity ranking is low, electronic device 100 determines users D, G, and B as the replacement second users, and sorts them according to their user ranking numbers to obtain users D, G... The second sorting number for B is 1-B, 2-D, 3-G (the rule for setting the second sorting number in this application embodiment is: the user with the earlier sorting number has the earlier second sorting number; this application embodiment is only an example for illustrating the rule for setting the second sorting number and is not a limitation); the electronic device 100 selects the top 3 users with the highest current activity ranking among the top 6 video call users (users W, H, I, O) who do not have a corresponding display window, as the first users (users W, H, I) to replace the second users, and sorts them according to their current activity ranking to obtain the first sorting number 1-W, 2-H, 3-I of the first users. (The rule for setting the first sorting number in this embodiment is: the user with the earlier sorting number has the earlier first sorting number; this embodiment is only illustrative and not restrictive regarding the rule for setting the first sorting number); then, the electronic device 100 swaps the first user with the same first sorting number and second sorting number with the second user, that is: the electronic device 100 swaps users B and W, H and D, and G and I to obtain the video call user corresponding to the display window at time T2; wherein, when the number of users whose current activity ranking is outside the top K among the video call users in the K display windows is greater than L, the value of M can be L; for the above Figure 4 In this embodiment, the process of replacing the second user with the first user is merely illustrative and not intended to be limiting. By replacing the first user with the second user who has the same first and second ranking numbers, the electronic device helps the first user with the higher current activity ranking to be matched with a more favorable display window.

[0137] For example, in the above Figure 4 In this embodiment, the size of the display window is related to the display window's number (the smaller the display window's number, the larger the display window's size). Therefore, the electronic device sorts users based on the second user's user ranking number to obtain a second ranking number. By swapping the first user and the second user with the same second ranking number as the first user, it can ensure that the first user with the higher current activity ranking can occupy a larger display window, allowing the information they want to display (e.g., the first user wants to create a work report by sharing their screen) to be more prominently displayed to the users participating in the video call, thus improving the efficiency of the video call.

[0138] The second scenario: Before swapping the first user and the second user, if the electronic device detects an input operation such as locking on the display window, it locks the display window, and the locked display window is not swapped. For example, the locked display window can be the local window of the electronic device; this embodiment is merely illustrative and not intended to be limiting. For example, in the above... Figure 4 In this embodiment, during the time period from time T1 to time T2, if the electronic device 100 detects a locking operation on the display window labeled 4, the electronic device 100 locks the display window, and the locked window is as follows: Figure 5 As shown; since user B's current activity ranking is outside the top 6, there are two ways for the first user to replace the second user:

[0139] In method a, let L = M, then electronic device 100 determines users A, D, and G as the second users to be replaced, and sorts users A, D, and G according to their user ranking numbers to obtain second ranking numbers: 1-D, 2-A, 3-G (the rule for setting the second ranking number in this embodiment is: the user ranking number that comes first has the second ranking number that comes first; this embodiment is only an example and does not impose any restrictions on the rule for setting the second ranking number); electronic device 100 selects users W, H, and I with the highest current activity level from users W, H, I, and K as the first users, and sorts them according to their current activity ranking to obtain first ranking numbers: 1-W, 2-H, 3-I; electronic device 100 replaces the first users and second users with the same first and second ranking numbers (replacing users W and D, users A and H, and users G and I).

[0140] In mode b, let M<L. When the display window corresponding to user B is locked, user D and user G among user D, user G and user B are determined as second users, and they are sorted based on their user sequence numbers to obtain second sequence numbers 1-D and 2-G for user D and user G; first sequence numbers 1-W and 2-H of first users can be obtained based on the current activity ranking. The electronic device 100 permutes the first users and the second users with the same first sequence numbers and second sequence numbers (permutes user D and user W, and permutes user G and user H), so as to obtain the video call users corresponding to the display window at time T2.

[0141] Third case: before the M first users permute the corresponding M second users in the second display windows, if the electronic device detects that the locking operation on the locked display window is released, when the electronic device permutes the first users with the second users, the specific process refers to the above Figure 3 embodiments, and will not be repeated herein.

[0142] Fourth case: before the electronic device permutes the M first users with the M second users of the display windows, if the electronic device detects that a third user is in a first state, the electronic device adjusts the current activity ranking of the third user; the first state may be a working state where the display window shares the screen, may be a working state where the display window imports and plays a video stream, may also be a working state where the display window imports an audio stream, and may also be a working state after the electronic device detects a first input operation on the display window (the first input operation includes, but is not limited to, input operations such as manually replacing the sequence or position of the display window by a user through buttons, sliding or dragging on the screen of a terminal device), which is merely illustrated by way of example in the embodiments of the present application without limitation; the third user is a video call user among the video call users of the K display windows that is in the first state and whose current activity ranking is outside the top K; after adjustment, the activity ranking of the third user within the top K may also be consistent with its user sequence number, which may also ensure that the current activity ranking of the third user is within the top K, which is merely illustrated by way of example in the embodiments of the present application without limitation. When the electronic device detects that the third user is in the first state, it determines that the third user is an active video call member; when the current activity ranking of the video call user of the display window is outside the top K, the current activity ranking of the video call user is adjusted to make its activity ranking the same as its user sequence number (or make its current activity ranking within the top K), thereby ensuring that the third user will not be permuted.

[0143] For example, Figure 6As shown, at time T1, the video call users corresponding to the display window of electronic device 100 are A, B, C, D, E, and W, with user ranking numbers 1-A, 2-B, 3-C, 4-D, 5-E, and 6-W, respectively. Based on the rule for setting L, let L = 3. At time T2, the current activity ranking of the video call users is 1-B, 2-E, 3-G, 4-H, 5-J, 6-C, 7-A, 8-D, 9-W, 10-I, 11-Q, 12-O, 13-P... Comparing the user ranking numbers at time T1 with the current activity ranking of the video call users, users A, D, and W are ranked in the top 6 in terms of current activity. Additionally; if, based on the aforementioned rule for setting L, L = 3, and before the first user replaces the second user, the electronic device 100 detects that user A has initiated screen sharing (first state); the electronic device 100 determines that user A is an active video call user. In order to prevent user A from being replaced by the first user, the electronic device 100 needs to improve user A's current activity ranking, making user A's current activity ranking 1 (the same as A's user ranking) or making user A's current activity ranking within the top 6; wherein, the electronic device 100 can improve user A's current activity ranking by adjusting the weight value W of formula F in step S201 above. ti And the weight value W in formula P1 rn This application's embodiments are merely illustrative and not intended to be limiting. Among the top 6 video call users in terms of current activity ranking, since user C's ranking is lower than user J's, after adjusting user A's activity ranking, user C's activity ranking will be outside the top 6. Therefore, the electronic device 100 determines users C, D, and W as the second user (users D and W's current activity ranking is outside the top 6), and then, according to the above... Figure 4 The sorting rules in the embodiment yield the second sorting numbers for users C, D, and W: 1-C, 2-D, 3-W; then, the electronic device 100 selects users G, H, and J as the first users, and then proceeds according to the above... Figure 4 or Figure 5 The sorting rule in this embodiment yields the first sorting numbers for users G, H, and J: 1-G, 2-H, 3-J; then, at time T2, electronic device 100 swaps users C and G, D and H, and J and W, obtaining the video call users corresponding to the six display windows at time T2. It should be noted that... Figure 6In the context of video call users, if at time T2, the current activity ranking of the video call users is 1-B, 2-E, 3-G, 4-H, 5-C, 6-J, 7-A, 8-D, 9-W, 10-I, 11-Q, 12-O, 13-P..., and electronic device 100 raises user A's current activity ranking to match its own ranking, then among the top 6 video call users in terms of current activity, user C's activity ranking is higher than user J's. Therefore, among the video call users G, H, and J not corresponding to the display window, only users G and H are the first users and can replace the second user in the corresponding display window. At this time, M = 2(M <L)。

[0144] Fifth scenario: Before the electronic device replaces the M first users and the M second users in the display windows, the electronic device adjusts the current activity ranking of the fourth user so that it can replace the second user in the corresponding display window; wherein the fourth user is the top S users in terms of activity ranking among video call users whose current activity ranking is lower than the top K and who are in the second state, where S is less than or equal to M; the adjusted current activity ranking of the fourth user is in the top M; then, the electronic device further adjusts according to the above... Figure 4 The replacement rule in this embodiment replaces the first user with the second user in the display window. For example, the second state can be a working state where the fourth user has high activity within an adjacent preset time period. This could be, for instance, the fourth user speaking frequently and for a long time within an adjacent preset time period, or the fourth user sharing the screen within an adjacent preset time period. This embodiment is merely illustrative and not intended to be limiting. This method benefits newly joined video call users. Even if their current activity ranking does not meet the requirements for replacing the second user, they can still replace the second user whose current activity ranking is outside the top K because they have been sufficiently active within an adjacent time period.

[0145] For example, such as Figure 7 As shown, the video call users corresponding to the display window of electronic device 100 are users B, E, G, I, D, and Q, and their user ranking numbers are: 1-B, 2-E, 3-G, 4-I, 5-D, 6-Q; at time T2, the activity ranking of the video call users is 1-A, 2-B, 3-H, 4-O, 5-D, 6-Q, 7-C, 8-E, 9-J, 10-P, 11-G, 12-I, 13-W...; among them, user C is a video call user who just joined during T1 to T2, and electronic device 100 detects that user C's activity level is high during T1 to T2 (e.g., user C speaks frequently), so it identifies user C as the fourth user and gives user C priority for replacement; according to the above... Figure 3In the replacement rule of this embodiment, users E, I, and G are the second users of the replaced display window (L=3, L=M), and users A, H, and O are the first users to replace the second users. Since user C is the fourth user to be replaced first, the electronic device 100 replaces user C with user O, who has the lowest activity ranking among users A, H, and O, so that users A, H, and C become the first users to replace users E, I, and G, thus obtaining the video call user corresponding to the display window at time T2. The process of users A, H, and C replacing users E, I, and G is described above. Figure 4 The embodiments described in this application will not be repeated here. Additionally, if the current activity ranking of the fourth user reaches a threshold, the electronic device can grant the fourth user priority in replacement; the replacement process is described above. Figure 7 Examples of embodiments are not described in detail in this application.

[0146] In one possible implementation, if each user's current activity ranking is within the top K among the video call users corresponding to the K display windows, the number of user ranking changes can be understood as the number N of video call users whose current activity ranking does not match their user ranking number. If the number N is greater than or equal to M, the electronic device swaps M first users with M second users from the K display windows. There are three possible scenarios for the electronic device swapping the M first users with the M second users from the M display windows:

[0147] In the first scenario: The electronic device sets the sequence number i = 1, and then selects the first video call user and the second video call user with sequence number i from the first user sequence and the second user sequence, respectively. The first user sequence includes the top L video call users with the highest current activity ranking, and the second user sequence includes the top L video call users with the highest sequence numbers in the user ranking sequence. The user ranking sequence includes K video call users with user ranking numbers. Then, the electronic device determines whether the positions of the first and second video call users in the user ranking sequence have changed. If yes, the electronic device updates the sequence number i according to the formula i = i + 1, and executes the step of selecting the first and second video call users with sequence number i from the first and second user sequences, respectively. If no, the electronic device determines whether the current activity ranking of the first video call user is higher than that of the second video call user. If the current activity ranking of the first video call user is not higher than that of the second video call user, the electronic device updates the sequence number i according to the formula i = i + 1, and performs the step of selecting the first video call user and the second video call user with sequence number i from the first user sequence and the second user sequence respectively; if the current activity ranking of the first video call user is higher than that of the second video call user, the electronic device swaps the positions of the first video call user and the second video call user in the user ranking sequence to obtain an updated user ranking sequence. Then, in the updated user ranking sequence, the electronic device determines whether the number of users whose user ranking numbers have changed is greater than or equal to L. If the determination is yes, the electronic device replaces the M first users whose user ranking numbers have changed in the updated user ranking sequence with the M second users in the display windows; if the determination is no, the electronic device updates the sequence number i according to the formula i = i + 1, and performs the step of selecting the first video call user and the second video call user with sequence number i from the first user sequence and the second user sequence respectively.

[0148] It should be noted that, in this embodiment, the electronic device sorts the video call users based on their current activity ranking among the top L video call users to obtain a first user sequence. In the first user sequence, each video call user has a serial number i, which represents the degree of activity ranking of the video call user in the first user sequence. The electronic device sorts the video call users in the K display windows based on their user sorting numbers to obtain a second user sequence. In the second user sequence, the user sorting number of the video call user is its serial number in that user sequence.

[0149] The following embodiments of this application illustrate the first scenario described above. For example, please refer to [link to example]. Figure 8 The electronic device 100 has 8 display windows on its display interface, based on the range of values ​​for L. This embodiment of the application uses L=4 as an example for illustration. At time T1, the video call users corresponding to the display window of the electronic device 100 are A, B, C, D, E, G, H, and I, respectively. Therefore, the electronic device 100 can obtain the user sorting sequence according to the correspondence between the display window and the video call users: 1-A, 2-B, 3-C, 4-D, 5-E, 6-G, 7-H, 8-I. The electronic device 100 selects the video call users with the first 4 user sorting numbers in the user sorting sequence to obtain the second user sequence (1-A, 2-B, 3-C, 4-D). At time T2, the electronic device 100 obtains the current activity ranking of the video call users at time T2: 1-B, 2-C, 3-I, 4-H, 5-G, 6-E, 7-A, 8-D... The electronic device 100 selects the video call users with the first 4 activity rankings to obtain the first user sequence (1-B, 2-C, 3-I, 4-H). Electronic device 100 selects user B (first video call user) and user A (second video call user) with serial number i=1 from the first user sequence and the second user sequence. Since the positions of user B and user A in the user ranking sequence have not changed and user B's current activity ranking is higher than user A's, electronic device 100 swaps the positions of user B and user A in the user ranking sequence to obtain an updated user ranking sequence (1-B, 2-A, 3-C, 4-D, 5-E, 6-G, 7-H, 8-I). Electronic device 100 compares the updated user ranking sequence with the original user ranking sequence (1-A, 2-B, 3-C, 4-D, 5-E, 6-G, 7-H, 8-I). The number of users whose user ranking numbers have changed is 2 (less than 4). Therefore, electronic device 100 selects user C (first video call user) and user B (second video call user) with serial number i=2 from the first user sequence and the second user sequence. Since user C's position in the original user ranking sequence has not changed and user C's current activity ranking is lower than user B's, electronic device 100 does not change the positions of user B and user C in the updated first user sequence. Then, electronic device 100 selects user I (first video call user) and user C (second video call user) with serial number i=3 from the first user sequence and the second user sequence. Since user I and user C's positions in the original user ranking sequence have not changed and user C's current activity ranking is higher than user I's, electronic device 100 does not change the positions of user I and user C in the updated first user sequence.Then, the electronic device 100 selects user H (first video call user) and user D (second video call user) with serial number i=4 from the first user sequence and the second user sequence. Since the positions of user H and user D in the user ranking sequence have not changed and user H's current activity ranking is higher than user D's, the electronic device 100 swaps the positions of user H and user D in the user ranking sequence to obtain an updated user ranking sequence (1-B, 2-A, 3-C, 4-H, 5-E, 6-G, 7-D, 8-I). Then, the electronic device 100 compares the updated user sorting sequence (1-B, 2-A, 3-C, 4-H, 5-E, 6-G, 7-D, 8-I) with the original user sorting sequence (1-A, 2-B, 3-C, 4-D, 5-E, 6-G, 7-H, 8-I) and finds that the number of users whose user sorting numbers have changed is 4. The electronic device 100 determines users B, A, H, and D whose user sorting numbers have changed in the updated user sorting sequence as the first users, and determines users A, B, D, and H in the original user sequence (1-A, 2-B, 3-C, 4-D, 5-E, 6-G, 7-H, 8-I) as the second users. The electronic device 100 then replaces the first users with the second users (user B replaces user A, user A replaces user B, user H replaces user D, and user D replaces user H).

[0150] The second scenario: The electronic device sets the sequence number i = 1, and then selects the first and third video call users with sequence number i from the first user sequence and the user ranking sequence, respectively. The first user sequence includes the top L video call users with the highest current activity ranking, and the user ranking sequence includes K video call users with user ranking numbers. The electronic device determines whether the first and third video call users are the same user. If they are, the electronic device updates the sequence number i according to the formula i = i + 1, and performs the step of selecting the first and third video call users with sequence number i from the first user sequence and the user ranking sequence, respectively. If they are not, the electronic device swaps the positions of the first and third video call users in the user ranking sequence to obtain an updated user ranking sequence. Then, the electronic device determines whether the number of users whose user ranking numbers have changed in the updated user ranking sequence is greater than or equal to L. If the determination is yes, the electronic device replaces the M first users whose user ranking numbers have changed in the updated user ranking sequence with the second users of the M display windows. If the determination is no, the electronic device updates the serial number i according to the formula i = i + 1, and performs the step of selecting the first video call user and the third video call user with serial number i in the first user sequence and the user ranking sequence, respectively.

[0151] The following embodiments of this application illustrate the second scenario described above. For example, please refer to [link to example]. Figure 9 The electronic device 100 has eight display windows on its display interface, with L=4. The video call users corresponding to each display window are 1-A, 2-B, 3-C, 4-D, 5-E, 6-G, 7-H, and 8-I, respectively. Based on the video call users corresponding to each display window, a user ranking sequence (1-A, 2-B, 3-C, 4-D, 5-E, 6-G, 7-H, 8-I) can be obtained. The method for determining the user ranking sequence can refer to the embodiment of the first case mentioned above, and will not be repeated here. At time T2, the electronic device 100 obtains the current activity ranking of the video call users at time T2: 1-B, 2-C, 3-I, 4-H, 5-G, 6-E, 7-A, 8-D..., and selects the top four users in terms of activity to obtain the first user sequence (1-B, 2-C, 3-I, 4-H). Electronic device 100 selects the first video call user (user B) and the third video call user (user A) with the same number 1 from the first user sequence and the user sorting sequence, respectively; electronic device 100 determines that user B and user A are not the same user, swaps the positions of user A and user B in the user sorting sequence, and obtains the updated user sorting sequence (1-B, 2-A, 3-C, 4-D, 5-E, 6-G, 7-H, 8-I). In the updated user sorting sequence, the number of video call users whose user sorting numbers have changed is 2 (less than L). Electronic device 100 selects the first video call user (user C) and the third video call user (user A) with sorting number 2 from both the updated user sorting sequence and the first user sequence. Since user C and user A are not the same user, electronic device 100 swaps the positions of user A and user C in the user sorting sequence (1-B, 2-A, 3-C, 4-D, 5-E, 6-G, 7-H, 8-I) to obtain the updated user sorting sequence (1-B, 2-C, 3-A, 4-D, 5-E). 6-G, 7-H, 8-I); Since the number of video call users whose user sorting numbers have changed in the updated user sorting sequence is equal to 4; therefore, electronic device 100 determines the video call users whose user sorting numbers have changed compared with the original user sorting sequence (1-A, 2-B, 3-C, 4-D, 5-E, 6-G, 7-H, 8-I) in the user sorting sequence (1-B, 2-C, 3-A, 4-D, 5-E, 6-G, 7-H, 8-I) as the first users, and replaces the second users in the corresponding display window, thus obtaining the video call users corresponding to the display window of electronic device 100 at time T2.

[0152] The third scenario: In the first and second scenarios described above, if a video call user with a display window is in a third state, the video call user in the third state is not included in the first user sequence, the second user sequence, or the user sorting sequence. The third state can be a locked state; this embodiment is merely illustrative and not intended to be limiting. For example, in the above... Figure 9 In this embodiment, if user B's display window is locked, then the first user sequence does not include user B, and the first user sequence is: 1-C, 2-I, 3-H, 4-G; the user sorting sequence is 1-A, 2-C, 3-D, 4-E, 5-G, 6-H, 7-I; the electronic device 100 selects user C with the sequence number 1 and user A from the first user sequence and the user sorting sequence for comparison. Since they are not the same user, the electronic device 100 swaps the positions of user C and user A in the user sorting sequence to obtain the updated user sorting sequence (1-C, 2-A, 3-D, 4-E, 5-G, 6-H, 7-I). Electronic device 100 selects user A and user I with serial number 2 from the updated user sorting sequence and the first user sequence for comparison. Since they are not the same user, electronic device 100 swaps the positions of user I and user A in the user sorting sequence to obtain the updated user sorting sequence (1-C, 2-I, 3-D, 4-E, 5-G, 6-H, 7-A). Since the number of users whose user sorting numbers change in the updated user sorting sequence reaches three, electronic device 100 selects user H and user D with serial number 3 from the first user sequence and the updated user sorting sequence, and then swaps the positions of user H and user D in the updated user sorting sequence to obtain the updated user sorting sequence (1-C, 2-I, 3-H, 4-E, 5-G, 6-D, 7-A). Since the number of users whose user sorting numbers have changed in the updated user sorting sequence (1-C, 2-I, 3-H, 4-E, 5-G, 6-D, 7-I) is 5, which is greater than L=4, the electronic device 100 uses users A, C, and I in the user sorting sequence (1-C, 2-I, 3-D, 4-E, 5-G, 6-H, 7-A) whose user sorting numbers have changed compared to the original user sorting sequence as the first users, and replaces users A, C, and I in the display window respectively, thereby replacing the display window.

[0153] In this embodiment, when the current activity ranking of a video call user in the display window is inconsistent with their user ranking number, the video call user will be replaced by another video call user. If too many video call users in the display window are replaced, it will cause too many display windows to jump around, resulting in instability of the electronic device's display interface and a poor visual experience for the user. Furthermore, too many jumps in the display window will cause the electronic device to consume excessive bandwidth when transmitting video streams, resulting in bandwidth waste and increasing the load on the cloud server. This embodiment sets a maximum number L of display window swaps so that when the number of video call users swapped in a display window exceeds L, the number of swapped video call users is limited to within L. This controls the number of jumping display windows while ensuring that the activity ranking of the video call user corresponding to the display window remains high, thus ensuring interface stability. This provides a good visual experience for the user while reducing the bandwidth consumed by video stream transmission and reducing the load on the cloud server.

[0154] Please refer to Figure 10 , Figure 10 The hardware structure of electronic device 100 is illustrated by way of example.

[0155] Electronic device 100 may include: processor 1010, external memory interface 1020, internal memory 1021, universal serial bus (USB) interface 1030, charging management module 1040, power management module 1041, battery 1042, antenna 1, antenna 2, mobile communication module 1050, wireless communication module 1060, audio module 1070, speaker 1070A, receiver 1070B, microphone 1070C, headphone jack 1070D, sensor module 1080, button 1090, motor 1091, indicator 1092, camera 1093, display screen 1094, and subscriber identification module (SIM) card interface 1095, etc. The sensor module 1080 may include a pressure sensor 1080A, a gyroscope sensor 1080B, a barometric pressure sensor 1080C, a magnetic sensor 1080D, an accelerometer sensor 1080E, a distance sensor 1080F, a proximity sensor 1080G, a fingerprint sensor 1080H, a temperature sensor 1080J, a touch sensor 1080K, an ambient light sensor 1080L, a bone conduction sensor 1080M, etc.

[0156] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0157] The processor 1010 may include one or more processing units, such as an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, memory, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural network processing unit (NPU). These different processing units may be independent devices or integrated into one or more processors.

[0158] The controller can be the nerve center and command center of the electronic device 100. The controller can generate operation control signals according to the instruction opcode and timing signals to complete the control of fetching and executing instructions.

[0159] The processor 1010 may also include a memory for storing instructions and data. In some embodiments, the memory in the processor 1010 is a cache memory. This memory can store instructions or data that the processor 1010 has just used or that are used repeatedly. If the processor 1010 needs to use the instruction or data again, it can retrieve it directly from the memory. This avoids repeated accesses, reduces the waiting time of the processor 1010, and thus improves the efficiency of the system.

[0160] The wireless communication function of electronic device 100 can be implemented through antenna 1, antenna 2, mobile communication module 1050, wireless communication module 1060, modem processor and baseband processor, etc.

[0161] Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 100 can be used to cover one or more communication frequency bands. Different antennas can also be multiplexed to improve antenna utilization. For example, antenna 1 can be multiplexed as a diversity antenna for a wireless local area network. In some other embodiments, the antennas can be used in conjunction with tuning switches.

[0162] The mobile communication module 1050 can provide solutions for wireless communication, including 2G / 3G / 4G / 5G, applied to the electronic device 100. The mobile communication module 1050 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. The mobile communication module 1050 can receive electromagnetic waves via antenna 1, and perform filtering, amplification, and other processing on the received electromagnetic waves before transmitting them to a modem processor for demodulation. The mobile communication module 1050 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves for radiation via antenna 1. In some embodiments, at least some functional modules of the mobile communication module 1050 may be housed in the processor 1010. In some embodiments, at least some functional modules of the mobile communication module 1050 and at least some modules of the processor 1010 may be housed in the same device.

[0163] The modem processor may include a modulator and a demodulator. The modulator modulates the low-frequency baseband signal to be transmitted into a mid-to-high frequency signal. The demodulator demodulates the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After processing by the baseband processor, the low-frequency baseband signal is transmitted to the application processor. The application processor outputs sound signals through an audio device (not limited to speaker 1070A, receiver 1070B, etc.) or displays images or videos through the display screen 1094. In some embodiments, the modem processor may be a separate device. In other embodiments, the modem processor may be independent of the processor 1010 and may be housed in the same device as the mobile communication module 1050 or other functional modules.

[0164] The wireless communication module 1060 can provide solutions for wireless communication applications on the electronic device 100, including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), NFC, and infrared (IR) technologies. The wireless communication module 1060 can be one or more devices integrating at least one communication processing module. The wireless communication module 1060 receives electromagnetic waves via antenna 2, performs frequency modulation and filtering of the electromagnetic wave signals, and sends the processed signal to processor 1010. The wireless communication module 1060 can also receive signals to be transmitted from processor 1010, perform frequency modulation and amplification, and convert them into electromagnetic waves for radiation via antenna 2.

[0165] In some embodiments, antenna 1 of electronic device 100 is coupled to mobile communication module 850, and antenna 2 is coupled to wireless communication module 1060, enabling electronic device 100 to communicate with networks and other devices via wireless communication technology. The wireless communication technology may include Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Time Division Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technologies, etc. The GNSS may include the Global Positioning System (GPS), the Global Navigation Satellite System (GLONASS), the BeiDou Navigation Satellite System (BDS), the Quasi-Zenith Satellite System (QZSS), and / or satellite-based augmentation systems (SBAS).

[0166] Electronic device 100 implements display functions through a GPU, a display screen 1094, and an application processor. The GPU is a microprocessor for image processing, connecting the display screen 1094 and the application processor. The GPU performs mathematical and geometric calculations and is used for graphics rendering. Processor 1010 may include one or more GPUs, which execute program instructions to generate or modify display information.

[0167] The display screen 1094 is used to display images, videos, etc. The display screen 1094 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a miniature LED, a microLED, a quantum dot light-emitting diode (QLED), etc. In some embodiments, the electronic device 100 may include one or N display screens 1094, where N is a positive integer greater than 1.

[0168] In this embodiment, the display screen 1094 is used to display the display interface implemented on the electronic device 100 mentioned in this embodiment. The display interface includes K display windows, which are used to display the video streams of corresponding video call users.

[0169] Digital signal processors (DSPs) are used to process digital signals. Besides digital image signals, they can also process other digital signals. For example, when electronic device 100 selects a frequency, the DSP can perform Fourier transforms on the frequency energy.

[0170] Video codecs are used to compress or decompress digital video. Electronic device 100 may support one or more video codecs. Thus, electronic device 100 can play or record videos in various encoding formats, such as Moving Picture Experts Group (MPEG) 1, MPEG2, MPEG3, MPEG4, etc.

[0171] Internal memory 1021 can be used to store computer executable program code, which includes instructions. Processor 1010 executes various functional applications and data processing of electronic device 100 by running the instructions stored in internal memory 1021. Internal memory 1021 may include a program storage area and a data storage area. The program storage area may store the operating system, at least one application program required for a function (such as sound playback, image playback, etc.), etc. The data storage area may store data created during the use of electronic device 100 (such as audio data, phonebook, etc.). Furthermore, internal memory 1021 may include high-speed random access memory and may also include non-volatile memory, such as at least one disk storage device, flash memory device, universal flash storage (UFS), etc.

[0172] Electronic device 100 can implement audio functions, such as music playback and recording, through audio module 1070, speaker 1070A, receiver 1070B, microphone 1070C, headphone jack 1070D, and application processor.

[0173] The audio module 1070 is used to convert digital audio information into analog audio signals for output, and also to convert analog audio input into digital audio signals. The audio module 1070 can also be used for encoding and decoding audio signals. In some embodiments, the audio module 1070 may be located in the processor 1010, or some functional modules of the audio module 1070 may be located in the processor 1010.

[0174] The speaker 1070A, also known as a "loudspeaker," is used to convert audio electrical signals into sound signals. The electronic device 100 can listen to music or make hands-free calls through the speaker 1070A.

[0175] Pressure sensor 1080A is used to sense pressure signals and can convert the pressure signals into electrical signals. In some embodiments, pressure sensor 1080A can be disposed on display screen 894. There are many types of pressure sensors 1080A, such as resistive pressure sensors, inductive pressure sensors, and capacitive pressure sensors. A capacitive pressure sensor may include at least two parallel plates with conductive material. When force is applied to pressure sensor 1080A, the capacitance between the electrodes changes. Electronic device 100 determines the pressure intensity based on the change in capacitance. When a touch operation is applied to display screen 894, electronic device 100 detects the intensity of the touch operation based on pressure sensor 1080A. Electronic device 100 can also calculate the touch position based on the detection signal from pressure sensor 1080A. In some embodiments, touch operations applied to the same touch position but with different touch operation intensities can correspond to different operation commands. For example: when a touch operation with an intensity less than a first pressure threshold is applied to the SMS application icon, a command to view an SMS is executed. When a touch operation with an intensity greater than or equal to the first pressure threshold is applied to the SMS application icon, a command to create a new SMS is executed.

[0176] The touch sensor 1080K, also known as a "touch panel," can be located on the display screen 894. The touch sensor 1080K and the display screen 894 together form a touchscreen, also known as a "touch screen." The touch sensor 1080K detects touch operations applied to or near it. The touch sensor can transmit the detected touch operation to the application processor to determine the type of touch event. Visual output related to the touch operation can be provided through the display screen 894. In other embodiments, the touch sensor 1080K may also be located on the surface of the electronic device 100, in a different position than the display screen 894.

[0177] The software system of electronic device 100 can adopt a layered architecture, event-driven architecture, microkernel architecture, microservice architecture, or cloud architecture. This application embodiment uses the layered architecture Android system as an example to exemplify the software structure of electronic device 100.

[0178] Figure 11 This is a software structure block diagram of the electronic device 100 provided in the embodiments of this application.

[0179] A layered architecture divides software into several layers, each with a clear role and function. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into four layers, from top to bottom: the application layer, the application framework layer, the Android runtime and system libraries, and the kernel layer.

[0180] The application layer can include a series of application packages.

[0181] like Figure 11 As shown, the application package can include 9 types of applications such as video applications, game applications, office applications, camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, and SMS. For simplicity, video applications will be referred to as video applications and game applications as game applications.

[0182] The video application provides audio and video services to the electronic device 100. The electronic device 100 can run the video application and obtain network video from the server corresponding to the video application. There can be one or more video applications, such as Huawei Video. The server corresponding to the video application refers to the server provided by the developer of the video application for managing the application and providing audio and video services to it, such as a Huawei Video server.

[0183] The video application provides the function of replacing video call users in the display window; for example, when the electronic device 100 replaces the M first users in the ranking changes with the M second users in the display window based on the current activity ranking of the video call users, when the number of user ranking changes reaches L.

[0184] The game application provides game services to the electronic device 100. The electronic device 100 can run the game application and obtain game resources from the local device or the server corresponding to the game application. There can be one or more game applications.

[0185] The application framework layer provides application programming interfaces (APIs) and a programming framework for applications in the application layer. The application framework layer includes some predefined functions.

[0186] like Figure 11 As shown, the application framework layer may include a scene-aware module, a window manager, a content provider, a view system, a phone manager, a resource manager, a notification manager, etc.

[0187] Specifically, the scene awareness module is used to listen for activities in the foreground or top layer, and to identify the application running in the foreground of the electronic device 100 based on the detected activities. It can also determine the scene in which the electronic device 100 is located based on the application running in the foreground.

[0188] The scene perception module is an optional module. In some embodiments of this application, the function of the scene perception module can be integrated into the screen projection service of the application layer.

[0189] The window manager is used to manage windowed applications. It can retrieve screen size, determine the presence of a status bar, lock the screen, and capture screenshots, among other things.

[0190] Content providers store and retrieve data, making that data accessible to applications. This data may include videos, images, audio, made and received phone calls, browsing history and bookmarks, phone books, etc.

[0191] A view system includes visual controls, such as controls for displaying text and controls for displaying images. View systems can be used to build applications. A display interface can consist of one or more views. For example, a display interface including a text notification icon could include views for displaying text and views for displaying images.

[0192] The phone manager is used to provide communication functions for electronic device 100. For example, it manages call status (including connection and disconnection).

[0193] The file explorer provides applications with various resources, such as localized strings, icons, images, layout files, video files, and more.

[0194] The notification manager allows applications to display notifications in the status bar. These notifications can be used to deliver informational messages and can disappear automatically after a short pause, requiring no user interaction. For example, the notification manager can be used to notify users of completed downloads or message alerts. The notification manager can also display notifications as icons or scrolling text in the top status bar, such as notifications from background applications, or as dialog boxes on the screen. Examples include displaying text messages in the status bar, emitting sounds, vibrating electronic devices, and flashing indicator lights.

[0195] The Android Runtime consists of core libraries and a virtual machine. The Android runtime is responsible for the scheduling and management of the Android system.

[0196] The core library consists of two parts: one part is the functionalities that need to be called by the Java language, and the other part is the Android core library.

[0197] The application layer and application framework layer run in a virtual machine. The virtual machine executes the Java files of the application layer and application framework layer as binary files. The virtual machine is used to perform functions such as object lifecycle management, stack management, thread management, security and exception management, and garbage collection.

[0198] System libraries can include multiple functional modules. For example: surface manager, media libraries, 3D graphics processing libraries (e.g., OpenGL ES), 2D graphics engines (e.g., SGL), etc.

[0199] The Surface Manager is used to manage the display subsystem and provides the blending of 2D and 3D layers for multiple applications.

[0200] The media library supports playback and recording of various common audio and video formats, as well as still image files. It supports multiple audio and video encoding formats, such as MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG.

[0201] The 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.

[0202] A 2D graphics engine is a graphics engine for 2D drawing.

[0203] The kernel layer is the layer between hardware and software. The kernel layer contains at least the display driver, camera driver, audio driver, and sensor driver.

[0204] It should be noted that the memory in the above embodiments can be read-only memory (ROM) or other types of static storage devices capable of storing static information and instructions, random access memory (RAM) or other types of dynamic storage devices capable of storing information and instructions, or electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but is not limited thereto. The memory can exist independently and be connected to the processor via a bus. The memory can also be integrated with the processor.

[0205] The processor in the above embodiments may be a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits used to control the execution of the above scheme program.

[0206] For the foregoing method embodiments, in order to simplify the description, they are all expressed as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, because according to this application, some steps may be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily essential to this application.

[0207] In the several embodiments provided in this application, it should be understood that the disclosed apparatus can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative. For instance, the division of the units described above is merely a logical functional division. In actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed.

[0208] The units described above as separate components may or may not be physically separate. Similarly, the components shown as units may or may not be physical units; they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment, depending on actual needs.

[0209] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The aforementioned integrated unit can be implemented in hardware or as a software functional unit.

[0210] If the aforementioned integrated units are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in software form. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which can be a personal computer, server, or network device, specifically a processor in the computer device) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium may include various media capable of storing program code, such as a USB flash drive, portable hard drive, magnetic disk, optical disk, read-only memory (ROM), or random access memory (RAM).

[0211] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit it. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.

Claims

1. A method for displaying an interface, characterized in that, include: The electronic device displays a first interface, which includes a stable region and an unstable region. The unstable region is used to display K display windows, which are used to display the video call interfaces of K users out of Y video call users. The stable region is used to display thumbnails of (YK) users other than the K users out of the Y video call users. The electronic device obtains the current activity ranking of the Y video call users; The electronic device compares the user ranking numbers of the K users displayed in the unstable area of ​​the first interface with the user rankings of the top K users in terms of current activity to confirm the number of changes in user rankings. In response to determining that the number of user ranking changes reaches L, the electronic device confirms that it will replace M first users displayed in the stable area of ​​the first interface with M second users displayed in the unstable area of ​​the first interface; the current activity level of the first user is higher than the current activity ranking of the corresponding second user being replaced. The electronic device displays a second interface, which includes a stable area and an unstable area. The K display windows displayed in the unstable area include M windows for displaying the video call interfaces of the M first users and (KM) windows for displaying the video call interfaces of (KM) fifth users. The stable area includes thumbnails of the M second users. The fifth users are users who are displayed in the unstable area in both the first interface and the second interface. Wherein, Y, K, L, and M are positive integers, K is less than Y; L is less than K; and M is less than or equal to L. In the first interface and the second interface, the (KM) windows used to display the video call interfaces of the (KM) fifth users have the same position, shape and size.

2. The method as described in claim 1, characterized in that, The electronic device obtains the current activity ranking of the Y video call users, including: The electronic device calculates the duration of the target sound intensity for each of the Y video call users within a preset time period and the average sound intensity for each video call user within the preset time period; the target sound intensity is a sound intensity in decibels greater than a first threshold. The electronic device sorts the duration and the average value to obtain sorting values ​​Rank1 and Rank2; The electronic device calculates the first ranking value of each video call user within the preset duration based on the Rank1, the Rank2, the weight value of Rank1, and the weight value of Rank2. The electronic device calculates the current activity score of each video call user based on the first ranking value, the weight value of the preset duration, the second ranking value of each video call user within the historical preset duration, and the weight value of the historical preset duration. The electronic device sorts the current activity scores of the Y video call users to obtain the current activity ranking of the Y video call users.

3. The method as described in claim 1, characterized in that, include: The value of L is [Ceil( Floor )]; wherein, the Ceil ( )for Round up to the nearest integer, the Floor ( )for Round down to the nearest integer.

4. The method according to any one of claims 1-3, characterized in that, The Y video call users are those who meet the activity ranking criteria; The activity ranking qualifications include one or more of the following: video call users with only video stream, video call users with only audio stream, video call users with both video and audio streams, and video call users with neither video nor audio streams.

5. The method according to any one of claims 1-3, characterized in that, The electronic device confirms the replacement of M first users displayed in the stable area of ​​the first interface with M second users displayed in the unstable area of ​​the first interface, including: In the video call users of the K display windows in the unstable area of ​​the first interface, if there are N users whose current activity ranking is lower than K and N is greater than or equal to M, the electronic device selects the last M users with the lowest current activity ranking from the N users as the second user; where N is a positive integer. The electronic device sorts the second user based on the second user's user sort number to obtain the second user's second sort number; The electronic device selects the top M users with the highest current activity ranking from among the K video call users corresponding to the K display windows that are not in the unstable region, and designates them as the first user. The electronic device sorts the first user based on the first user's current activity ranking to obtain the first user's first sort number; The electronic device confirms the replacement of the first user and the second user whose first and second sequence numbers are the same.

6. The method according to any one of claims 1-5, characterized in that, The M display windows do not include locked display windows.

7. The method according to any one of claims 1-5, characterized in that, Before the electronic device compares the user ranking numbers of the K users displayed in the unstable area of ​​the first interface with the user rankings of the top K users in terms of current activity to confirm the number of user ranking changes, it includes: The electronic device adjusts the current activity ranking of the third user; the third user is a video call user in the first state and whose current activity ranking is outside the top K among the K display windows in the unstable area of ​​the first interface; the third user's adjusted activity ranking is in the top K; the first state includes video call users being in an active state.

8. The method according to any one of claims 1-5, characterized in that, Before the electronic device compares the user ranking numbers of the K users displayed in the unstable area of ​​the first interface with the user rankings of the top K users in terms of current activity to confirm the number of user ranking changes, it includes: The electronic device adjusts the current activity ranking of the fourth user; the fourth user is the top S users in the second state among the video call users whose current activity ranking is lower than the top K and are not corresponding to the K display window; S is less than or equal to M; the adjusted current activity ranking of the fourth user is in the top M; the second state includes video call users being active within an adjacent preset time period.

9. The method according to any one of claims 1-4, characterized in that, After the electronic device compares the user ranking numbers of the K users displayed in the unstable area on the first interface with the user rankings of the top K users in terms of current activity to confirm the number of user ranking changes, it further includes: If the current activity ranking of the video call users in the K display windows of the unstable area of ​​the first interface is within the top K and the number of user ranking changes reaches L, the electronic device sets the sequence number i=1; The electronic device selects a first video call user and a second video call user with serial number i from the first user sequence and the second user sequence, respectively; wherein, the first user sequence includes the top L video call users with the highest current activity ranking, and the second user sequence includes the top L video call users with the highest serial numbers in the user sorting sequence; the user sorting sequence includes the sorting of video call users in K display windows with user sorting numbers. Compared with the original user sorting sequence, if the extracted user sorting numbers of the first video call user and the second video call user have not changed, and the current activity ranking of the first video call user is higher than that of the second video call user, the electronic device swaps the positions of the first video call user and the second video call user in the user sorting sequence to obtain an updated user sorting sequence. If, in the updated user ranking sequence, the number of users whose user ranking numbers have changed is greater than or equal to L, the electronic device confirms that it will replace the M sixth users whose user ranking sequence has changed in the unstable area displayed in the first interface with the M seventh users displayed in the unstable area of ​​the first interface; the current activity level of the sixth user is higher than the current activity level of the corresponding seventh user being replaced; the electronic device displays a third interface, which includes the stable area and the unstable area, and the K display windows displayed in the unstable area include the video call interfaces of the replaced K users; Compared with the original user sorting sequence, if the number of users whose user sorting numbers change in the updated user sorting sequence is less than L, the electronic device updates the sequence number i according to the formula i=i+1, and performs the step of selecting the first video call user and the second video call user with sequence number i from the first user sequence and the second user sequence respectively.

10. The method according to any one of claims 1-4, characterized in that, After the electronic device compares the user ranking numbers of the K users displayed in the unstable area on the first interface with the user rankings of the top K users in terms of current activity to confirm the number of user ranking changes, it further includes: If the current activity ranking of the video call users in the K display windows of the unstable area of ​​the first interface is within the top K and the number of user ranking changes reaches L, the electronic device sets the sequence number i=1; The electronic device selects the first video call user and the third video call user with the sequence number i from the first user sequence and the user sorting sequence, respectively; wherein, the first user sequence includes the top L video call users with the highest current activity ranking, and the user sorting sequence includes the sorting of video call users in a K display window with user sorting numbers. If the extracted first video call user and the third video call user are not the same user, the electronic device will swap the positions of the first video call user and the third video call user in the user sorting sequence to obtain an updated user sorting sequence. If, in the updated user ranking sequence, the number of users whose user ranking numbers have changed is greater than or equal to L, the electronic device confirms that it will replace the M sixth users whose user ranking sequence has changed in the unstable area displayed in the first interface with the M seventh users displayed in the unstable area of ​​the first interface; the current activity level of the sixth user is higher than the current activity level of the corresponding seventh user being replaced; the electronic device displays a third interface, which includes the stable area and the unstable area, and the K display windows displayed in the unstable area include the video call interfaces of the replaced K users; Compared with the original user sorting sequence, in the updated user sorting sequence, if the number of users whose user sorting numbers have changed is less than L and the sequence number i is less than L, the electronic device updates the sequence number i according to the formula i=i+1, and performs the step of selecting the first video call user and the third video call user with sequence number i from the first user sequence and the user sorting sequence, respectively.

11. The method as described in claim 9, characterized in that, The first video call user and the second video call user do not include video call users whose display windows are in a third state; the third state includes the display window being locked.

12. The method as described in claim 10, characterized in that, The first video call user and the third video call user do not include video call users whose display windows are in a third state; the third state includes the display window being locked.

13. A device for displaying an interface, characterized in that, It includes a unit that performs the method of displaying the interface as described in any one of claims 1-12.

14. An electronic device, characterized in that, include: Memory, processor, and touchscreen; among which: The touchscreen is used to display content; The memory is used to store computer programs, the computer programs including program instructions; The processor is used to invoke the program instructions to cause the electronic device to perform the method as described in any one of claims 1-12.

15. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the method as described in any one of claims 1-12.

Citation Information

Patent Citations

  • Video selector

    CN102077586A

  • Method and system for exhibiting image of active user in live streaming room of mobile terminal

    CN107426621A