Method and apparatus for sending multimedia resource, computer device and storage medium

CN116938898BActive Publication Date: 2026-10-27TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202210368044.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-04-08
Publication Date
2026-10-27
Estimated Expiration
2042-04-08

AI Technical Summary

Technical Problem

由于CDN是按照每天的峰值带宽计算成本,因此上述方法会导致CDN的带宽的成本升高

Benefits of technology

[0039]另一方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序被处理器执行时,实现上述各个方面或者各个方面的各种可选实现方式中提供的多媒体资源的发送方法。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116938898B_ABST
    Figure CN116938898B_ABST
Patent Text Reader

Abstract

The application provides a multimedia resource sending method and device, computer equipment and storage medium, belongs to the technical field of Internet, and can be applied to a vehicle-mounted scene.The method comprises the following steps: obtaining a historical average bandwidth of a content distribution network based on a resource acquisition request of at least one first terminal; obtaining at least one target resource from a plurality of multimedia resources based on the historical average bandwidth, the number of the at least one first terminal and the data volume of the plurality of multimedia resources, wherein the difference between the target bandwidth occupied by the at least one target resource when being sent and the historical average bandwidth is within a target difference range; and sending the at least one target resource to the at least one first terminal based on the content distribution network.The above technical solution can avoid the sudden increase of bandwidth peak value caused by sending too many multimedia resources by making the target bandwidth close to the historical average bandwidth, thereby effectively reducing the cost of bandwidth.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of Internet technology, and in particular to a method, apparatus, computer device and storage medium for transmitting multimedia resources. Background Technology

[0002] With the development of internet technology, terminals can request multimedia resources from CDNs (Content Delivery Networks). These multimedia resources can be images, videos, or text. Terminals can pre-cache these resources so users can view them. During peak CDN access periods, terminals request cached multimedia resources from the CDN, increasing the amount of multimedia resources sent by the CDN. The more multimedia resources the CDN sends, the more bandwidth it consumes. Since CDNs calculate costs based on daily peak bandwidth, this method leads to increased bandwidth costs for the CDN. Summary of the Invention

[0003] This application provides a method, apparatus, computer device, and storage medium for transmitting multimedia resources, which can control the number of target resources, avoid sending too many multimedia resources and causing a sudden increase in bandwidth peak, thereby effectively reducing bandwidth costs. The technical solution is as follows:

[0004] On the one hand, a method for sending multimedia resources is provided, the method comprising:

[0005] Based on resource acquisition requests from at least one first terminal, obtain the historical average bandwidth of the content delivery network;

[0006] Based on the historical average bandwidth, the number of at least one first terminal, and the data volume of various multimedia resources, at least one target resource is obtained from the various multimedia resources, and the difference between the target bandwidth occupied by the at least one target resource when it is sent and the historical average bandwidth is within the target difference range.

[0007] Based on the content delivery network, the at least one target resource is sent to the at least one first terminal respectively.

[0008] In some embodiments, the method further includes:

[0009] If the bandwidth difference between the historical average bandwidth and the target bandwidth is greater than the target bandwidth threshold, at least one second terminal is obtained, wherein the second terminal is a terminal that has not sent the resource acquisition request for a target time interval.

[0010] Based on the bandwidth difference and the data volume of the various multimedia resources, at least one third terminal is determined from the at least one second terminal;

[0011] Based on the content distribution network, the various multimedia resources are sent to the at least one third terminal.

[0012] In some embodiments, determining at least one third terminal from the at least one second terminal based on the bandwidth difference and the data volume of the various multimedia resources includes:

[0013] The ratio of the bandwidth difference to the data volume of the various multimedia resources is rounded down to obtain the sixth quantity;

[0014] From the at least one second terminal, a sixth number of third terminals are determined.

[0015] On the other hand, a multimedia resource transmission device is provided, the device comprising:

[0016] The first acquisition module is used to acquire the historical average bandwidth of the content delivery network based on resource acquisition requests from at least one first terminal.

[0017] The second acquisition module is used to acquire at least one target resource from the various multimedia resources based on the historical average bandwidth, the number of at least one first terminal, and the data volume of various multimedia resources, wherein the difference between the target bandwidth occupied by the at least one target resource when it is sent and the historical average bandwidth is within the target difference range.

[0018] The sending module is configured to send the at least one target resource to the at least one first terminal based on the content distribution network.

[0019] In some embodiments, the second acquisition module includes:

[0020] The construction unit is configured to construct a first objective function based on the historical average bandwidth, the number of at least one first terminal, the data volume of the various multimedia resources, the first quantity, the second quantity, and the number of virtual resources obtained by sending each multimedia resource. The first quantity is the number of multimedia resources currently displayed among the multimedia resources sent by the content delivery network, and the second quantity is the total number of the various multimedia resources.

[0021] An optimization unit is configured to optimize the first objective function with the goal of minimizing the difference between the historical average bandwidth and the target bandwidth, and to determine at least one target resource type. The target bandwidth is positively correlated with the number of the at least one first terminal, the amount of data of multimedia resources belonging to the target resource type, and the number of the target resource types.

[0022] The acquisition unit is configured to acquire, from the plurality of multimedia resources, at least one target resource belonging to the at least one target resource type.

[0023] In some embodiments, the second acquisition module includes:

[0024] The construction unit is configured to construct a first objective function based on the historical average bandwidth, the number of at least one first terminal, the data volume of the various multimedia resources, the first quantity, the second quantity, and the number of virtual resources obtained by sending each multimedia resource. The first quantity is the number of multimedia resources currently displayed among the multimedia resources sent by the content delivery network, and the second quantity is the total number of the various multimedia resources.

[0025] The construction unit is further configured to construct a second objective function based on the historical average bandwidth, the number of at least one first terminal, the data volume of the various multimedia resources, the first quantity, the second quantity, the number of virtual resources obtained by sending each multimedia resource, and a third quantity, wherein the third quantity is the number of virtual resources consumed per unit bandwidth.

[0026] An optimization unit is configured to jointly optimize the first objective function and the second objective function, with the minimum difference between the historical average bandwidth and the target bandwidth as the optimization objective of the first objective function and the maximum function value of the second objective function as the optimization objective of the second objective function, to determine at least one target resource type. The target bandwidth is positively correlated with the number of the at least one first terminal, the amount of data of multimedia resources belonging to the target resource type, and the number of target resource types.

[0027] The acquisition unit is configured to acquire, from the plurality of multimedia resources, at least one target resource belonging to the at least one target resource type.

[0028] In some embodiments, the construction unit is configured to determine a fourth quantity based on the historical average bandwidth, the number of the at least one first terminal, the data volume of the various multimedia resources, the first quantity, the second quantity, and the number of virtual resources obtained by sending each multimedia resource, wherein the fourth quantity is the number of virtual resources obtained by sending multimedia resources; determine a fifth quantity based on the historical average bandwidth, the number of the at least one first terminal, the data volume of the various multimedia resources, the first quantity, the second quantity, the number of virtual resources obtained by sending each multimedia resource, and the third quantity, wherein the fifth quantity is the number of virtual resources consumed by sending multimedia resources; and construct a second objective function based on the fourth quantity and the fifth quantity, wherein the function value of the second objective function is the difference between the fourth quantity and the fifth quantity.

[0029] In some embodiments, the various multimedia resources are sorted according to the number of virtual resources acquired after transmission;

[0030] The acquisition unit is used to determine at least one target resource type that ranks first from the multiple resource types to which the various media resources belong.

[0031] In some embodiments, the first acquisition module is configured to acquire the sending time of the resource acquisition request of the at least one first terminal; determine a historical time period based on the sending time, wherein the historical time period is the time period between the target time and the sending time; and determine the historical average bandwidth of the content delivery network based on the historical time period.

[0032] In some embodiments, the apparatus further includes:

[0033] The third acquisition module is used to acquire at least one second terminal when the bandwidth difference between the historical average bandwidth and the target bandwidth is greater than the target bandwidth threshold. The second terminal is a terminal that has not sent the resource acquisition request for a target time interval.

[0034] A determining module is configured to determine at least one third terminal from the at least one second terminal based on the bandwidth difference and the data volume of the various multimedia resources;

[0035] The sending module is also used to send the various multimedia resources to the at least one third terminal based on the content distribution network.

[0036] In some embodiments, the determining module is configured to round down the ratio of the bandwidth difference to the data volume of the various multimedia resources to obtain a sixth quantity; and determine a sixth quantity of third terminals from the at least one second terminal.

[0037] On the other hand, a computer device is provided, the computer device including a processor and a memory, the memory being used to store at least one computer program, the at least one computer program being loaded and executed by the processor to implement the multimedia resource transmission method in the embodiments of this application.

[0038] On the other hand, a computer-readable storage medium is provided, wherein at least one computer program is stored in the computer-readable storage medium, the at least one computer program being loaded and executed by a processor to implement the method for sending multimedia resources as described in the embodiments of this application.

[0039] On the other hand, a computer program product is provided, which includes a computer program that, when executed by a processor, implements the method for transmitting multimedia resources provided in various alternative implementations of the above aspects or aspects.

[0040] The solution provided in this application determines at least one target resource based on historical average bandwidth, the number of at least one first terminal, and the data volume of various multimedia resources. By controlling the number of target resources, the difference between the target bandwidth occupied when sending the at least one target resource and the historical average bandwidth is within the target difference range, thereby avoiding the sudden increase in bandwidth peak caused by sending too many multimedia resources, and thus effectively reducing bandwidth costs. Attached Figure Description

[0041] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0042] Figure 1 This is an implementation environment for a multimedia resource transmission method provided in the embodiments of this application;

[0043] Figure 2 This is a flowchart of a method for sending multimedia resources according to an embodiment of this application;

[0044] Figure 3 This is a flowchart of another method for sending multimedia resources according to an embodiment of this application;

[0045] Figure 4 This is an interactive flowchart of a method for sending multimedia resources according to an embodiment of this application;

[0046] Figure 5This is a schematic diagram of the structure of a multimedia resource transmission device according to an embodiment of this application;

[0047] Figure 6 This is a schematic diagram of the structure of another multimedia resource transmission device according to an embodiment of this application;

[0048] Figure 7 This is a schematic diagram of the structure of a service terminal according to an embodiment of this application;

[0049] Figure 8 This is a schematic diagram of the structure of a server according to an embodiment of this application. Detailed Implementation

[0050] To make the objectives, technical solutions, and advantages of this application clearer, the embodiments of this application will be described in further detail below with reference to the accompanying drawings.

[0051] In this application, the terms "first," "second," etc., are used to distinguish identical or similar items with essentially the same function. It should be understood that there is no logical or temporal dependency between "first," "second," and "nth," nor are there any restrictions on quantity or execution order.

[0052] In this application, the term "at least one" means one or more, and "multiple" means two or more.

[0053] It should be noted that all information (including but not limited to terminal device information, target object information, etc.), data (including but not limited to data used for analysis, stored data, displayed data, etc.), and signals involved in this application have been authorized by the target object or fully authorized by all parties, and the collection, use, and processing of related data must comply with the relevant laws, regulations, and standards of the relevant countries and regions. For example, the multimedia resources involved in this application were all obtained under full authorization.

[0054] For ease of understanding, the terms used in this application are explained below.

[0055] CDN (Content Delivery Network): A network used for storing and distributing files, typically using virtual resources consumed based on daily peak bandwidth.

[0056] Ad response packets are data used to describe the ad's title, promotional copy, and the URL (Uniform Resource Locator) of the ad creative. They can be in JSON or XML format and are generally less than 10KB in size.

[0057] Advertising creatives refer to text, images, or videos that present the main content of an advertisement. Image sizes generally range from 100KB to 1MB, while video sizes generally range from 2MB to 10MB.

[0058] Ad preloading refers to downloading ad packets and ad creatives in advance, so that the ad can be displayed directly when the user views the ad, without having to initiate resource acquisition requests in real time, thus improving the user experience.

[0059] The multimedia resource transmission method provided in this application can be executed by a computer device. In some embodiments, the computer device is a service terminal or a server, and the service terminal is connected to the server for visually displaying data in the server. The following describes the implementation environment of the multimedia resource transmission method provided in this application, using the computer device as a server as an example. Figure 1 This is a schematic diagram illustrating the implementation environment of a multimedia resource transmission method according to an embodiment of this application. See also... Figure 1 The implementation environment includes a terminal 101 and a server 102. The terminal 101 and the server 102 can be connected directly or indirectly via wired or wireless communication, and this embodiment of the application does not limit this.

[0060] Those skilled in the art will understand that the above Figure 1 The number of terminals shown can be more or less. For example, the one mentioned above. Figure 1 The terminal shown can be only one, or as described above. Figure 1 The terminals shown are in the dozens, hundreds, or even more quantities. This application's embodiments... Figure 1 The number and type of terminals shown are not limited.

[0061] In some embodiments, terminal 101 may be a smartphone, tablet computer, laptop computer, desktop computer, smart speaker, smartwatch, smart voice interaction device, smart home appliance, in-vehicle terminal, etc., but is not limited thereto. Terminal 101 has an application installed and running, which may be a multimedia application, a social application, or a shopping application, etc., and this application embodiment does not impose any limitations on this.

[0062] In some embodiments, server 102 can be an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. Server 102 is used to provide background services for applications supporting virtual scenarios. In some embodiments, server 102 undertakes the main computing work, and terminal 101 undertakes the secondary computing work; or, server 102 undertakes the secondary computing work, and terminal 101 undertakes the main computing work; or, server 102 and terminal 101 collaborate on computing using a distributed computing architecture.

[0063] Taking a multimedia application installed on terminal 101 as an example, this multimedia application can display multimedia resources. Terminal 101 can obtain at least one multimedia resource from server 102 and display it. This multimedia resource is used to display promotional information when the terminal plays videos, images, audio, or displays text, such as video advertisements, audio advertisements, or text advertisements; this embodiment does not impose limitations on this. In response to launching the multimedia application, terminal 101 can send an advertisement retrieval request to server 102. Based on this request, server 102 can retrieve at least one advertisement from a variety of advertisements and send it to terminal 101 for display.

[0064] The following example uses a computer device as the service terminal. Terminal 101 can send a resource acquisition request to the server. The server forwards the resource acquisition request to an idle service terminal, which, based on the method provided in this application embodiment, sends at least one multimedia resource to terminal 101 via a content delivery network. Terminal 101 then displays the at least one multimedia resource.

[0065] Figure 2 This is a flowchart of a method for sending multimedia resources according to an embodiment of this application. See also... Figure 2 In this embodiment, the method of sending multimedia resources is described using the server as an example. The method includes the following steps:

[0066] 201. Based on a resource acquisition request from at least one first terminal, the server obtains the historical average bandwidth of the content delivery network.

[0067] In this embodiment of the application, the at least one first terminal is Figure 1The terminal shown is capable of obtaining multimedia resources from a server. The terminal can display multimedia resources upon application startup or during application usage. These multimedia resources are cached by the terminal. Once all cached multimedia resources have been displayed, the terminal can send a resource retrieval request to the server. This resource retrieval request is used to retrieve multimedia resources from the server. Upon receiving the resource retrieval request, the server can obtain the historical average bandwidth of the content delivery network. The more multimedia resources the content delivery network sends, the greater the bandwidth it occupies. The historical average bandwidth is the average bandwidth occupied by the content delivery network for sending multimedia resources over a historical period. This historical average bandwidth reflects the bandwidth occupied by the content delivery network when sending multimedia resources to the terminal.

[0068] 202. The server, based on the historical average bandwidth, the number of at least one first terminal, and the data volume of various multimedia resources, obtains at least one target resource from the various multimedia resources. The difference between the target bandwidth occupied by the at least one target resource and the historical average bandwidth when it is sent is within the target difference range.

[0069] In this embodiment, the data volume of the multimedia resource represents the bandwidth occupied when sending the multimedia resource. For any multimedia resource, the larger the data volume of the multimedia resource, the larger the bandwidth occupied when sending the multimedia resource; the smaller the data volume of the multimedia resource, the smaller the bandwidth occupied when sending the multimedia resource. The target bandwidth is positively correlated with the number of at least one target resource, the data volume of the target resource, and the number of at least one first terminal. In other words, since at least one target resource needs to be sent to each first terminal, the more target resources, the larger the data volume of the target resources, and the more first terminals, the larger the target bandwidth occupied by sending at least one target resource to the first terminal. The server can adjust the types of multimedia resources sent based on the historical average bandwidth to minimize the difference between the historical average bandwidth and the target bandwidth. At this time, the difference between the historical average bandwidth and the target bandwidth is within the target difference range.

[0070] 203. The server, based on a content delivery network, sends at least one target resource to at least one first terminal.

[0071] In this embodiment, the server can send the at least one target resource to the at least one terminal via a content delivery network. Upon receiving the at least one target resource, the at least one terminal can cache it locally. When the terminal plays video, image, audio, or displays text through an application, the terminal can directly display the cached target resource; or, when the application is launched, the terminal can directly display the cached target resource. This embodiment does not impose any limitations on this.

[0072] The solution provided in this application determines at least one target resource based on historical average bandwidth, the number of at least one first terminal, and the data volume of various multimedia resources. By controlling the number of target resources, the target bandwidth occupied when sending the at least one target resource is no more than the difference between the historical average bandwidth and the target difference range, thereby avoiding the sudden increase in bandwidth peak caused by sending too many multimedia resources, and thus effectively reducing bandwidth costs.

[0073] The above Figure 2 The diagram illustrates the basic process of this application. The solution provided in this application will be further elaborated below based on an application scenario in which the multimedia resource requested by the first terminal is an advertisement, such as a video advertisement, an image advertisement, or a text advertisement. Figure 3 This is a flowchart of another method for sending multimedia resources according to an embodiment of this application, see [link to flowchart]. Figure 3 In this embodiment, the method of sending multimedia resources is described using the server as an example. The method includes the following steps:

[0074] 301. In response to a resource acquisition request from at least one first terminal, the server acquires the historical average bandwidth of the content delivery network.

[0075] In this embodiment, an application is installed on the at least one terminal. For any terminal, the terminal can send a resource acquisition request to the server when the application starts or during application usage; this embodiment does not impose any limitations on this. Based on the resource acquisition request, the server can send multimedia resources to the at least one terminal through the content delivery network. Upon receiving a resource acquisition request from at least one first terminal, the server can obtain the average bandwidth occupied by the content delivery network for sending multimedia resources over a historical time period.

[0076] In some embodiments, the server can determine a historical time period based on the sending time of the resource acquisition request, thereby obtaining the historical average bandwidth of the content delivery network within that historical time period. Correspondingly, the server obtains the sending time of the resource acquisition request from at least one first terminal. Then, the server determines the historical time period based on the sending time. Then, the server determines the historical average bandwidth of the content delivery network based on the historical time period. The historical time period is the time period between the target time and the sending time. The target time can be a time before the sending time and differing from the sending time by a preset interval, the start time of the current day, or a preset start time, etc., and this application embodiment does not impose any limitations on this. The solution provided by this application embodiment, by obtaining the sending time of the resource acquisition request, can determine the historical time period between the sending time and the target time based on the sending time and the target time, thereby obtaining the average bandwidth of the content delivery network within that historical time period. The resulting historical average bandwidth can more accurately characterize the bandwidth usage of the content delivery network for sending multimedia resources.

[0077] Specifically, the server can obtain multiple historical bandwidths of the content delivery network within a given historical time period, and then calculate the average bandwidth of these multiple historical bandwidths as the historical average bandwidth for that historical time period. Alternatively, the server can obtain a historical bandwidth curve of the content delivery network within the given historical time period based on these multiple historical bandwidths, and then integrate the historical bandwidth curve to obtain the historical average bandwidth for that historical time period.

[0078] 302. The server constructs a first objective function based on historical average bandwidth, the number of at least one first terminal, and the data volume of various multimedia resources.

[0079] In this embodiment, the data volume of a multimedia resource can represent the bandwidth occupied when sending the multimedia resource. The data volume of the various multimedia resources includes multiple different types of multimedia resources, and the data volumes of different types of multimedia resources can be the same or different. The server can construct a first objective function based on the data volume of each multimedia resource in the various multimedia resources, or based on the average data volume of the various multimedia resources. This application does not impose any limitations on this.

[0080] It should be noted that the bandwidth cost of a content delivery network is positively correlated with peak bandwidth, while the bandwidth consumed in sending multimedia resources is positively correlated with the number of at least one first terminal and the data volume of various multimedia resources. Therefore, to avoid sending too many multimedia resources leading to increased peak bandwidth and excessive costs, the server can construct a first objective function. The function value of this first objective function represents the difference between the historical average bandwidth and the target bandwidth. This target bandwidth is the real-time bandwidth consumed when sending multimedia resources. By optimizing this first objective function, the server can control the difference between the target bandwidth and the historical average bandwidth within a target range, thereby controlling bandwidth costs.

[0081] In some embodiments, the server can construct a first objective function based on the average data volume of various multimedia resources. Accordingly, the server constructs the first objective function based on historical average bandwidth, the number of at least one first terminal, the average data volume, and the target quantity. Here, the average data volume is the mean of the data volumes of the various multimedia resources, and the target quantity is a variable in the first objective function, representing the quantity of at least one target resource to be determined. The target quantity is inversely correlated with the average data volume; that is, without affecting the peak bandwidth, the larger the average data volume, the larger the target quantity of multimedia resources sent to each first terminal; conversely, the smaller the average data volume, the larger the target quantity of multimedia resources sent to each first terminal. The solution provided in this application, by constructing the first objective function based on the average data volume of various multimedia resources, can ignore the influence of the data volume of different types of multimedia resources, thereby simplifying the calculation process and improving calculation efficiency.

[0082] In some embodiments, the server can construct a first objective function using the following formula 1.

[0083] Formula 1:

[0084] Δ1=cn*w*s

[0085] Where Δ1 represents the first objective function, c represents the historical average bandwidth, n represents the number of targets, w represents the number of at least one first terminal, and s represents the average data volume of multimedia resources.

[0086] It should be noted that after constructing the first objective function, the server can optimize it to minimize its function value, thereby determining the optimal solution for the target quantity. Accordingly, the server optimizes the first objective function with the goal of minimizing the difference between the historical average bandwidth and the target bandwidth, obtaining the optimal solution for the target quantity. Here, the target bandwidth is the bandwidth occupied by the target resources for sending the target quantity, and this target bandwidth is positively correlated with the number of at least one first terminal, the average data volume, and the target quantity. Based on the obtained target quantity, the server can obtain the target quantity of target resources from various multimedia resources, where these target resources belong to different resource types, and the target quantity is a positive integer not less than 1. At this point, the server does not need to execute steps 303-305 again, but directly executes step 306.

[0087] In some embodiments, the server can construct a first objective function based on the data volume of each multimedia resource among multiple multimedia resources. Since the number of multimedia resources of different resource types can be the same or different, the aforementioned target quantity, i.e., the number of resource types of the target resource, is associated with multiple parameters such as historical average bandwidth, the data volume of each multimedia resource, the first quantity, the second quantity, and the number of virtual resources obtained by sending each multimedia resource. Here, the first quantity represents the number of multimedia resources currently displayed among those sent by the content delivery network, and the second quantity represents the total number of multiple multimedia resources.

[0088] In some embodiments, the server can determine the target quantity, that is, the number of resource types of the target resource, using the following formula 2.

[0089] Formula 2:

[0090] n = F(m,c,k,s,e)

[0091] Where n represents the target quantity, F() represents the weighting function, c represents the historical average bandwidth, m represents the first quantity, k represents the second quantity, s represents the data volume of each multimedia resource, and e represents the number of virtual resources obtained by sending each multimedia resource. It should be noted that n is positively correlated with m, c, k, and e, and negatively correlated with s. This application does not limit F(). Optionally, different parameters in F() correspond to weight parameters, and the values ​​of the weight parameters are determined based on the resource type to which the media resource belongs.

[0092] The server can replace 'n' in Formula 1 with Formula 2 to construct the first objective function. Accordingly, the server can construct the first objective function based on historical average bandwidth, the number of at least one first terminal, the data volume of various multimedia resources, a first quantity, a second quantity, and the number of virtual resources obtained by sending each type of multimedia resource. Here, the first quantity is the number of multimedia resources currently displayed among those sent by the content delivery network, and the second quantity is the total number of various multimedia resources. The solution provided in this application, by constructing the first objective function based on the data volume of each multimedia resource, considers the impact of the data volume of different types of multimedia resources on the target bandwidth, thereby improving the accuracy of the determined target bandwidth.

[0093] In some embodiments, the server can construct the first objective function using the following formula 3.

[0094] Formula 3:

[0095] Δ1=CF(m,c,k,s,e)*w*s

[0096] Where Δ1 represents the first objective function, c represents the historical average bandwidth, m represents the first quantity, k represents the second quantity, s represents the data volume of each multimedia resource, e represents the number of virtual resources obtained by sending each multimedia resource, w represents the number of at least one first terminal, F(m,c,k,s,e) is obtained from multiple parameters based on the weight coefficients corresponding to different resource types, and is used to represent the number of multimedia resources sent to the terminal, and F(m,c,k,s,e)*w*s represents the target bandwidth.

[0097] It should be noted that after the server constructs the first objective function, it can directly optimize the first objective function to minimize its function value, thereby determining at least one target resource type. Correspondingly, the server can optimize the first objective function with the goal of minimizing the difference between the historical average bandwidth and the target bandwidth, thus determining at least one target resource type. The target bandwidth is positively correlated with the number of at least one first terminal, the amount of data in multimedia resources belonging to the target resource type, and the number of target resource types. The number of target resource types is inversely correlated with the amount of data in multimedia resources belonging to the target type. In other words, the smaller the amount of data in multimedia resources belonging to the target resource type, the more target resource types there are; the larger the amount of data in multimedia resources belonging to the target resource type, the fewer target resource types there are. Based on obtaining at least one target resource type, the server can extract at least one target resource belonging to at least one target resource type from multiple multimedia resources. At this point, the server does not need to execute steps 303-305, but directly executes step 306.

[0098] It should be noted that the at least one target resource type has multiple combinations of resource types, and the number of resource types in different combinations is inversely correlated with the amount of multimedia resources in the combination.

[0099] For example, let's take the multimedia resource as an advertisement as an example. The server can determine the sending time t of the resource acquisition request based on at least one first terminal's resource acquisition request, and obtain information such as the historical average bandwidth c of the content delivery network over a historical period, the total number k of advertisements to be placed by the advertiser, the number m of advertisements already displayed among the placed advertisements, the size s of the advertisement creative, the advertisement price e, and the number w of terminals sending the advertisement acquisition request. At time t, c, k, and m are constants, while s and e are related to the advertisement type. For example, the advertisement creative size for advertisement type 1 is s1, and the advertisement price is e1; the advertisement creative size for advertisement type 2 is s2, and the advertisement price is e2; the advertisement creative size for advertisement type N is s... N The advertising price is e N At time t, without affecting the peak bandwidth, there are multiple combinations of ad types that can be sent, such as sending a large number of ad types with small ad creative sizes, or a small number of ad types with large ad creative sizes, or a combination of both ad types with large and small ad creative sizes.

[0100] In some embodiments, the server can sort various multimedia resources according to the number of virtual resources acquired after transmission. Then, when the combination of different resource types has little difference in target bandwidth, at least one target resource type with a higher ranking is determined from the multiple resource types to which the various media resources belong. By determining at least one target resource type with a higher ranking, multimedia resources with higher returns can be sent preferentially, thereby improving the returns of sending multimedia resources.

[0101] It should be noted that if the number of virtual resources obtained from sending each type of multimedia resource changes, the order of the various multimedia resources can also change. The solution provided in this application, by altering the number of virtual resources obtained from sending each type of multimedia resource, changes the order of the various multimedia resources, thereby enabling the sending of different multimedia resources while ensuring revenue. For example, advertisers can continuously adjust advertising prices according to their own needs.

[0102] 303. The server constructs a second objective function based on historical average bandwidth, the number of at least one first terminal, and the data volume of various multimedia resources.

[0103] In this embodiment, since the data volume of multimedia resources of different resource types can be the same or different, the number of virtual resources that can be obtained by sending multimedia resources of different resource types can also be the same or different. In order to obtain more virtual resources after deducting the bandwidth cost, the server can construct a second objective function, which represents the difference between the number of virtual resources obtained by sending multimedia resources and the number of virtual resources consumed. The server can construct the second objective function based on the data volume of each multimedia resource among multiple multimedia resources, or based on the average data volume of multiple multimedia resources; this application does not impose any restrictions on this. By optimizing the second objective function, the server can obtain more virtual resources without affecting the peak bandwidth, thereby improving the revenue from sending multimedia resources.

[0104] In some embodiments, the server can construct a second objective function based on the average data volume of various multimedia resources. Correspondingly, the server can construct the second objective function based on the average virtual resource volume, the number of at least one first terminal, the target number, a third number, and the average data volume. Here, the average virtual resource volume is the average number of virtual resources acquired by sending various multimedia resources. The target number is a variable in the second objective function, representing the number of at least one target resource to be determined. The third number is the number of virtual resources consumed per unit of bandwidth. The solution provided in this application, by constructing the second objective function based on the average data volume and average virtual resource volume of various multimedia resources, can ignore the influence of the data volume of different types of multimedia resources and the number of acquired virtual resources, thereby simplifying the calculation process and improving calculation efficiency.

[0105] In some embodiments, the server can construct a second objective function using the following formula four.

[0106] Formula 4:

[0107] Δ2=n*w*en*w*s*u

[0108] Where Δ2 represents the second objective function, n represents the target quantity, w represents the number of at least one first terminal, e represents the average virtual resource quantity, u represents the third quantity, and s represents the average data quantity of multimedia resources. n*w*e represents the number of virtual resources acquired by sending the target quantity of multimedia resources, and n*w*s*u represents the number of virtual resources consumed by sending the target quantity of multimedia resources.

[0109] In some embodiments, the server can construct a second objective function based on the data volume of each multimedia resource and the number of virtual resources obtained by sending each multimedia resource. The server can replace 'n' in the second objective function using Formula 2 to construct the second objective function. Correspondingly, the server can construct the second objective function based on historical average bandwidth, the number of at least one first terminal, the data volume of the various multimedia resources, a first quantity, a second quantity, the number of virtual resources obtained by sending each multimedia resource, and a third quantity. The solution provided in this application, by constructing the second objective function based on the data volume of each multimedia resource and the number of virtual resources obtained by sending each multimedia resource, can consider the impact of the data volume of different types of multimedia resources on cost, and consider the impact of the number of virtual resources obtained by sending each multimedia resource on revenue, thereby improving the accuracy of the determined costs and revenues, and thus improving the accuracy of the net revenue.

[0110] In some embodiments, the server can construct a second objective function using the following formula five.

[0111] Formula 5:

[0112] Δ2=F(m,c,k,s,e)*w*eF(m,c,k,s,e)*w*s*u

[0113] Where Δ2 represents the second objective function, c represents the historical average bandwidth, m represents the first quantity, k represents the second quantity, s represents the data volume of each multimedia resource, e represents the number of virtual resources obtained by sending each multimedia resource, F(m,c,k,s,e) represents the number of multimedia resources sent to the terminal, w represents the number of at least one first terminal, and u represents the third quantity.

[0114] In some embodiments, the server constructs a second objective function by considering the number of virtual resources acquired and consumed when sending multimedia resources. Accordingly, the process of constructing the second objective function is as follows: the server determines a fourth quantity based on historical average bandwidth, the number of at least one first terminal, the data volume of various multimedia resources, a first quantity, a second quantity, and the number of virtual resources acquired when sending each type of multimedia resource. Then, the server determines a fifth quantity based on historical average bandwidth, the number of at least one first terminal, the data volume of various multimedia resources, a first quantity, a second quantity, the number of virtual resources acquired when sending each type of multimedia resource, and a third quantity. The server then constructs a second objective function based on the fourth and fifth quantities, where the function value is the difference between the fourth and fifth quantities. Here, the fourth quantity represents the number of virtual resources acquired when sending multimedia resources; the fifth quantity represents the number of virtual resources consumed when sending multimedia resources. In Formula 5, F(m,c,k,s,e)*w*e represents the fourth quantity, and F(m,c,k,s,e)*w*s*u represents the fifth quantity.

[0115] It should be noted that the server can combine different resource types to achieve different values ​​for the second objective function, with a larger value indicating greater net profit. However, since the value of the second objective function is based on historical average bandwidth, there are situations where the real-time bandwidth far exceeds the historical average bandwidth when the second objective function reaches its maximum value. In this case, the cost per unit bandwidth increases, rendering the maximum value of the second objective function meaningless. Therefore, it is necessary to jointly optimize the first and second objective functions.

[0116] For example, let's take the multimedia resource as an advertisement as an example. Based on a resource acquisition request from at least one first terminal, the server can determine the sending time 't' of the resource acquisition request, and obtain information such as the historical average bandwidth 'c' of the content delivery network over a historical period, the total number of advertisements the advertiser will place 'k', the number of advertisements already displayed 'm', the size of the advertisement creative 's', the advertisement price 'e', ​​the number of terminals sending the advertisement acquisition request 'w', and the bandwidth price 'u'. At this point, the cost of sending the advertisement is F(m,c,k,s,e)*w*s*u, and the revenue from sending the advertisement is F(m,c,k,s,e)*w*e. Therefore, the net revenue from sending the advertisement is F(m,c,k,s,e)*w*eF(m,c,k,s,e)*w*s*u, which is equivalent to F(m,c,k,s,e)*w*(es*u). The net revenue of an advertisement is positively correlated with the revenue of the advertisement and inversely correlated with the cost of the advertisement. The larger the difference between the revenue and the cost of the advertisement, the larger the net revenue of the advertisement. Where, at time t, c, k, m, and u are constants, while s and e are related to the type of advertisement. For example, the size of the advertising material for advertisement type 1 is s1, and the advertising price is e1; the size of the advertising material for advertisement type 2 is s2, and the advertising price is e2; the size of the advertising material for advertisement type N is s... N The advertising price is e N Therefore, at time t, there are multiple combinations of ad types that can be sent without affecting peak bandwidth. To increase net ad revenue, the server can send ads with smaller ad creative sizes and higher ad prices.

[0117] 304. The server performs joint optimization on the first objective function and the second objective function to determine at least one type of objective resource.

[0118] In this embodiment, the server can jointly optimize a first objective function and a second objective function. The optimization objective is to minimize the function value of the first objective function and maximize the function value of the second objective function, thereby determining at least one type of target resource. The server can optimize the first objective function by minimizing the difference between the historical average bandwidth and the target bandwidth, and optimize the second objective function by maximizing its function value, thereby determining at least one type of target resource. The solution provided in this embodiment, by jointly optimizing the first and second objective functions, ensures that the target bandwidth occupied by sending the multimedia resource is close to the historical average bandwidth, and that the function value of the second objective function is maximized. This not only avoids sending too much multimedia resource causing a sudden increase in bandwidth peaks, effectively reducing bandwidth costs, but also maximizes the acquisition of virtual resources.

[0119] It should be noted that the server can combine different resource types to make the first objective function and the second objective function take different values. Furthermore, the server can sort various multimedia resources according to the number of virtual resources acquired after transmission. From the multiple resource types belonging to various media resources, the server can determine at least one target resource type that ranks highest, so that the function value of the first objective function is smaller while the function value of the second objective function is larger.

[0120] The number of virtual resources obtained from sending each type of multimedia resource can vary, and therefore the order of these multimedia resources can also change. The solution provided in this application alters the order of the multimedia resources by changing the number of virtual resources obtained from sending each type, thus enabling the sending of different multimedia resources while ensuring revenue. For example, advertisers can continuously adjust advertising prices according to their needs.

[0121] 305. The server obtains at least one target resource belonging to the at least one target resource type from a variety of multimedia resources.

[0122] In this embodiment of the application, the server is able to obtain at least one target resource belonging to at least one target resource type from a variety of multimedia resources based on at least one target resource type.

[0123] It should be noted that these multimedia resources have a lifecycle, and the server can obtain the expiration time of the multimedia resources. If the duration of a multimedia resource is not less than the expiration time, the server can delete the multimedia resource, that is, stop sending the multimedia resource, thereby avoiding the terminal from displaying the same multimedia resource too often.

[0124] 306. The server, based on a content delivery network, sends at least one target resource to at least one first terminal.

[0125] In this embodiment, the server can send the at least one target resource to at least one first terminal based on a content delivery network. The at least one first terminal can then display the at least one target resource.

[0126] For example, the multimedia resource is an advertisement. At least one first terminal can display the advertisement using an advertisement pre-loading method. For any terminal, the terminal can send an advertisement retrieval request to the server in advance. The server can send the advertisement to the terminal based on the advertisement retrieval request. The advertisement includes an advertisement response packet and advertisement creative. The terminal can cache the advertisement and download the advertisement response packet and advertisement creative. If the advertisement response packet and advertisement creative exist locally on the terminal, the terminal does not need to download the advertisement response packet and advertisement creative.

[0127] It should be noted that if the difference between the target bandwidth and the historical average bandwidth is large, meaning there is idle bandwidth, the server can send multimedia resources to terminals that have not sent resource acquisition requests for a long time. Correspondingly, if the difference between the historical average bandwidth and the target bandwidth is greater than the target bandwidth threshold, the server can acquire at least one second terminal. Then, based on the bandwidth difference and the data volume of various multimedia resources, the server can determine at least one third terminal from the at least one second terminal. Then, the server can send various multimedia resources to the at least one third terminal based on the content delivery network. Here, the second terminal is a terminal that has not sent a resource acquisition request for a target duration. Specifically, the server can determine a subset of terminals from those that have not sent resource acquisition requests using the bandwidth difference and the data volume of various multimedia resources, and then send the various multimedia resources to these terminals. Correspondingly, the server rounds down the ratio of the bandwidth difference to the data volume of the various multimedia resources to obtain a sixth number; from the at least one second terminal, it determines the sixth number of third terminals. The solution provided in this application embodiment can send multimedia resources to terminals that have not sent resource acquisition requests for a long time when the real-time bandwidth when sending at least one target resource is much less than the historical average bandwidth. This allows multimedia resources to be sent to more terminals while controlling bandwidth costs, thereby improving bandwidth utilization and maximizing the acquisition of virtual resources.

[0128] In some embodiments, the server can determine a subset of terminals from those that have not sent resource acquisition requests by using the bandwidth difference and the data volume of the newly added multimedia resources, and then send the various multimedia resources to those terminals. Correspondingly, in response to updates to the various multimedia resources, the server acquires the newly added multimedia resources. Then, the server rounds down the ratio of the bandwidth difference to the data volume of the newly added multimedia resources to obtain a sixth quantity; and determines the sixth quantity of third terminals from at least one second terminal. The solution provided by this application embodiment can send new multimedia resources to terminals that have not sent resource acquisition requests for a long time, even when the real-time bandwidth when sending at least one target resource is much lower than the historical average bandwidth. This allows multimedia resources to be sent to more terminals while controlling bandwidth costs, thereby improving bandwidth utilization and maximizing the acquisition of virtual resources.

[0129] It should be noted that this embodiment of the application illustrates the situation where the content delivery network (CDN) does not send resources other than multimedia resources. If the CDN also sends other resources, there may be a significant difference between the target bandwidth and the historical average bandwidth. In this case, the target bandwidth includes both the bandwidth used to send at least one target resource and the bandwidth used to send other resources. The server can send multimedia resources to terminals that have not sent resource acquisition requests for a long time based on the CDN. Accordingly, if the difference between the historical average bandwidth and the target bandwidth is greater than the target bandwidth threshold, the server can acquire at least one second terminal. Then, based on the bandwidth difference and the data volume of various multimedia resources, the server can determine at least one third terminal from the at least one second terminal. Then, the server can send various multimedia resources to the at least one third terminal based on the CDN. Here, the second terminal is the terminal that has not sent a resource acquisition request for a target duration.

[0130] For example, let's take multimedia resources as advertisements and other resources as TV dramas as an example. The historical average bandwidth of the content delivery network is 320Gbps, the target bandwidth used to send multiple multimedia resources is 200Gbps, and the target bandwidth threshold is 10Gbps. At this point, the difference between the historical average bandwidth and the target bandwidth is 120Gbps, which is greater than the target bandwidth threshold. The data volume of the 10 advertisements is 0.005Gbps. At this time, the server can send these 10 advertisements to 24,000 terminals.

[0131] To better understand this solution, the solution of this application will be described again below. Figure 4 This is an interactive flowchart of a method for sending multimedia resources according to an embodiment of this application. See also... Figure 4 The server and terminal implement the method for sending the multimedia resource through steps 401-406. Step 401: If the multimedia resource is not present in the terminal's local cache, the terminal sends a resource acquisition request to the server. Step 402: Based on the resource acquisition request, the server acquires various information, including historical average bandwidth, the number of at least one first terminal, the data volume of various multimedia resources, the number of multimedia resources currently displayed among those sent by the content delivery network, the total number of various multimedia resources, and the number of virtual resources obtained by sending each type of multimedia resource. Step 403: Based on this information, the server calculates the target quantity of at least one target resource to be sent. Step 404: The server sends the target quantity of the target resource to the terminal. Step 405: The terminal caches the at least one target resource locally. Step 406: For any target resource, in response to the target resource being displayed, the terminal deletes the target resource from its local cache.

[0132] The solution provided in this application determines at least one target resource based on historical average bandwidth, the number of at least one first terminal, and the data volume of various multimedia resources. By controlling the number of target resources, the difference between the bandwidth occupied when sending the at least one target resource and the historical average bandwidth does not exceed the target difference range, thereby avoiding the sudden increase in bandwidth peak caused by sending too many multimedia resources, and thus effectively reducing bandwidth costs.

[0133] Figure 5 This is a schematic diagram of a multimedia resource transmission apparatus according to an embodiment of this application. This apparatus is used to execute the steps of the multimedia resource transmission method described above, see below. Figure 5 The multimedia resource sending device includes: a first acquisition module 501, a second acquisition module 502, and a sending module 503.

[0134] The first acquisition module 501 is used to acquire the historical average bandwidth of the content delivery network based on a resource acquisition request from at least one first terminal.

[0135] The second acquisition module 502 is used to acquire at least one target resource from multiple multimedia resources based on the historical average bandwidth, the number of at least one first terminal, and the data volume of multiple multimedia resources, wherein the difference between the target bandwidth occupied by the at least one target resource and the historical average bandwidth when it is sent is within the target difference range.

[0136] The sending module 503 is used to send at least one target resource to at least one first terminal based on the content delivery network.

[0137] In some embodiments, Figure 6 This is a schematic diagram of another multimedia resource transmission device according to an embodiment of this application. See also... Figure 6 The second acquisition module 502 includes:

[0138] The construction unit 601 is used to construct a first objective function based on historical average bandwidth, the number of at least one first terminal, the data volume of multiple multimedia resources, a first quantity, a second quantity, and the number of virtual resources obtained by sending each multimedia resource. The first quantity is the number of multimedia resources that have been displayed among the multimedia resources sent by the content delivery network, and the second quantity is the total number of multiple multimedia resources.

[0139] The optimization unit 602 is used to optimize the first objective function with the goal of minimizing the difference between the historical average bandwidth and the target bandwidth, and to determine at least one target resource type. The target bandwidth is positively correlated with the number of at least one first terminal, the amount of data of multimedia resources belonging to the target resource type, and the number of target resource types.

[0140] The acquisition unit 603 is used to acquire at least one target resource belonging to at least one target resource type from a variety of multimedia resources.

[0141] In some embodiments, the second acquisition module 502 includes:

[0142] The construction unit 601 is used to construct a first objective function based on historical average bandwidth, the number of at least one first terminal, the data volume of multiple multimedia resources, a first quantity, a second quantity, and the number of virtual resources obtained by sending each multimedia resource. The first quantity is the number of multimedia resources currently displayed among the multimedia resources sent by the content delivery network, and the second quantity is the total number of multiple multimedia resources.

[0143] The construction unit 601 is also used to construct a second objective function based on the historical average bandwidth, the number of at least one first terminal, the data volume of multiple multimedia resources, the first quantity, the second quantity, the number of virtual resources obtained by sending each multimedia resource, and the third quantity, where the third quantity is the number of virtual resources consumed per unit bandwidth.

[0144] The optimization unit 602 is used to optimize the first objective function and the second objective function by taking the minimum difference between the historical average bandwidth and the target bandwidth as the optimization objective of the first objective function and the maximum function value of the second objective function as the optimization objective of the second objective function, and to determine at least one target resource type. The target bandwidth is positively correlated with the number of at least one first terminal, the amount of data of multimedia resources belonging to the target resource type, and the number of target resource types.

[0145] The acquisition unit 603 is used to acquire at least one target resource belonging to at least one target resource type from a variety of multimedia resources.

[0146] In some embodiments, the construction unit 601 is configured to determine a fourth quantity based on historical average bandwidth, the number of at least one first terminal, the data volume of various multimedia resources, a first quantity, a second quantity, and the number of virtual resources obtained by sending each multimedia resource, wherein the fourth quantity is the number of virtual resources obtained by sending multimedia resources; determine a fifth quantity based on historical average bandwidth, the number of at least one first terminal, the data volume of various multimedia resources, a first quantity, a second quantity, the number of virtual resources obtained by sending each multimedia resource, and a third quantity, wherein the fifth quantity is the number of virtual resources consumed by sending multimedia resources; and construct a second objective function based on the fourth quantity and the fifth quantity, wherein the function value of the second objective function is the difference between the fourth quantity and the fifth quantity.

[0147] In some embodiments, multiple multimedia resources are sorted according to the number of virtual resources acquired after transmission;

[0148] The acquisition unit 603 is used to determine at least one target resource that ranks first from multiple resource categories belonging to multiple media resources.

[0149] In some embodiments, the first acquisition module 501 is configured to acquire the sending time of a resource acquisition request from at least one first terminal; determine a historical time period based on the sending time, the historical time period being the time period between the target time and the sending time; and determine the historical average bandwidth of the content delivery network based on the historical time period.

[0150] In some embodiments, the device further includes:

[0151] The third acquisition module 504 is used to acquire at least one second terminal when the bandwidth difference between the historical average bandwidth and the target bandwidth is greater than the target bandwidth threshold. The second terminal is a terminal that has not sent a resource acquisition request for a target time interval.

[0152] The determination module 505 is used to determine at least one third terminal from at least one second terminal based on the bandwidth difference and the amount of data from multiple multimedia resources.

[0153] The sending module 503 is also used to send multiple multimedia resources to at least one third terminal based on the content delivery network.

[0154] In some embodiments, the determining module 505 is used to round down the ratio of the bandwidth difference and the data volume of various multimedia resources to obtain a sixth quantity; and to determine the sixth quantity of third terminals from at least one second terminal.

[0155] The method provided in this application determines at least one target resource based on historical average bandwidth, the number of at least one first terminal, and the data volume of various multimedia resources. By controlling the number of target resources, the difference between the bandwidth occupied when sending the at least one target resource and the historical average bandwidth does not exceed the target difference range, thereby avoiding the sudden increase in bandwidth peak caused by sending too many multimedia resources, and thus effectively reducing bandwidth costs.

[0156] It should be noted that the multimedia resource sending device provided in the above embodiments is only illustrated by the division of the above functional modules when running the application. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. In addition, the multimedia resource sending device and the multimedia resource sending method embodiments provided in the above embodiments belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.

[0157] In the embodiments of this application, the computer device can be configured as a terminal or a server. When the computer device is configured as a terminal, the terminal can act as the execution subject to implement the technical solutions provided in the embodiments of this application. When the computer device is configured as a server, the server can act as the execution subject to implement the technical solutions provided in the embodiments of this application. Alternatively, the technical solutions provided in this application can be implemented through the interaction between the terminal and the server. The embodiments of this application do not limit this.

[0158] Figure 7 This is a schematic diagram of the structure of a service terminal 700 according to an embodiment of this application. Typically, the service terminal 700 includes a processor 701 and a memory 702.

[0159] Processor 701 may include one or more processing cores, such as a quad-core processor, an octa-core processor, etc. Processor 701 may be implemented using at least one hardware form selected from DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). Processor 701 may also include a main processor and a coprocessor. The main processor, also known as a CPU (Central Processing Unit), is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, processor 701 may integrate a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the screen. In some embodiments, processor 701 may also include an AI (Artificial Intelligence) processor, which is used to handle computational operations related to machine learning.

[0160] The memory 702 may include one or more computer-readable storage media, which may be non-transitory. The memory 702 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In some embodiments, the non-transitory computer-readable storage media in the memory 702 are used to store at least one computer program, which is executed by the processor 701 to implement the multimedia resource transmission method provided in the method embodiments of this application.

[0161] In some embodiments, the service terminal 700 may also optionally include a peripheral device interface 703 and at least one peripheral device. The processor 701, memory 702, and peripheral device interface 703 can be connected via a bus or signal line. Each peripheral device can be connected to the peripheral device interface 703 via a bus, signal line, or circuit board. The peripheral device includes at least one of a display screen 704 and a power supply 705.

[0162] Peripheral device interface 703 can be used to connect at least one I / O (Input / Output) related peripheral device to processor 701 and memory 702. In some embodiments, processor 701, memory 702 and peripheral device interface 703 are integrated on the same chip or circuit board; in some other embodiments, any one or two of processor 701, memory 702 and peripheral device interface 703 can be implemented on separate chips or circuit boards, which is not limited in this embodiment.

[0163] Display screen 704 is used to display a UI (User Interface). This UI may include graphics, text, icons, videos, and any combination thereof. When display screen 704 is a touch display screen, it also has the ability to collect touch signals on or above its surface. These touch signals can be input as control signals to processor 701 for processing. In this case, display screen 704 can also be used to provide virtual buttons and / or a virtual keyboard, also known as soft buttons and / or a soft keyboard. In some embodiments, there may be one display screen 704, disposed on the front panel of the service terminal 700; in other embodiments, there may be at least two display screens 704, disposed on different surfaces of the service terminal 700 or in a folded design; in still other embodiments, display screen 704 may be a flexible display screen, disposed on a curved or folded surface of the service terminal 700. Furthermore, display screen 704 may be configured as a non-rectangular irregular shape, i.e., a non-rectangular screen. Display screen 704 may be made of materials such as LCD (Liquid Crystal Display) or OLED (Organic Light-Emitting Diode).

[0164] Power supply 705 is used to power the various components in service terminal 700. Power supply 705 can be AC ​​power, DC power, a disposable battery, or a rechargeable battery. When power supply 705 includes a rechargeable battery, the rechargeable battery can be a wired rechargeable battery or a wireless rechargeable battery. A wired rechargeable battery is a battery that is charged via a wired line, and a wireless rechargeable battery is a battery that is charged via a wireless coil. The rechargeable battery can also be used to support fast charging technology.

[0165] Those skilled in the art will understand that Figure 7 The structure shown does not constitute a limitation on the service terminal 700, and may include more or fewer components than shown, or combine certain components, or use different component arrangements.

[0166] Figure 8This is a schematic diagram of a server structure according to an embodiment of this application. The server 800 can vary considerably due to different configurations or performance. It may include one or more Central Processing Units (CPUs) 801 and one or more memories 802. The memory 802 stores at least one computer program, which is loaded and executed by the processor 801 to implement the multimedia resource transmission method provided in the above-described method embodiments. Of course, the server may also have wired or wireless network interfaces, a keyboard, and input / output interfaces for input and output. The server may also include other components for implementing device functions, which will not be elaborated here.

[0167] This application also provides a computer-readable storage medium storing at least one computer program. This computer program is loaded and executed by a processor of a computer device to implement the operations performed by the computer device in the multimedia resource transmission method of the above embodiments. For example, the computer-readable storage medium may be a read-only memory (ROM), a random access memory (RAM), a compact disc read-only memory (CD-ROM), magnetic tape, floppy disk, and optical data storage device, etc.

[0168] This application also provides a computer program product or computer program, which includes computer program code stored in a computer-readable storage medium. A processor of a computer device reads the computer program code from the computer-readable storage medium and executes the computer program code, causing the computer device to perform the multimedia resource transmission method provided in the various optional implementations described above.

[0169] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware or by a program instructing related hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a disk, or an optical disk.

[0170] The above description is merely an optional embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.

Claims

1. A method for transmitting multimedia resources, characterized in that, The method includes: Based on resource acquisition requests from at least one first terminal, obtain the historical average bandwidth of the content delivery network; Based on the historical average bandwidth, the number of at least one first terminal, the data volume of various multimedia resources, the first quantity, the second quantity, and the number of virtual resources obtained by sending each multimedia resource, a first objective function is constructed. The first quantity is the number of multimedia resources currently displayed among the multimedia resources sent by the content delivery network, the second quantity is the total number of various multimedia resources, and the function value of the first objective function represents the difference between the historical average bandwidth and the target bandwidth. The target bandwidth is the real-time bandwidth occupied when sending multimedia resources. The first objective function is optimized with the goal of minimizing the difference between the historical average bandwidth and the target bandwidth, and at least one target resource type is determined. The target bandwidth is positively correlated with the number of the at least one first terminal, the amount of data of multimedia resources belonging to the target resource type, and the number of the target resource types. From the various multimedia resources, at least one target resource belonging to the at least one target resource type is obtained, and the difference between the target bandwidth occupied by the at least one target resource and the historical average bandwidth when it is sent is within the target difference range; Based on the content delivery network, the at least one target resource is sent to the at least one first terminal respectively.

2. The method according to claim 1, characterized in that, The method further includes: Based on the historical average bandwidth, the number of at least one first terminal, the data volume of the various multimedia resources, the first quantity, the second quantity, the number of virtual resources obtained by sending each multimedia resource, and the third quantity, a second objective function is constructed, wherein the third quantity is the number of virtual resources consumed per unit bandwidth. The optimization objective is to minimize the difference between the historical average bandwidth and the target bandwidth, thereby determining at least one type of target resource, including: The optimization objective of the first objective function is to minimize the difference between the historical average bandwidth and the target bandwidth, and the optimization objective of the second objective function is to maximize the function value of the second objective function. The first objective function and the second objective function are jointly optimized to determine at least one target resource type. The target bandwidth is positively correlated with the number of the at least one first terminal, the amount of data of multimedia resources belonging to the target resource type, and the number of target resource types.

3. The method according to claim 2, characterized in that, The second objective function is constructed based on the historical average bandwidth, the number of at least one first terminal, the data volume of the various multimedia resources, the first quantity, the second quantity, the number of virtual resources obtained by sending each multimedia resource, and the third quantity, including: Based on the historical average bandwidth, the number of the at least one first terminal, the data volume of the various multimedia resources, the first quantity, the second quantity, and the number of virtual resources obtained by sending each multimedia resource, a fourth quantity is determined, wherein the fourth quantity is the number of virtual resources obtained by sending multimedia resources; Based on the historical average bandwidth, the number of the at least one first terminal, the data volume of the various multimedia resources, the first quantity, the second quantity, the number of virtual resources obtained by sending each multimedia resource, and the third quantity, a fifth quantity is determined, wherein the fifth quantity is the number of virtual resources consumed by sending multimedia resources; The second objective function is constructed based on the fourth quantity and the fifth quantity, and the function value of the second objective function is the difference between the fourth quantity and the fifth quantity.

4. The method according to any one of claims 1-3, characterized in that, The various multimedia resources are sorted according to the number of virtual resources acquired after transmission; The determination of at least one target resource type includes: From the multiple resource categories to which the various multimedia resources belong, determine at least one target resource category that ranks first.

5. The method according to claim 1, characterized in that, The process of obtaining the historical average bandwidth of the content delivery network based on resource acquisition requests from at least one first terminal includes: Obtain the time when the resource acquisition request of the at least one first terminal was sent; Based on the sending time, a historical time period is determined, which is the time period between the target time and the sending time; Based on the historical time period, the historical average bandwidth of the content delivery network is determined.

6. A multimedia resource transmission device, characterized in that, The device includes: The first acquisition module is used to acquire the historical average bandwidth of the content delivery network based on resource acquisition requests from at least one first terminal. The second acquisition module is used to construct a first objective function based on the historical average bandwidth, the number of at least one first terminal, the data volume of various multimedia resources, a first quantity, a second quantity, and the number of virtual resources obtained by sending each type of multimedia resource. The first quantity is the number of multimedia resources currently displayed among those sent by the content delivery network, and the second quantity is the total number of various multimedia resources. The function value of the first objective function represents the difference between the historical average bandwidth and the target bandwidth, where the target bandwidth is the real-time bandwidth occupied when sending multimedia resources. The first objective function is optimized with the minimum difference between the historical average bandwidth and the target bandwidth as the optimization objective. At least one target resource type is determined, where the target bandwidth is positively correlated with the number of at least one first terminal, the data volume of multimedia resources belonging to the target resource type, and the number of target resource types. From the various multimedia resources, at least one target resource belonging to the at least one target resource type is acquired, where the difference between the target bandwidth occupied by the at least one target resource and the historical average bandwidth during transmission is within the target difference range. The sending module is configured to send the at least one target resource to the at least one first terminal based on the content distribution network.

7. A computer device, characterized in that, The computer device includes a processor and a memory, the memory being used to store at least one computer program, the at least one computer program being loaded by the processor and executed as the method for transmitting multimedia resources according to any one of claims 1 to 5.

8. A computer-readable storage medium, characterized in that, The computer-readable storage medium is used to store at least one computer program for performing the method of transmitting multimedia resources as described in any one of claims 1 to 5.

9. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the method for transmitting multimedia resources as described in any one of claims 1 to 5.