Live broadcast delay determination method and apparatus, and terminal device
By flexibly determining the delay parameters based on user types and network parameters, the problem of low flexibility in live broadcast delay settings in the prior art is solved, and more efficient user experience and network bandwidth utilization are achieved.
Patent Information
- Application Number
- CN202311183041.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-09-13
- Publication Date
- 2025-03-14
AI Technical Summary
In the prior art, the flexibility of setting live broadcast delays is low and it is impossible to effectively adapt to the network status and viewing habits of different users.
By determining the user type and obtaining network parameters when the user watches live broadcast, the delay parameters are flexibly determined based on the user type and network parameters, and sent to the multimedia server to receive the corresponding live broadcast data.
It improves the flexibility of live broadcast delay parameters, can more accurately match each user's network status and viewing habits, improve user experience and save network bandwidth.
Smart Images

Figure CN119629421A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present disclosure relate to the field of live broadcast technology, and in particular, to a method, apparatus and terminal device for determining a live broadcast delay. Background Art
[0002] In the live broadcast scenario, end-to-end delay is more important to the experience of users watching the live broadcast. The lower the end-to-end delay, the better the user interaction effect.
[0003] Currently, the server can set the delay parameters of a live broadcast to fixed parameters, so that the live broadcast delay of each client playing the live broadcast is the same. For example, the server can set the live broadcast delay to 10 seconds, so that each user will have a 10-second delay when watching the live broadcast, and the live broadcast freeze problem can be avoided. However, this results in low flexibility in setting the live broadcast delay. Summary of the invention
[0004] The present disclosure provides a method, an apparatus and a terminal device for determining a live broadcast delay, which are used to solve one or more technical problems in the prior art.
[0005] In a first aspect, the present disclosure provides a method for determining a live broadcast delay, the method comprising:
[0006] Determine the user type corresponding to the user watching the live broadcast;
[0007] Obtaining network parameters when the user watches the live broadcast;
[0008] Determine, based on the user type and the network parameter, a delay parameter when the user watches the live broadcast, wherein the delay parameter is associated with a delay when the user watches the live broadcast;
[0009] The delay parameter is sent to a multimedia server, and live broadcast data sent by the multimedia server based on the delay parameter is received.
[0010] In a second aspect, the present disclosure provides a device for determining a live broadcast delay, the device for determining a live broadcast delay comprising a first determination module, an acquisition module, a second determination module, a sending module, and a receiving module, wherein:
[0011] The first determination module is used to determine the user type corresponding to the user watching the live broadcast;
[0012] The acquisition module is used to obtain network parameters when the user watches the live broadcast;
[0013] The second determination module is used to determine, based on the user type and the network parameter, a delay parameter when the user watches the live broadcast, wherein the delay parameter is associated with a delay when the user watches the live broadcast;
[0014] The sending module is used to send the delay parameter to the multimedia server;
[0015] The receiving module is used to receive the live broadcast data sent by the multimedia server based on the delay parameter.
[0016] In a third aspect, an embodiment of the present disclosure provides an electronic device including: a processor and a memory;
[0017] The memory stores computer-executable instructions;
[0018] The processor executes the computer-executable instructions stored in the memory, so that the at least one processor executes the first aspect and various methods for determining the live broadcast delay that may be involved in the first aspect.
[0019] In a fourth aspect, an embodiment of the present disclosure provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer execution instructions. When a processor executes the computer execution instructions, the method for determining the live broadcast delay as described in the first aspect and various possible aspects of the first aspect is implemented.
[0020] The present disclosure provides a method, apparatus and terminal device for determining the delay of a live broadcast, which determines the user type corresponding to the user watching the live broadcast and the network parameters when the user watches the live broadcast, and determines the delay parameters when the user watches the live broadcast based on the user type and the network parameters, wherein the delay parameters are associated with the delay of the user watching the live broadcast, sends the delay parameters to a server, and receives the live broadcast data sent by the server based on the delay parameters. In the above method, since the terminal device can determine the delay parameters when the user watches the live broadcast in combination with the user type and the current network parameters, the terminal device can flexibly set the delay when each user watches the live broadcast, thereby improving the flexibility of determining the delay of the live broadcast, and can save network bandwidth and improve user experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] In order to more clearly illustrate the embodiments of the present disclosure or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present disclosure. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative labor.
[0022] Figure 1 A schematic diagram of an application scenario provided by an embodiment of the present disclosure;
[0023] Figure 2 A flowchart of a method for determining a live broadcast delay provided by an embodiment of the present disclosure;
[0024] Figure 3 A schematic diagram of a process for determining a delay parameter provided by an embodiment of the present disclosure;
[0025] Figure 4 A schematic diagram of a process for determining a delay parameter provided by an embodiment of the present disclosure;
[0026] Figure 5 A schematic diagram of a process of sending a delay parameter provided by an embodiment of the present disclosure;
[0027] Figure 6 A schematic diagram of a method for determining a user type provided in an embodiment of the present disclosure;
[0028] Figure 7 A schematic diagram of a process for determining a live broadcast delay provided by an embodiment of the present disclosure;
[0029] Figure 8 A schematic diagram of the structure of a device for determining a live broadcast delay provided by an embodiment of the present disclosure; and
[0030] Fig. 9 A schematic diagram of the structure of a terminal device provided in an embodiment of the present disclosure. DETAILED DESCRIPTION
[0031] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present disclosure. Instead, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.
[0032] To facilitate understanding, the concepts involved in the embodiments of the present disclosure are explained below.
[0033] Terminal device: a device with wireless transceiver function. The terminal device can be deployed on land, including indoors or outdoors, handheld, wearable or vehicle-mounted. The terminal device can be a mobile phone, a tablet computer, a computer with wireless transceiver function, a virtual reality (VR) terminal device, an augmented reality (AR) terminal device, a wireless terminal in industrial control, a vehicle-mounted terminal device, a wireless terminal in self-driving, a wireless terminal device in remote medical, a wireless terminal device in smart grid, a wireless terminal device in transportation safety, a wireless terminal device in smart city, a wireless terminal device in smart home, a wearable terminal device, etc. The terminal device involved in the embodiments of the present disclosure can also be called a terminal, a user equipment (UE), an access terminal device, a vehicle-mounted terminal, an industrial control terminal, a UE unit, a UE station, a mobile station, a mobile station, a remote station, a remote terminal device, a mobile device, a UE terminal device, a wireless communication device, a UE agent or a UE device, etc. Terminal devices can also be fixed or mobile.
[0034] In the related art, end-to-end delay is more important to the experience of users watching live broadcasts. For example, if the end-to-end delay is low, users watching live broadcasts can interact with the anchor in a timely manner to improve the effect of the live broadcast. At present, the server can set the delay parameters of a live broadcast to fixed parameters, so that the live broadcast delay of each client playing the live broadcast is the same. For example, the server can set the live broadcast delay to 10 seconds, so that the progress of each user watching the live broadcast is the same, and for users with poor network status, the live broadcast delay will not cause the live broadcast to freeze. However, each user has different habits of watching live broadcasts, and each user has different network status when watching live broadcasts. The fixed delay parameters will result in a low flexibility in setting the live broadcast delay, and will cause a waste of network bandwidth for users with better network status.
[0035] In order to solve the technical problems in the related art, the embodiment of the present disclosure provides a method for determining the delay of live broadcast, determining the user type corresponding to the user watching the live broadcast, obtaining the network parameters when the user watches the live broadcast, and determining the network quality level when the user watches the live broadcast based on the network parameters. If the network quality level is greater than or equal to the first threshold, and the user type includes a user of the free and lag type, the delay parameter is set to a first preset value. If the network quality level is less than the first threshold, or the user type includes a user of the lag type, the delay parameter when the user watches the live broadcast is further determined according to the user type, and the delay parameter is sent to the multimedia server, and the live broadcast data sent by the multimedia server based on the delay parameter is received. In this way, since the terminal device can flexibly determine the delay parameter when watching the live broadcast based on the user type and the network parameters, the flexibility of the live broadcast delay parameter can be improved, and for users with a good network, low delay can effectively save network bandwidth.
[0036] Next, combine Figure 1 , the application scenarios of the embodiments of the present disclosure are described.
[0037] Figure 1 A schematic diagram of an application scenario provided by an embodiment of the present disclosure. Figure 1 , including: terminal device 1, terminal device 2 and multimedia server. The multimedia server can send live data to terminal device 1 and terminal device 2, terminal device 1 and terminal device 2 can play live video, the account logged in by the live client of terminal device 1 is the account of user 1, and the account logged in by the live client of terminal device 2 is the account of user 2.
[0038] See also Figure 1 , terminal device 1 can determine that the delay parameter for user 1 to watch live broadcast is 2 seconds based on the user type of user 1 and the current network parameters of terminal device 1, and send the delay parameter of 2 seconds to the multimedia server, and the multimedia server can send the live broadcast data of the last 2 seconds to terminal device 1. Terminal device 2 can determine that the delay parameter for user 2 to watch live broadcast is 5 seconds based on the user type of user 2 and the current network parameters of terminal device 2, and send the delay parameter of 5 seconds to the multimedia server, and the multimedia server can send the live broadcast data of the last 5 seconds to terminal device 2. In this way, the terminal device can flexibly adjust the delay parameter of the current live broadcast based on the user type and network parameters, improve the flexibility of the delay parameter, and save network bandwidth.
[0039] It should be noted that Figure 1 The application scenarios of the embodiments of the present disclosure are merely illustrative and are not intended to limit the application scenarios of the embodiments of the present disclosure.
[0040] The technical solution of the present invention and how the technical solution of the present invention solves the above-mentioned technical problems are described in detail below with specific embodiments. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present invention will be described below in conjunction with the accompanying drawings.
[0041] Figure 2 A flowchart of a method for determining a live broadcast delay provided by an embodiment of the present disclosure. Figure 2 , the method may include:
[0042] S201: Determine the user type corresponding to the user watching the live broadcast.
[0043] The execution subject of the embodiment of the present disclosure may be a terminal device, or a device for determining a live broadcast delay set in the terminal device. The device for determining a live broadcast delay may be implemented based on software, or may be implemented based on a combination of software and hardware, which is not limited in the embodiment of the present disclosure.
[0044] The user watching the live broadcast may be the user who logs in the live broadcast client. For example, if the user who logs in the live broadcast client in the terminal device is user 1, the user watching the live broadcast may be user 1, and if the user who logs in the live broadcast client in the terminal device is user 2, the user watching the live broadcast may be user 2.
[0045] It should be noted that the terminal device can determine the user watching the live broadcast based on any feasible implementation method, and the embodiments of the present disclosure are not limited to this.
[0046] The user type may include a stuck user or a non-stuck user, and the user type may also include an interactive user or a non-interactive user. For example, the user types corresponding to the user watching the live broadcast may be a stuck user and an interactive user, a stuck user and a non-interactive user, a non-stuck user and an interactive user, and a non-stuck user and a non-interactive user.
[0047] Among them, the stuck type user may refer to a user who has a high frequency of stuck when watching live broadcasts in the historical period. For example, if a user watched live broadcasts every day in the past 7 days, and the live broadcast stuck on 4 days, the user type corresponding to the user may be a stuck type user. For example, if a user has stuck 20 times when watching live broadcasts in the past 7 days, the user type corresponding to the user may be a stuck type user.
[0048] Among them, the non-stuttering type of user may refer to a user who has a low frequency of stuttering when watching live broadcasts in the historical period. For example, if a user has watched live broadcasts every day in the past 7 days, and there has been no live broadcast stuttering every day, then the user type corresponding to the user may be a non-stuttering type of user. For example, if a user has experienced 1 stuttering when watching live broadcasts in the past 7 days, then the user type corresponding to the user may be a non-stuttering type of user.
[0049] Among them, interactive users may refer to users who interact with the anchor more frequently when watching a live broadcast. For example, if a user likes the live broadcast 100 times, the user type corresponding to the user may be an interactive user. For example, if a user sends 100 comments when watching a live broadcast, the user type corresponding to the user may be an interactive user.
[0050] Among them, non-interactive users can refer to users who interact less with the anchor when watching the live broadcast. For example, if the number of likes for the live broadcast is 0 when the user is watching the live broadcast, the user type corresponding to the user can be a non-interactive user. For example, if the user sends 1 comment when watching the live broadcast, the user type corresponding to the user can be a non-interactive user. In this way, by classifying users, the user's habits when watching the live broadcast can be accurately determined, and then the delay when the user watches the live broadcast can be accurately set, thereby improving the accuracy of determining the delay and improving the user experience.
[0051] S202: Obtain network parameters when the user watches the live broadcast.
[0052] Optionally, the network parameters may indicate the network status when the user is watching the live broadcast. For example, the network parameters may include network bandwidth. The larger the network bandwidth, the better the network status when the user is watching the live broadcast, and the smaller the network bandwidth, the worse the network status when the user is watching the live broadcast. For example, the network parameters may include round-trip time (RTT). The smaller the RTT, the better the network status when the user is watching the live broadcast, and the larger the RTT, the worse the network status when the user is watching the live broadcast.
[0053] It should be noted that the network parameters may include network bandwidth and round-trip delay, and the network parameters may also include any other parameters that affect the network status, which is not limited in the embodiments of the present disclosure.
[0054] It should be noted that the terminal device can obtain the network parameters when the user watches the live broadcast based on any feasible implementation method, and the embodiments of the present disclosure are not limited to this.
[0055] S203: Determine a delay parameter for the user when watching a live broadcast based on the user type and network parameters.
[0056] The delay parameter is associated with the delay of the user watching the live broadcast. For example, the delay parameter can determine the delay when the user watches the live broadcast. For example, if the delay parameter is parameter 1, the delay when the user watches the live broadcast is delay 1, if the delay parameter is parameter 2, the delay when the user watches the live broadcast is delay 2, and if the delay parameter is parameter 3, the delay when the user watches the live broadcast is delay 3.
[0057] Among them, the corresponding relationship between the delay parameter and the delay is a preset relationship, and the terminal device can pre-agree on the corresponding relationship with the server, so that the terminal device can control the delay of the live broadcast through the delay parameter.
[0058] Among them, the terminal device can determine the delay parameters when the user watches the live broadcast based on the following feasible implementation methods: based on network parameters, determine the network quality level when the user watches the live broadcast; based on the network quality level and user type, determine the delay parameters when the user watches the live broadcast.
[0059] Among them, the network quality level is proportional to the network status when the user watches the live broadcast. For example, the network quality level may include level 1, level 2, level 3, level 4, etc. For example, the higher the network quality level, the better the network status when the user watches the live broadcast, and the lower the network quality level, the worse the network status when the user watches the live broadcast. For example, if the network quality level when user 1 watches the live broadcast is level 2, and the network quality level when user 2 watches the live broadcast is level 4, it means that the network status when user 2 watches the live broadcast is better than the network status when user 1 watches the live broadcast. In this way, based on the network quality level, the network status of the user watching the live broadcast can be accurately and vividly determined, thereby improving the accuracy of determining the delay parameter.
[0060] Optionally, the terminal device can use the time sliding window method to collect network parameters such as playback download speed, freeze information, RTT information, etc. within the time window to estimate the current network quality. For example, the collection time window can be set to 10 seconds, and the collection time window can also be any length. The embodiment of the present disclosure does not limit this. The smaller the collection time window, the greater the impact of the network parameters in the recent period on the network quality, and the larger the collection time window, the smaller the impact of the network parameters in the recent period on the network quality.
[0061] Optionally, the terminal device can determine the network quality level based on the network bandwidth and round-trip delay in the network parameters. For example, if the network bandwidth is greater than 3000kb / s and the RTT is less than 23ms, the network quality level is level 4; if the network bandwidth is greater than 2338kb / s and less than or equal to 3000kb / s, and the RTT is greater than or equal to 23ms and less than 46ms, the network quality level is level 3; if the network bandwidth is greater than 816kb / s and less than or equal to 2338kb / s, and the RTT is greater than or equal to 46ms and less than 77ms, the network quality level is level 2; if the network bandwidth is less than or equal to 816kb / s, and the RTT is greater than or equal to 77ms, the network quality level is level 1.
[0062] It should be noted that if the network bandwidth is greater than 3000 kb / s, but the RTT is greater than or equal to 23 ms and less than 46 ms, the terminal device determines that the network quality level is level 3 (ie, backward compatible).
[0063] The terminal device determines the delay parameters when the user watches the live broadcast based on the network quality level and user type. There are two situations:
[0064] Case 1: the network quality level is greater than or equal to the first threshold, and the user type includes non-stuttering type users.
[0065] If the network quality level is greater than or equal to the first threshold, and the user type includes a non-stuttering user, the delay parameter is set to a first preset value. For example, if the network quality level is level 1, level 2, level 3, and level 4, the first threshold may be 4, that is, when the network quality level is level 4, and the user type includes a non-stuttering user, the terminal device may set the delay parameter of the user to the first preset value.
[0066] It should be noted that the first threshold may also be determined based on any level of the network quality level, which is not limited in the embodiments of the present disclosure.
[0067] Optionally, the first preset value may be a delay parameter value corresponding to the lowest delay. For example, when the network quality level is greater than or equal to the first threshold, it indicates that the network status of the user when watching the live broadcast is good, and if the user type includes non-stuttering users, it indicates that the user rarely experiences stuttering when watching the live broadcast during the historical period. Therefore, the terminal device may provide such users with a lower delay to improve the user experience and save network bandwidth. For example, the delay of an animation video (Flash Video, FLV) based on a streaming media encapsulation protocol may be as low as 2 seconds, and therefore, the first preset value may be a delay parameter corresponding to a delay of 2 seconds.
[0068] Next, combine Figure 3, the process of determining the delay parameters in this case is explained.
[0069] Figure 3 A schematic diagram of a process for determining a delay parameter provided by an embodiment of the present disclosure. Figure 3 , including network parameters and user types. Among them, network parameters include round-trip time RTT and network bandwidth, RTT is 10ms and network bandwidth is 3500kb / s, and user types include interactive users and non-stuttering users. Among them, the terminal device determines that the network quality level of the terminal device is level 4 based on the RTT and network bandwidth in the network parameters, and because the user type includes non-stuttering users, the terminal device can determine that the delay parameter of the user when watching the live broadcast is 2 seconds (the delay parameter corresponding to the delay of 2 seconds). In this way, if the user's network quality is high, and the user's habit of watching live broadcasts is less stuttering, the terminal device can request a lower live broadcast delay, increase the flexibility of the live broadcast delay setting, and improve the user experience.
[0070] Case 2: the network quality level is less than the first threshold, or the user type includes a lag type user.
[0071] If the network quality level is less than the first threshold, or the user type includes users of the stuck type, the delay parameter of the user when watching the live broadcast is determined according to the user type. For example, if the network quality level of the terminal device is less than the first threshold, it means that the network status of the user when watching the live broadcast is poor. Therefore, the terminal device can further determine the delay parameter of the user when watching the live broadcast according to the user type. For example, if the user type corresponding to the user watching the live broadcast includes users of the stuck type, it means that the frequency of stuck when the user watches the live broadcast is high (due to the poor network causing the high frequency of stuck, or due to the user's habit of watching the live broadcast, such as watching a live broadcast with higher definition, resulting in a higher frequency of stuck, etc.). Therefore, the terminal device can further determine the delay parameter of the user when watching the live broadcast based on the user type.
[0072] Among them, the terminal device determines the delay parameter when the user watches the live broadcast according to the user type. Specifically, when the user type also includes interactive users, the delay parameter is set to the second preset value; when the user type also includes non-interactive users, the delay parameter is set to the third preset value.
[0073] The first preset value is smaller than the second preset value, and the second preset value is smaller than the third preset value. For example, the live broadcast delay corresponding to the first preset value may be 2 seconds, the live broadcast delay corresponding to the second preset value may be 3 seconds, and the live broadcast delay corresponding to the third preset value may be 5 seconds, which is not limited in the embodiments of the present disclosure.
[0074] Optionally, when the network quality level is low, or the user type includes users with lag, the terminal device can further determine the user's habit of watching live broadcasts based on the user type, and then based on the user's habit of watching live broadcasts, accurately determine the delay parameters of the user when watching live broadcasts, thereby improving the flexibility and accuracy of the delay parameters and improving the user experience.
[0075] For example, if the user type also includes interactive users, it means that the user interacts with the anchor frequently when watching the live broadcast. Therefore, in order to improve the interactive experience of the live broadcast, the terminal device can request a lower live broadcast delay. However, due to poor network conditions, or the user frequently experiences freezes when watching the live broadcast, in order to avoid frequent freezes (the lower the delay, the higher the freeze frequency), the live broadcast delay can be set to a moderate value (for example, if the minimum delay is 2 seconds, the live broadcast delay in this case can be 3 seconds, 4 seconds, etc.). This not only avoids frequent freezes, but also improves the interactive effect of the live broadcast and improves the user experience.
[0076] For example, if the user types also include non-interactive users, it means that the frequency of users interacting with the anchor when watching the live broadcast is low. Therefore, the terminal device can request a higher live broadcast delay (for example, if the minimum delay is 2 seconds, the live broadcast delay in this case can be 5 seconds, 6 seconds, etc.), thereby avoiding live broadcast freezes caused by poor network or user habits of watching live broadcasts, thereby improving user experience.
[0077] It should be noted that in the embodiment of the present disclosure, the first preset value, the second preset value and the third preset value can be set arbitrarily, but the first preset value is less than the second preset value, and the second preset value is less than the third preset value. In this way, the terminal device can flexibly set matching delay parameters for the user in combination with the network status and the user's habit of watching live broadcasts, thereby improving the user's experience. For example, if the network quality level of the terminal device is level 4, and the user type corresponding to the user watching the live broadcast includes a non-stuttering type of user, the network status of the user when watching the live broadcast is good, and the frequency of stuttering when watching the live broadcast in history is low, so the terminal device can request a 2-second delay for the user; if the network quality level of the terminal device is level 2, the terminal device can further determine the user's habit of watching live broadcasts, if the user type includes an interactive type of user, it means that the user is used to interacting with the anchor, so the terminal device can request a 3-second delay for the user, if the user type includes a non-interactive type of user, it means that the user is not used to interacting with the anchor, and in order to avoid stuttering, the terminal device can request a 5-second delay for the user. In this way, the flexibility of the live broadcast delay can be improved, the accuracy of the live broadcast delay can be improved, and network bandwidth can be saved.
[0078] Next, combine Figure 4, in this case, the process of determining the delay parameters is explained.
[0079] Figure 4 A schematic diagram of a process for determining a delay parameter provided by an embodiment of the present disclosure. Figure 4 , including terminal device 1 and terminal device 2. Among them, terminal device 1 and terminal device 2 play the same live broadcast. The network parameters of terminal device 1 are: RTT is 40ms, network bandwidth is 2500kb / s, and the network parameters of terminal device 2 are: RTT60ms, network bandwidth is 1500kb / s. The user types corresponding to the user who logs in to the live broadcast client in terminal device 1 include interactive users and non-stuttering users, and the user types corresponding to the user who logs in to the live broadcast client in terminal device 2 include non-interactive users and stuttering users.
[0080] See also Figure 4 , the network quality level corresponding to the network parameters of terminal device 1 is level 3 (the network quality of terminal device 1 is relatively low). Since the user types corresponding to the users who log in to the live broadcast client in terminal device 1 include interactive users, in order to improve the interactive experience of live broadcast, the delay parameter requested by terminal device 1 can be 3 seconds (that is, the delay parameter corresponding to a live broadcast delay of 3 seconds). The network quality level corresponding to the network parameters of terminal device 2 is level 2 (the network quality of terminal device 2 is lower than that of terminal device 1). Since the user types corresponding to the users who log in to the live broadcast client in terminal device 2 include non-interactive users, in order to avoid lag, the delay parameter requested by terminal device 2 can be 5 seconds (that is, the delay parameter corresponding to a live broadcast delay of 5 seconds). In this way, when the network is poor, the terminal device can also set the corresponding delay parameter for each user based on the user's habit of watching live broadcasts, thereby improving the flexibility and accuracy of the delay parameter.
[0081] S204: Send a delay parameter to the multimedia server, and receive live broadcast data sent by the multimedia server based on the delay parameter.
[0082] Optionally, the multimedia server can be a content delivery network (CDN), the terminal device can agree with the CND edge node on delay parameters for controlling the live broadcast delay, and the terminal device can send the delay parameters to the CND edge node based on an http request in the form of http request query parameters.
[0083] The terminal device sends the delay parameter to the multimedia server, which can be specifically: adding the delay parameter to the live broadcast request, and sending the play request after adding the delay parameter to the multimedia server. For example, when the terminal device plays any live broadcast, the terminal device can add the delay parameter to the play request of the live broadcast, and when the terminal device sends the play request to the multimedia server, the multimedia server can obtain the delay parameter.
[0084] It should be noted that the terminal device can determine the delay parameter when opening the live broadcast client, and when the terminal device requests to play the live broadcast video, the terminal device can add the delay parameter in the playback request corresponding to the live broadcast video.
[0085] Optionally, after the terminal device sends the delay parameter to the multimedia server, the terminal device may receive the live broadcast data sent by the multimedia server, wherein the live broadcast data is generated based on the delay parameter. For example, the live broadcast data may be cached in the CDN edge node, and the CDN edge node may determine the live broadcast data to be sent to the terminal device based on the delay parameter. For example, if the CDN edge node caches 5 seconds of live broadcast data, and if the delay parameter received by the CDN edge node is 2 seconds, the CDN edge node may send the live broadcast data of the most recent 2 seconds to the terminal device.
[0086] Next, combine Figure 5 , the process of sending delay parameters from the terminal device to the multimedia server is described.
[0087] Figure 5 A schematic diagram of a process of sending delay parameters provided by an embodiment of the present disclosure. Figure 5 , including: a multimedia server, a terminal device and a cache of the multimedia server. Among them, the cache of the multimedia server can cache 5 seconds of live data. The live data from the current moment to 1 second ago is live data 1, the live data from 1 second ago to 2 seconds ago is live data 2, the live data from 2 seconds ago to 3 seconds ago is live data 3, the live data from 3 seconds ago to 4 seconds ago is live data 4, and the live data from 4 seconds ago to 5 seconds ago is live data 5. If the terminal device sends a delay parameter of 2 seconds to the multimedia server, the multimedia server can send live data 1 and live data 2 to the terminal device based on the delay parameter of 2 seconds.
[0088] The disclosed embodiment provides a method for determining live broadcast delay, determining the user type corresponding to the user watching the live broadcast, obtaining the network parameters when the user watches the live broadcast, and determining the network quality level when the user watches the live broadcast based on the network parameters. If the network quality level is greater than or equal to the first threshold, and the user type includes a user of the free and lag type, the delay parameter is set to a first preset value. If the network quality level is less than the first threshold, or the user type includes a user of the lag type, the delay parameter when the user watches the live broadcast is further determined according to the user type. After the terminal device determines the delay parameter, it can send the delay parameter to the multimedia server and receive the live broadcast data sent by the multimedia server based on the delay parameter. In this way, since the terminal device can flexibly determine the delay parameter when watching the live broadcast based on the user type and the network parameters, and the terminal device can set a matching delay parameter for the user in combination with the user's habit of watching the live broadcast, the flexibility of the live broadcast delay parameter can be improved, the user experience can be improved, and for users with a good network, low delay can effectively save network bandwidth.
[0089] exist Figure 2 Based on the embodiment shown below, combined with Figure 6 , a method for determining the user type corresponding to the user watching the live broadcast in the above-mentioned method for determining the live broadcast delay is explained.
[0090] Figure 6 A schematic diagram of a method for determining a user type provided by an embodiment of the present disclosure. Figure 6 The method flow may include:
[0091] S601. Obtain the number of freezes and live broadcast interaction information when the user watches the live broadcast in a historical period.
[0092] Optionally, the jamming may be a situation where the live video frame lag duration is greater than a preset threshold. For example, if the live video stops playing for 2 seconds, the terminal device can determine that the live video has jammed, and if the live video stops playing for 0.1 seconds, the terminal device can determine that the live video has not jammed.
[0093] Optionally, the historical period may be within the past 7 days, within the past 15 days, etc., which is not limited in the embodiments of the present disclosure.
[0094] Optionally, the terminal device can obtain the number of freezes that occur when the user watches the live broadcast within a historical period based on any feasible implementation method (for example, the terminal device obtains the number of freezes based on the multimedia server, the terminal device can also obtain the number of freezes in the live broadcast log, etc.), and the embodiments of the present disclosure are not limited to this.
[0095] Optionally, the live broadcast interaction information may include any information of the user's interaction with the anchor. For example, the live broadcast interaction information may include the user's comments on the live broadcast, the user's likes on the live broadcast, the user's viewing time of the live broadcast, etc., which is not limited in the embodiments of the present disclosure.
[0096] Optionally, the terminal device can obtain the live interaction information based on any feasible implementation method (for example, the terminal device can obtain the user's live interaction information based on the multimedia server, etc.), and the embodiments of the present disclosure are not limited to this.
[0097] S602: Determine the user type corresponding to the user watching the live broadcast based on the number of freezes and the live broadcast interaction information.
[0098] Among them, the terminal device determines the user type corresponding to the user watching the live broadcast based on the number of freezes and the live broadcast interaction information. Specifically, based on the number of freezes, the user type is determined to be a freeze type user or a non-freezing type user; based on the live broadcast interaction information, the user type is determined to be an interactive type user or a non-interactive type user.
[0099] Optionally, if the number of freezes is greater than or equal to the second threshold, the terminal device may determine that the user type is a freeze type user, and if the number of freezes is less than the second threshold, the terminal device may determine that the user type is a non-freeze type user. For example, if the number of freezes when the user watched the live broadcast in the past 7 days was 30 times, the terminal device may determine that the user type corresponding to the user is a freeze type user, and if the number of freezes when the user watched the live broadcast in the past 7 days was 1 time, the terminal device may determine that the user type corresponding to the user is a non-freeze type user.
[0100] It should be noted that the second threshold can be determined based on any feasible implementation method, and the embodiments of the present disclosure are not limited to this.
[0101] Among them, the terminal device determines the user type as an interactive type user or a non-interactive type user based on the live broadcast interaction information, which can be specifically: based on the live broadcast interaction information, determine the user's interaction frequency when watching the live broadcast, if the interaction frequency is greater than or equal to the third threshold, then determine the user type as an interactive type user, if the interaction frequency is less than the third threshold, then determine the user type as a non-interactive type user. For example, if the interaction frequency is greater than or equal to the third threshold, it means that the user interacts with the anchor more frequently when watching the live broadcast, and the terminal device can determine that the user type corresponding to the user is an interactive type user; if the interaction frequency is less than the third threshold, it means that the user interacts with the anchor less frequently when watching the live broadcast, and the terminal device can determine that the user type corresponding to the user is a non-interactive type user.
[0102] Optionally, the terminal device may determine the number of interactions of the user when watching the live broadcast based on the user's comments on the live broadcast, the user's likes on the live broadcast, and other information in the live broadcast interaction information. The terminal device determines the user's interaction frequency of watching the live broadcast based on the user's viewing time and the number of interactions in the live broadcast interaction information. For example, if the user has watched the live broadcast for 500 minutes in the past 7 days, the number of likes for the live broadcast the user has watched is 10 times, and the number of comments on the live broadcast the user has watched is 40 times, then the user's interaction frequency of watching the live broadcast in the past 7 days is once every 10 minutes.
[0103] Optionally, the terminal device may also determine the user type corresponding to the user watching the live broadcast based on the multimedia server. For example, the multimedia server may obtain the number of freezes when multiple users watch the live broadcast in a historical period, and then calculate whether each user is a freeze type user or a non-freezing type user. In addition, the multimedia server may obtain the live broadcast interaction information when multiple users watch the live broadcast in a historical period, so the multimedia server may determine whether each user is an interactive type user or a non-interactive type user. In this way, the user type corresponding to each user may be saved in the multimedia server, and when the terminal device sends the user's identifier to the multimedia server, the multimedia server may send the user type corresponding to the user to the terminal device.
[0104] Optionally, since the multimedia server can obtain live interactive information of multiple users, when determining whether each user is an interactive user, the multimedia server can classify multiple users based on a clustering algorithm, one of which is an interactive user and the other is a non-interactive user. For example, the server can use a fixed step interval bucketing method to bucket information such as likes and comments, and then select the bucket with the largest change in the number of people in two adjacent buckets, and use the center point of the bucket interval as the boundary to divide the interactive users and non-interactive users.
[0105] It should be noted that the multimedia server may also determine whether the user type corresponding to the user is an interactive user based on any feasible clustering algorithm, and the embodiments of the present disclosure are not limited to this.
[0106] It should be noted that after the multimedia server determines the user type corresponding to each user, the multimedia server may also update the user type corresponding to the user in real time based on the number of freezes when the user watches the live broadcast and the live broadcast interaction information.
[0107] The disclosed embodiment provides a method for determining the user type, obtaining the number of freezes and live interaction information of the user watching the live broadcast in the historical period, if the number of freezes is greater than or equal to the second threshold, the terminal device can determine that the user type is a freeze type user, if the number of freezes is less than the second threshold, the terminal device can determine that the user type is a non-freeze type user, based on the live interaction information, determine the user's interaction frequency of watching the live broadcast, if the interaction frequency is greater than or equal to the third threshold, the user type is determined as an interactive type user, if the interaction frequency is less than the third threshold, the user type is determined as a non-interactive type user. In this way, the terminal device can accurately determine the corresponding type of the user, and then set matching delay parameters for the user, improve the flexibility and accuracy of the delay parameters, and improve the user experience.
[0108] Based on any of the above embodiments, Figure 7 , the process of determining the above live broadcast delay is explained.
[0109] Figure 7 A schematic diagram of a process for determining a live broadcast delay provided by an embodiment of the present disclosure. Figure 7 , including: terminal equipment and multimedia server. Among them, the network parameters of the terminal equipment include round-trip delay RTT and network bandwidth. Among them, RTT is 40ms, and network bandwidth is 2500kb / s. The user types corresponding to the user logged in by the live broadcast client in the terminal equipment include interactive type users and non-stuttering type users.
[0110] See also Figure 7 Since the RTT is 40ms and the network bandwidth is 2500kb / s, the terminal device can determine that the current network quality level is level 3, and since the user types corresponding to the users watching the live broadcast include interactive users, the terminal device can set the live broadcast delay to 3 seconds.
[0111] See also Figure 7 , the terminal device can send a 3-second delay parameter to the multimedia server, where the multimedia server's cache includes live data 1 between the current moment and the previous 1 second, live data 2 between the previous 1 second and the previous 2 seconds, live data 3 between the previous 2 seconds and the previous 3 seconds, live data 4 between the previous 3 seconds and the previous 4 seconds, and live data 5 between the previous 4 seconds and the previous 5 seconds.
[0112] See also Figure 7After receiving the 3-second delay parameter, the multimedia server can send live data 1, live data 2, and live data 3 to the terminal device. After receiving the above live data, the terminal device can play the live video based on the live data. In this way, since the terminal device can flexibly determine the delay parameters when watching live broadcasts based on user type and network parameters, and the terminal device can set matching delay parameters for users based on the user's habit of watching live broadcasts, the flexibility of the live broadcast delay parameters can be improved, the user experience can be improved, and for users with better networks, low delay can effectively save network bandwidth.
[0113] Figure 8 A schematic diagram of the structure of a device for determining a live broadcast delay provided by an embodiment of the present disclosure. Figure 8 The apparatus 800 for determining the live broadcast delay includes a first determining module 801, an acquiring module 802, a second determining module 803, a sending module 804 and a receiving module 805, wherein:
[0114] The first determination module 801 is used to determine the user type corresponding to the user watching the live broadcast;
[0115] The acquisition module 802 is used to acquire network parameters when the user watches the live broadcast;
[0116] The second determination module 803 is used to determine, based on the user type and the network parameter, a delay parameter when the user watches the live broadcast, wherein the delay parameter is associated with a delay in the user watching the live broadcast;
[0117] The sending module 804 is used to send the delay parameter to the multimedia server;
[0118] The receiving module 805 is used to receive the live broadcast data sent by the multimedia server based on the delay parameter.
[0119] According to one or more embodiments of the present disclosure, the second determining module 803 is specifically configured to:
[0120] Based on the network parameters, determining a network quality level when the user watches the live broadcast;
[0121] Based on the network quality level and the user type, a delay parameter when the user watches the live broadcast is determined.
[0122] According to one or more embodiments of the present disclosure, the second determining module 803 is specifically configured to:
[0123] If the network quality level is greater than or equal to a first threshold, and the user type includes a non-stuttering type user, setting the delay parameter to a first preset value;
[0124] If the network parameter is less than the first threshold, or the user type includes a user of the lag type, then the delay parameter of the user when watching the live broadcast is determined according to the user type.
[0125] According to one or more embodiments of the present disclosure, the second determining module 803 is specifically configured to:
[0126] When the user type also includes an interactive type user, setting the delay parameter to a second preset value;
[0127] When the user type also includes a non-interactive user, setting the delay parameter to a third preset value;
[0128] The first preset value is smaller than the second preset value, and the second preset value is smaller than the third preset value.
[0129] According to one or more embodiments of the present disclosure, the first determining module 801 is specifically configured to:
[0130] Obtain the number of freezes and live broadcast interaction information of the user during the historical period;
[0131] Based on the number of freezes, determining whether the user type is a freeze type user or a non-freeze type user;
[0132] Based on the live broadcast interaction information, determine whether the user type is an interactive user or a non-interactive user.
[0133] According to one or more embodiments of the present disclosure, the first determining module 801 is specifically configured to:
[0134] If the number of freezes is greater than or equal to a second threshold, determining that the user type is a freeze type user;
[0135] If the number of freezes is less than the second threshold, it is determined that the user type is a non-freezing type user.
[0136] According to one or more embodiments of the present disclosure, the first determining module 801 is specifically configured to:
[0137] Based on the live broadcast interaction information, determining the interaction frequency of the user watching the live broadcast;
[0138] If the interaction frequency is greater than or equal to a third threshold, determining the user type as an interactive type user;
[0139] If the interaction frequency is less than the third threshold, the user type is determined as a non-interactive user.
[0140] The device for determining the live broadcast delay provided in the embodiment of the present disclosure can be used to execute the technical solution of the above-mentioned method embodiment. Its implementation principle and technical effect are similar, and this embodiment will not be repeated here.
[0141] Fig. 9 This is a schematic diagram of the structure of a terminal device provided by an embodiment of the present disclosure. Fig. 9 , which shows a schematic diagram of the structure of a terminal device 900 suitable for implementing the embodiment of the present disclosure. The terminal device may include but is not limited to mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, personal digital assistants (PDAs), tablet computers (Portable Android Devices, PADs), portable multimedia players (PMPs), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Fig. 9 The terminal device shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.
[0142] like Fig. 9 As shown, the terminal device 900 may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 901, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 902 or a program loaded from a storage device 908 to a random access memory (RAM) 903. Various programs and data required for the operation of the terminal device 900 are also stored in the RAM 903. The processing device 901, the ROM 902, and the RAM 903 are connected to each other via a bus 904. An input / output (I / O) interface 905 is also connected to the bus 904.
[0143] Typically, the following devices may be connected to the I / O interface 905: input devices 906 including, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; output devices 907 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; storage devices 908 including, for example, a magnetic tape, a hard disk, etc.; and communication devices 909. The communication devices 909 may allow the terminal device 900 to communicate with other devices wirelessly or by wire to exchange data. Although Fig. 9 The terminal device 900 is shown to have various devices, but it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed instead.
[0144] In particular, according to an embodiment of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program contains program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device 909, or installed from a storage device 908, or installed from a ROM 902. When the computer program is executed by the processing device 901, the above-mentioned functions defined in the method of the embodiment of the present disclosure are executed.
[0145] It should be noted that the computer-readable medium disclosed above may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that may be used by or in combination with an instruction execution system, device or device. In the present disclosure, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, in which a computer-readable program code is carried. This propagated data signal may take a variety of forms, including but not limited to an electromagnetic signal, an optical signal, or any suitable combination of the above. The computer readable signal medium may also be any computer readable medium other than a computer readable storage medium, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution system, apparatus or device. The program code contained on the computer readable medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.
[0146] The computer-readable medium may be included in the terminal device, or may exist independently without being installed in the terminal device.
[0147] The computer-readable medium carries one or more programs. When the one or more programs are executed by the terminal device, the terminal device executes the method shown in the above embodiment.
[0148] An embodiment of the present disclosure provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer-executable instructions. When a processor executes the computer-executable instructions, various methods that may be involved in the above embodiments are implemented.
[0149] The embodiments of the present disclosure provide a computer program product, including a computer program. When the computer program is executed by a processor, the method described in various possible aspects of the embodiments above is implemented.
[0150] Computer program code for performing the operations of the present disclosure may be written in one or more programming languages or a combination thereof, including object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as an independent software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0151] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some implementations as replacements, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0152] The units involved in the embodiments described in the present disclosure may be implemented by software or hardware. The name of a unit does not limit the unit itself in some cases. For example, the first acquisition unit may also be described as a "unit for acquiring at least two Internet Protocol addresses".
[0153] The functions described above herein may be performed at least in part by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), complex programmable logic devices (CPLDs), and the like.
[0154] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0155] It should be noted that the modifications of "one" and "plurality" mentioned in the present disclosure are illustrative rather than restrictive, and those skilled in the art should understand that unless otherwise clearly indicated in the context, it should be understood as "one or more".
[0156] The names of the messages or information exchanged between multiple devices in the embodiments of the present disclosure are only used for illustrative purposes and are not used to limit the scope of these messages or information.
[0157] It is understandable that before using the technical solutions disclosed in the embodiments of the present disclosure, the types, scope of use, usage scenarios, etc. of the personal information involved in the present disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.
[0158] For example, in response to receiving an active request from a user, a prompt message is sent to the user to clearly prompt the user that the operation requested to be performed will require obtaining and using the user's personal information. Thus, the user can independently choose whether to provide personal information to software or hardware such as an electronic device, application, server or storage medium that performs the operation of the technical solution of the present disclosure based on the prompt message. As an optional but non-limiting implementation method, in response to receiving an active request from a user, the method of sending a prompt message to the user can be, for example, a pop-up window, and the prompt message can be presented in text in the pop-up window. In addition, the pop-up window can also carry a selection control for the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0159] It is understandable that the above notification and the process of obtaining user authorization are merely illustrative and do not constitute a limitation on the implementation of the present disclosure. Other methods that meet the relevant laws and regulations may also be applied to the implementation of the present disclosure.
[0160] It is understood that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) shall comply with the requirements of the relevant laws and regulations. The data may include information, parameters and messages, such as flow switching indication information.
[0161] The above description is only a preferred embodiment of the present disclosure and an explanation of the technical principles used. Those skilled in the art should understand that the scope of disclosure involved in the present disclosure is not limited to the technical solutions formed by a specific combination of the above technical features, but should also cover other technical solutions formed by any combination of the above technical features or their equivalent features without departing from the above disclosed concept. For example, the above features are replaced with the technical features with similar functions disclosed in the present disclosure (but not limited to) by each other to form a technical solution.
[0162] In addition, although each operation is described in a specific order, this should not be understood as requiring these operations to be performed in the specific order shown or in a sequential order. Under certain circumstances, multitasking and parallel processing may be advantageous. Similarly, although some specific implementation details are included in the above discussion, these should not be interpreted as limiting the scope of the present disclosure. Some features described in the context of a separate embodiment can also be implemented in a single embodiment in combination. On the contrary, the various features described in the context of a single embodiment can also be implemented in multiple embodiments individually or in any suitable sub-combination mode.
[0163] Although the subject matter has been described in language specific to structural features and / or methodological logical actions, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. On the contrary, the specific features and actions described above are merely example forms of implementing the claims.
Claims
1. A method for determining live broadcast delay, characterized in that: include: Determine the user type corresponding to the user watching the live broadcast; Obtaining network parameters when the user watches the live broadcast; Determine, based on the user type and the network parameter, a delay parameter when the user watches the live broadcast, wherein the delay parameter is associated with a delay when the user watches the live broadcast; The delay parameter is sent to a multimedia server, and live broadcast data sent by the multimedia server based on the delay parameter is received.
2. The method according to claim 1, characterized in that The determining, based on the user type and the network parameter, a delay parameter when the user watches the live broadcast, includes: Based on the network parameters, determining a network quality level when the user watches the live broadcast; Based on the network quality level and the user type, a delay parameter when the user watches the live broadcast is determined.
3. The method according to claim 2, characterized in that The determining, based on the network quality level and the user type, a delay parameter when the user watches the live broadcast includes: If the network quality level is greater than or equal to a first threshold, and the user type includes a non-stuttering type user, setting the delay parameter to a first preset value; If the network parameter is less than the first threshold, or the user type includes a user of the lag type, then the delay parameter of the user when watching the live broadcast is determined according to the user type.
4. The method according to claim 3, characterized in that The determining, according to the user type, a delay parameter when the user watches the live broadcast includes: When the user type also includes an interactive type user, setting the delay parameter to a second preset value; When the user type also includes a non-interactive user, setting the delay parameter to a third preset value; The first preset value is smaller than the second preset value, and the second preset value is smaller than the third preset value.
5. The method according to any one of claims 1 to 4, characterized in that: Determine the user type corresponding to the user watching the live broadcast, including: Obtain the number of freezes and live broadcast interaction information of the user during the historical period; Based on the number of freezes, determining whether the user type is a freeze type user or a non-freeze type user; Based on the live broadcast interaction information, determine whether the user type is an interactive user or a non-interactive user.
6. The method according to claim 5, characterized in that The determining, based on the number of freeze times, whether the user type is a freeze type user or a non-freeze type user includes: If the number of freezes is greater than or equal to a second threshold, determining that the user type is a freeze type user; If the number of freezes is less than the second threshold, it is determined that the user type is a non-freezing type user.
7. The method according to claim 5, characterized in that Determining, based on the live broadcast interaction information, whether the user type is an interactive user or a non-interactive user includes: Based on the live broadcast interaction information, determining the interaction frequency of the user watching the live broadcast; If the interaction frequency is greater than or equal to a third threshold, determining the user type as an interactive type user; If the interaction frequency is less than the third threshold, the user type is determined as a non-interactive user.
8. A device for determining live broadcast delay, characterized in that: It includes a first determination module, an acquisition module, a second determination module, a sending module and a receiving module, wherein: The first determination module is used to determine the user type corresponding to the user watching the live broadcast; The acquisition module is used to obtain network parameters when the user watches the live broadcast; The second determination module is used to determine, based on the user type and the network parameter, a delay parameter when the user watches the live broadcast, wherein the delay parameter is associated with a delay when the user watches the live broadcast; The sending module is used to send the delay parameter to the multimedia server; The receiving module is used to receive the live broadcast data sent by the multimedia server based on the delay parameter.
9. A terminal device, characterized in that: include: Processor and memory; The memory stores computer-executable instructions; The processor executes the computer-executable instructions stored in the memory, so that the processor executes the method for determining the live broadcast delay as described in any one of claims 1-7.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions. When the processor executes the computer-executable instructions, the method for determining the live broadcast delay as described in any one of claims 1-7 is implemented.
Citation Information
Cited By
Live streaming media data low-delay transmission method
CN120186375A