CN117768685A - Data processing method, device, computer equipment and computer readable storage medium - Google Patents

Data processing method, device, computer equipment and computer readable storage medium Download PDF

Info

Publication number
CN117768685A
CN117768685A CN202311667428.7A CN202311667428A CN117768685A CN 117768685 A CN117768685 A CN 117768685A CN 202311667428 A CN202311667428 A CN 202311667428A CN 117768685 A CN117768685 A CN 117768685A
Authority
CN
China
Prior art keywords
video
resolution
target
sub
gear
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311667428.7A
Other languages
Chinese (zh)
Inventor
柯晨光
刘晓哲
陈靖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shuhang Technology Beijing Co ltd
Original Assignee
Shuhang Technology Beijing Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shuhang Technology Beijing Co ltd filed Critical Shuhang Technology Beijing Co ltd
Priority to CN202311667428.7A priority Critical patent/CN117768685A/en
Publication of CN117768685A publication Critical patent/CN117768685A/en
Pending legal-status Critical Current

Links

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

The embodiment of the application provides a data processing method, a data processing device, computer equipment and a computer readable storage medium, wherein the method comprises the following steps: determining M video gears to be selected for indicating video delivery rules according to video gear decision data associated with video playing requests, and determining resolution decision data about target resolution, which is matched with video delivery time, if M resolutions corresponding to the M video gears to be selected comprise the target resolution; if the video with the target resolution is determined to be issued according to the resolution decision data, indicating information is sent to the video issuing equipment so as to indicate the video issuing equipment to issue the video with the target resolution according to the video issuing rule indicated by the video gear corresponding to the target resolution. The video transmission method and device can achieve diversity and self-adaptive selection of video gears, and accordingly distribution modes of videos are enriched.

Description

Data processing method, device, computer equipment and computer readable storage medium
Technical Field
The present invention relates to the field of computer technology, and in particular, to a data processing method, a data processing apparatus, a computer device, and a computer readable storage medium.
Background
With the development of computer technology, communication technology, video technology, and the like, various video applications have been developed, and people can watch videos, such as movies, television sets, short videos, and the like, through video clients on computer devices. Currently, when video delivery is performed, a video application server typically delivers video to a video client according to a default resolution and a fixed video gear (such as a fixed video coding mode, etc.), so that a single video delivery mode has low applicability.
Disclosure of Invention
The embodiment of the application provides a data processing method, a data processing device, computer equipment and a computer readable storage medium, which can realize the diversity and self-adaptive selection of video gears, thereby enriching the issuing modes of videos.
In one aspect, an embodiment of the present application provides a data processing method, where the method includes:
acquiring video gear decision data associated with a video play request;
determining M video gears to be selected according to the video gear decision data; the video gears to be selected are used for indicating video issuing rules, the M video gears to be selected correspond to M resolutions, and M is a positive integer;
if the M resolutions comprise target resolutions, determining matching resolution decision data matched with video issuing time corresponding to the video playing request from resolution decision configuration corresponding to the target resolutions;
If the video with the target resolution is determined to be issued according to the matching resolution decision data, generating first indication information according to the target resolution and a target video gear; the target video gear is a video gear to be selected corresponding to the target resolution in the M video gears to be selected;
and sending the first indication information to video issuing equipment, wherein the first indication information is used for indicating the video issuing equipment to issue the video with the target resolution according to the video issuing rule indicated by the target video gear aiming at the video playing request.
In one aspect, an embodiment of the present application provides a data processing apparatus, including:
the acquisition unit is used for acquiring video gear decision data associated with the video playing request;
the processing unit is used for determining M video gears to be selected according to the video gear decision data; the video gears to be selected are used for indicating video issuing rules, the M video gears to be selected correspond to M resolutions, and M is a positive integer;
the processing unit is further configured to determine, if the M resolutions include a target resolution, matching resolution decision data that matches a video delivery time corresponding to the video play request from a resolution decision configuration corresponding to the target resolution;
The processing unit is further configured to generate first indication information according to the target resolution and a target video gear if it is determined that the video with the target resolution is issued according to the matching resolution decision data; the target video gear is a video gear to be selected corresponding to the target resolution in the M video gears to be selected;
the communication unit is used for sending the first indication information to the video issuing equipment, wherein the first indication information is used for indicating the video issuing equipment to issue the video with the target resolution according to the video issuing rule indicated by the target video gear.
In one aspect, embodiments of the present application provide a computer device, including: the data processing method comprises a processor, a communication interface and a memory, wherein the processor, the communication interface and the memory are connected with each other, executable program codes are stored in the memory, and the processor is used for calling the executable program codes to realize the data processing method provided by the embodiment of the application.
Accordingly, the embodiment of the application also provides a computer readable storage medium, wherein instructions are stored in the computer readable storage medium, when the computer readable storage medium runs on a computer, the computer is enabled to realize the data processing method provided by the embodiment of the application.
Accordingly, embodiments of the present application also provide a computer program product comprising a computer program or computer instructions stored in a computer-readable storage medium; the processor of the computer device reads the computer program or the computer instructions from the computer readable storage medium, and the processor executes the computer program or the computer instructions, so that the computer device implements the data processing method provided by the embodiment of the application.
By adopting the data processing method provided by the embodiment of the application, on one hand, M video gears for indicating the video issuing rule are determined according to video gear decision data associated with video playing requests, and are not fixed, so that the diversity and self-adaptive selection of the video gears can be realized, the video gears adopted when video issuing is carried out for different video playing requests are not completely the same, the issuing modes of the video can be enriched, and the method can be suitable for various video on-demand service scenes. On the other hand, when the M resolutions corresponding to the M video gears comprise the target resolution, determining resolution decision data matched with video issuing time from resolution decision configuration corresponding to the target resolution, and if the video with the target resolution is determined to be issued according to the matched resolution decision data, determining to select the target resolution for video issuing, so that when the target resolution which is preferentially selected meets the selection condition, the target resolution is preferentially selected for video issuing, thereby meeting the resolution selection requirement and ensuring the video quality.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described below, it being obvious that the drawings in the following description are only some embodiments of the present application, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1a is a schematic diagram of an architecture of a data processing system illustratively provided herein;
FIG. 1b is a schematic diagram of an architecture of another data processing system illustratively provided herein;
FIG. 2 is a flow chart of an exemplary data processing method provided herein;
FIG. 3 illustrates one video gear decision approach provided by an example of the present application;
FIG. 4 illustrates a process flow for determining resolution decision data as exemplarily provided herein;
FIG. 5 is a schematic architecture diagram of a video gear distribution system as exemplarily provided herein;
FIG. 6 illustrates one manner in which the dynamic rules engine illustratively provided herein;
FIG. 7 illustrates another manner in which the dynamic rules engine illustratively provided herein;
FIG. 8 is a schematic diagram of a data processing apparatus according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of a computer device according to an embodiment of the present application.
Detailed Description
The following description of the embodiments of the present application will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are only some, but not all, of the embodiments of the present application. All other embodiments, which can be made by one of ordinary skill in the art based on the embodiments herein without making any inventive effort, are intended to be within the scope of the present application.
The embodiment of the application provides a data processing method for realizing diversity and self-adaptive selection of video gears and further enriching the issuing mode of videos. The data processing method provided by the embodiment of the application can be applied to a data processing system aiming at video. In one embodiment, as shown in FIG. 1a, the data processing system includes: the video gear decision device 11, the one or more video clients 12 and the video issuing device 13 are connected through a network. In another embodiment, as shown in FIG. 1b, the data processing system comprises: a video gear decision device 11, one or more video clients 12, a content delivery network (Content Delivery Network, CDN) 10. The content delivery network 10 includes a source station 14, one or more video delivery devices 13, the video delivery devices 13 being CDN nodes in the content delivery network 10.
The video client 12 is a video application program that provides a local service to a user, and may be configured on a portable device such as a smart phone, a tablet computer, or a laptop computer, or may be configured on a non-portable device such as a desktop computer, a Television (TV), or the like. The video gear decision device 11, the video delivery device 13, the source station 14 may be servers, such as cloud servers, data processing servers, application servers, and web servers, etc. It should be noted that, the server may be an independent physical server, or may be a server cluster or a distributed system formed by a plurality of physical servers, or may be a cloud server that provides cloud services, cloud databases, cloud computing, cloud storage, network services, cloud communication, CDN, and basic cloud computing services such as big data and an artificial intelligence platform.
When a user views a video (e.g., a movie, a television series, a short video, etc.) using the video client 12, the video client 12 sends a video play request to the video application server according to video information of the video to be viewed selected by the user, so as to request video data. The video application server requests the video gear decision device 11 to determine, for the video play request, according to which video gear to issue video of which resolution, the video gear is used to indicate a video issue rule, including indicating in which coding mode to code the video. The video gear decision device 11 obtains video gear decision data associated with a video playing request, determines M video gears to be selected according to the video gear decision data, wherein the gear decision data is associated with a video on demand service scene, the M video gears to be selected correspond to M resolutions, and M is a positive integer; if the M resolutions include the target resolution, the video gear decision device 11 determines, from a resolution decision configuration corresponding to the target resolution, matching resolution decision data that matches a video delivery time corresponding to the video play request, where the resolution decision data is used to indicate a delivery benchmark of the video of the target resolution in a period of time; if the video of the target resolution is determined to be delivered according to the matching resolution decision data, the video gear decision device 11 generates indication information according to the target resolution and the video gear to be selected corresponding to the target resolution, and sends the indication information to the video delivery device 13, so as to instruct the video delivery device to deliver the video of the target resolution to the video client 12 according to the video delivery rule indicated by the video gear to be selected corresponding to the target resolution. If applied to the data processing system shown in fig. 1b, the video delivery device 13 that receives the indication information may be selected from the video delivery devices included in the content distribution network 10 according to the dimension characteristics such as the load, the distance, the network condition, the video resource storage condition, and the like.
By adopting the mode, on one hand, the M video gears used for indicating the video issuing rule are determined according to the video gear decision data associated with the video playing request, and are not fixed, so that the diversity and self-adaptive selection of the video gears can be realized, the video gears adopted when the video issuing is carried out aiming at different video playing requests are not completely the same, the issuing mode of the video can be enriched, and the video issuing method can be suitable for various video on-demand service scenes. On the other hand, when the target resolution selected preferentially meets the selection condition, the target resolution is selected preferentially for video delivery so as to meet the resolution selection requirement and ensure the video quality.
The data processing method provided by the embodiment of the application is briefly described above, and a specific implementation manner of the data processing method is described in detail below.
Referring to fig. 2, fig. 2 is a flow chart of a data processing method according to an embodiment of the present application. The data processing method provided by the embodiment of the application may be implemented by the video gear decision device in the data processing system, where the data processing method includes, but is not limited to, the following steps:
S201, video gear decision data associated with a video playing request is acquired.
In this embodiment of the present application, the video playing request is generated by the video client according to the video information of the video to be watched selected by the user when the user watches the video (such as a movie, a television play, a short video, etc.) with the video client. The video client sends a video playing request to the video application server to request video data, and the video application server sends a video gear decision request to the video gear decision device according to the video playing request to request the video gear decision device to determine which resolution video to issue according to which video gear to the video playing request. The video gear is used for indicating a video delivery rule, and may include one or more of the following indication information associated with video delivery: video coding mode, video code rate, super-division indication information, encryption indication information, and the like.
The video gear decision data is used to determine the video gear and resolution to be used when delivering video. The video gear decision data includes: one or more of video metadata of a video requested to be played, object metadata of a request object, device metadata of a request device, and network metadata of a request device. The video requested to be played is the video requested to be played by the video playing request, namely, the video to be watched selected by the user, and the video metadata can comprise one or more of information such as a video ID (Identity Document) of the video to be watched, a video name, a video category, object information of a video release object, video duration and the like. The request object may refer to a user or a user account logged on a client, and the object metadata may include one or more information of an object type (such as whether an important (VIP) object is important) of the request object, a resolution selection habit, and the like. The requesting device includes the video client and/or the computer device on which the client resides, and the device metadata may include one or more of the following: the operating system type of the computer device, the operating system version, the client version of the video client, etc. The network metadata may include one or more of information of a network class (e.g., 4G, 5G, wifi, etc.), network quality, network speed, network protocol, etc. of the requesting device.
In an embodiment, all data (or metadata) in the video gear decision data may be carried in the video play request, from which the video gear decision device obtains the video gear decision data. In another embodiment, to reduce the data carrying capacity of the video play request and the repeated transmission of part of the data (or metadata), all or part of the data (e.g. operating system type) whose short-time content is unchanged, such as object metadata, device metadata, etc. may be stored in advance, and only the data carrying the easy change, such as video ID, network type, etc. is used in the video play request. The video gear decision device acquires video gear decision data from the video playing request and the storage space.
S202, determining M video gears to be selected according to the video gear decision data, wherein the M video gears to be selected correspond to M resolutions, and M is a positive integer.
In this embodiment of the present application, the video gear (including the video gear to be selected) is used to indicate the video delivery rule, and may include one or more of the following indication information associated with video delivery: video coding mode, video code rate, super-division indication information, encryption indication information, and the like. The video coding mode refers to a mode of converting a file in an original video format into a file in another video format through a compression technology, in order to save network resources and improve a video transmission rate, the original video is usually coded and compressed and then sent down, and the video coding mode may be a coding mode based on h.264 (highly compressed digital video coding standard), a coding mode based on HEVC (high efficiency video coding standard, also called h.265 or MPEG-H part 2), and the like. The video code rate refers to the number of data bits transmitted in unit time during data transmission, and the video code rate in the video gear can be an average code rate, a minimum code rate or a maximum code rate in the process of indicating video data transmission, and the like. The super-resolution indication information is used for indicating whether the super-resolution processing is performed on the video, and the super-resolution refers to the improvement of the resolution of the original video (or video image) through a hardware or software method. If the super-resolution indication information indicates to perform super-resolution processing, the super-resolution indication information may also indicate the super-resolution mode adopted. The encryption indication information is used for indicating whether the video is encrypted or not, and if the encryption indication information indicates that the video is encrypted, the encryption indication information can also indicate the adopted encryption mode.
For example, the video gear includes the following information: the HEVC coding mode, the average code rate of 2000kbps (kilobits per second), no super resolution processing and no encryption are carried out, namely if video is determined to be issued according to the video gear, the original video data is coded and compressed according to the HEVC coding mode, and then the coded and compressed video data is issued according to the average code rate of 2000 kbps. Also for example: the video gear includes the following information: the method comprises the steps of carrying out encoding compression on original video data according to an H.264 encoding mode if video is determined to be issued according to a video gear, carrying out asymmetric encryption on the encoded compressed video data, and issuing encoded compressed and encrypted video data according to a code rate not exceeding 5000 kbps.
The video gear decision device determines M to-be-selected video gears corresponding to M resolutions according to the video gear decision data, namely one to-be-selected video gear corresponds to one resolution, and the resolutions corresponding to the to-be-selected video gears are different. For example, M is 3, and the M candidate video gears include: a video gear corresponding to 1080P resolution, a video gear corresponding to 720P resolution, and a video gear corresponding to 480P resolution.
In an embodiment, the video gear decision device may determine M candidate video gears from N video gear decision configurations corresponding to N resolutions according to the video gear decision data. Each of the N resolutions corresponds to a video gear decision configuration, the video gear decision configuration includes one or more video gears, and the video gear decision configuration corresponding to each resolution may be configured in advance. N is a positive integer greater than 1, and M is a positive integer less than or equal to N. For example, N is 4, and the N resolutions include: 1080P resolution, 720P resolution, 480P resolution, and 270P resolution; m is 3, the M resolutions comprising: 1080P resolution and 480P resolution. The N resolutions include a target resolution, which may be a set resolution that needs to be preferentially selected. The target resolution may be the highest of the N resolutions, and preferably the target resolution is selected to be of quality priority, enabling more users to view high quality video. The M resolutions corresponding to the M video gears to be selected may include the target resolution, or may not include the target resolution.
In a possible embodiment, the video gear decision configuration includes one or more video gear decision strategies, and the video gear decision strategies include a strategy expression, a video gear and a strategy weight. The policy expression is determined according to operators constructed for various metadata, and the metadata is matched with metadata in video gear decision data, including one or more of video metadata, object metadata, device metadata and network metadata; as shown in fig. 3, the operators may include one or more of two-dimensional operators, logical operators, hash operators, comparison operators, and the like. The policy weights are used to indicate the priority of the corresponding video gear decision policy.
The mode of determining M video gears to be selected from N video gear decision configurations corresponding to N resolutions by the video gear decision device according to the video gear decision data may be:
aiming at target video gear decision configuration, the target video gear decision configuration is video gear decision configuration corresponding to any one of N resolutions (for example 720P resolution), according to strategy weights included in all video gear decision strategies in the target video gear decision configuration, strategy expressions included in the video gear decision strategies in the target video gear decision configuration are sequentially utilized, and expression operation is carried out on video gear decision data; determining a video gear included in a video gear decision strategy to which the strategy expression conforming to the result obtained by the operation result of the first expression belongs as a video gear to be selected corresponding to any resolution (for example, 720P resolution); if the operation result of the no strategy expression is a conforming result, determining that no video gear matched with the video gear decision data exists in the target video gear decision configuration, namely, no video gear matched with the video gear decision data exists in the video gear corresponding to any resolution (for example, 720P resolution).
After the similar processing is performed on the video gear decision configuration of each resolution in the N resolutions, M to-be-selected video gears corresponding to the M resolutions can be obtained, wherein M is smaller than or equal to N.
For example, taking 720P resolution as an example, as shown in fig. 3, the video gear decision configuration of 720P resolution includes video gear decision policies 1-P totaling P (P is a positive integer), the policy weights corresponding to the video gear decision policies 1-P are respectively policy weights 1-P, and the priorities indicated by the policy weights 1-P decrease in sequence, i.e. the priority indicated by the policy weight 1 is the highest, the priority indicated by the policy weight 2 is the lowest, i.e. the priority indicated by the policy weight P is the highest, i.e. the priority of the video gear decision policy 1 is the highest, the priority of the video gear decision policy 2 is the lowest, and the priority of the video gear decision policy P is the lowest. And performing expression operation on the video gear decision data by using a strategy expression 1 in the video gear decision strategy 1, if the operation result is not accordant, performing expression operation on the video gear decision data by using a strategy expression 2 in the video gear decision strategy 2, if the operation result is accordant, determining the video gear in the video gear decision strategy 2 as a video gear to be selected corresponding to 720P resolution, and ending the processing flow. The processing manner for other resolutions of the N resolutions is similar, and is not described here again.
For example, the video gear decision data includes: video duration is 3min, VIP object, android operating system, system version 8.0, client version 3.0 and 5G network. The policy expression is: "video time is not more than 300s" & gt & "user category=vip" & gt "os=Andriod" & gt "OS version is not less than 6.0" & gt "client version is not less than 1.0" & gt-! =2g. In the video gear decision data, the video duration is 3min (180 s) less than 300s, the object is VIP, the operating system is android, the system version 8.0 is greater than 6.0, the client version 3.0 is greater than 1.0, and the video gear decision data is a 5G network different from 2G, all data accords with the conditions indicated by corresponding operators in the strategy expression, and the operation result obtained by carrying out expression operation on the video gear decision data by utilizing the strategy expression is True, namely the operation result is met.
In other possible embodiments, no policy weight may be set for the video gear decision policy in the video gear decision configuration, and expression operations are performed on video gear decision data by using policy expressions in each video gear decision policy, where if the operation results of a plurality of policy expressions are in accordance with the result, one video gear is randomly selected from a plurality of video gears corresponding to the plurality of expressions, and is determined as a video gear to be selected. And the matching degree of the strategy expression in each video gear decision strategy and the video gear decision data can be determined, and the video gear corresponding to the strategy expression with the highest matching degree is determined as the video gear to be selected.
And S203, if the M resolutions comprise target resolutions, determining matching resolution decision data matched with video issuing time corresponding to the video playing request from resolution decision configuration corresponding to the target resolutions.
In this embodiment of the present application, if a video gear that matches video gear decision data exists in a video gear decision configuration corresponding to a target resolution of N resolutions, the target resolution is included in M resolutions corresponding to the determined M to-be-selected video gears, and otherwise, the target resolution is not included. The video delivery time corresponding to the video playing request may refer to the delivery time of video data of the video requested to be played by the video playing request, which may be determined according to any one of the generation time, the sending time and the receiving time of the video playing request, and the delivery time may be the initial delivery time or the time period from the beginning of the delivery to the completion of the delivery.
The resolution decision configuration corresponding to the target resolution comprises a plurality of sub-time periods and resolution decision data corresponding to each sub-time period, wherein the sub-time periods are obtained by dividing the first time period. The first time period is associated with a video delivery time corresponding to the video playing request, or in other words, the video delivery time corresponding to the video playing request is included in the first time period. The video gear decision device determines a sub-time period containing the video delivery time in the plurality of sub-time periods, and resolution decision data corresponding to the sub-time period containing the video delivery time is matching resolution decision data matched with the video delivery time corresponding to the video playing request.
In a possible implementation manner, the plurality of sub-time periods may be obtained by equally dividing the first time period according to a fixed duration. For example, the video delivery time is 2023, 11, 24, 13:02 (or 13:02:30-13:02:50), and the first time period may be 2023, 11, 24, or 2023, 11, 24, 00:00-24:00; the day 2023, 11, 24, may be divided into 288 sub-time periods at equal intervals of 5 minutes (min) duration, including: 00:00-00:05, 00:05-00:10, 13:00-00:05, etc. The resolution decision data corresponding to the sub-time period 13:00-00:05 is the matching resolution decision data matched with the video issuing time 13:02 (or 13:02:30-13:02:50).
The resolution decision data is used to indicate a delivery benchmark for video of a target resolution within a corresponding sub-period. For example, the resolution decision data corresponding to the sub-period of 2023, 11, 24, 00:00-00:05 is used to indicate the delivery benchmark of the video with the target resolution in the sub-period of 2023, 11, 24, 00:00-00:05. In an embodiment, the issuing criterion may be an issuing proportion, that is, the proportion of the feature data of the video with the target resolution issued in the corresponding sub-period, the feature data may be the number of videos or the duration of the videos, and the like, which accounts for the feature data of all the videos issued in the corresponding sub-period. In another embodiment, the delivery reference may be a video indicating whether to deliver the target resolution.
In a possible embodiment, the resolution decision data is determined from a predicted video bandwidth of the corresponding sub-period, the predicted video bandwidth being determined from video bandwidth calculation data within the reference time. The video bandwidth calculation data includes one or more of a duration of the delivered video, an average video rate, and a bandwidth utilization. The time corresponding to the first time period is later than the reference time, the reference time comprises a plurality of second time periods, and the duration of the second time periods is matched with the duration of the first time periods. For example, the first time period is the day 2023, 11, 24, and the reference time may be seven days 2023, 11, 17, to 2023, 11, 23, any of which is the second time period. In a possible embodiment, the predicted video bandwidth may be determined from video bandwidth calculation data of a matching sub-period of each second period that matches the corresponding sub-period. For example, the predicted video bandwidth for the sub-period of 00:05-00:10, 24, 2023, is determined from video bandwidth calculation data for the period of 00:05-00:10 for each of seven days, 2023, 11, 17, 11, 23. The determination method of the resolution decision data can refer to the following detailed description, and will not be described herein.
And S204, if the video with the target resolution is determined to be issued according to the matching resolution decision data, generating first indication information according to the target resolution and a target video gear, wherein the target video gear is a video gear to be selected corresponding to the target resolution in the M video gears to be selected.
In a possible embodiment, the matching resolution decision data is used to indicate a proportion of the video that can be delivered to the target resolution in a sub-period including the video delivery time, hereinafter referred to as a delivery proportion. Generating a random value according to the issuing proportion, and determining to issue the video of the target resolution if the random value is contained in the set value set; otherwise, determining the video without issuing the target resolution; the set of settings includes one or more settings that indicate the video of the target resolution to be delivered. By adopting the random mode, the characteristic data (the number of videos or the duration of the videos) of the video with the target resolution to be actually issued in the sub-time period (the sub-time period containing the video issuing time) is ensured, and the proportion of the characteristic data of the video to be actually issued in the sub-time period is matched with the issuing proportion. For example, if the delivery ratio is 60%, the target resolution is 1080P, and 5000 videos are actually delivered in the sub-period of 2023, 11, 24, 00:05-00:10, then 3000 videos should be delivered according to 1080P.
In another possible embodiment, the matching resolution decision data is used for indicating whether to issue the video with the target resolution in the sub-time period including the video issue time, if the matching resolution decision data indicates to issue the video with the target resolution, determining to issue the video with the target resolution, otherwise, determining not to issue the video with the target resolution.
If it is determined that the video with the target resolution is issued according to the matching resolution decision data, first indication information is generated according to the target resolution and the target video gear, and step S205 is executed. The target video gear is a video gear to be selected corresponding to the target resolution in the M video gears to be selected.
S205, sending the first indication information to video issuing equipment, wherein the first indication information is used for indicating the video issuing equipment to issue the video with the target resolution according to the video issuing rule indicated by the target video gear, and aiming at the video playing request.
Correspondingly, after receiving the first indication information sent by the video gear decision device, the video issuing device obtains video data of the video requested by the video playing request, wherein the resolution of the video data is the target resolution, processes the video data according to a video issuing rule indicated by the target video gear, and comprises the steps of encoding and compressing the video data according to a video encoding mode indicated by the target video gear, encrypting the encoded and compressed video data and the like. After the video data processing is completed, the processed video data is transmitted to the requesting device (or the requesting client). And the request equipment (or the request client) performs corresponding processing on the received video data and plays the video with the target resolution on the video playing interface.
In an embodiment, if it is determined that the video with the target resolution is not issued according to the matching resolution decision data, the video to be selected may be selected randomly from the M video to be selected gear except the video to be selected gear corresponding to the target resolution, so as to obtain a random video gear. And generating third indication information according to the random video gear and the resolution corresponding to the random video gear. And sending the third indication information to the video issuing equipment so as to indicate the video issuing equipment to issue the video with the resolution corresponding to the random video gear according to the video issuing rule indicated by the random video gear aiming at the video playing request. In this case, the processing manner of the video delivery device is similar to the above related description, and will not be repeated here.
In one embodiment, the target resolution is the highest resolution of the N resolutions. If the video which does not issue the target resolution is determined according to the matching resolution decision data, or the target resolution is not included in the M resolutions corresponding to the M video gears to be selected, resolution selection is performed from the M resolutions, and the selected resolution is obtained, wherein the selected resolution is any one of the following: the method comprises the steps of enabling the highest resolution in M resolutions, enabling the lowest resolution in M resolutions to be the highest resolution, and enabling the resolution to be selected randomly from the M resolutions; generating second indication information according to the selected resolution and the selected video gear corresponding to the resolution in the M selected video gears; and sending second indication information to the video issuing equipment so as to indicate the video issuing equipment to issue the video with the selected resolution according to the video issuing rule indicated by the to-be-selected video gear corresponding to the selected resolution. In this case, the processing manner of the video delivery device is similar to the above related description, and will not be repeated here.
It should be noted that, for the application scenario of the short video, the duration of the short video is short, the video data volume is small, and the video data can be issued in a short time, that is, the issuing can be completed in a sub-time period corresponding to the matching resolution decision data and containing the video issuing time. For short videos with large data volume or movies, televisions and the like, if the video delivery time is a time period from the beginning of delivering video data to the completion of delivering, and the time period spans two sub-time periods (including a first sub-time period and a second sub-time period), whether to deliver the video with target resolution can be determined according to resolution decision data of the first sub-time period, if the video with target resolution is determined to be delivered, the video delivery device is instructed to deliver the video with target resolution in a third time period (namely from the beginning of delivering the video data to the ending time of the first sub-time period) according to a video delivery rule indicated by a video gear to be selected corresponding to the target resolution; determining whether to issue the video with the target resolution according to the resolution decision data of the second sub-period, if it is determined that the video with the target resolution is not issued, for example, the video issuing device may be instructed to issue the video with the resolution corresponding to the random video gear according to the video issuing rule indicated by the random video gear in a fourth period (i.e. from the start time of the second sub-period to the end time of the video data); the random video gear is a selected video gear randomly selected from the selected video gears except the selected video gear corresponding to the target resolution in the M selected video gears. The related processing manner may refer to the foregoing description, and the other cases may be combined according to the processing manner mentioned in the foregoing related description, which is not repeated herein.
By adopting the data processing method provided by the embodiment of the application, on one hand, M video gears for indicating the video issuing rule are determined according to video gear decision data associated with video playing requests, and are not fixed, so that the diversity and self-adaptive selection of the video gears can be realized, the video gears adopted when video issuing is carried out for different video playing requests are not completely the same, the issuing modes of the video can be enriched, and the method can be suitable for various video on-demand service scenes. On the other hand, when the M resolutions corresponding to the M video gears comprise the target resolution, determining resolution decision data matched with video issuing time from resolution decision configuration corresponding to the target resolution, and if the video with the target resolution is determined to be issued according to the matched resolution decision data, determining to select the target resolution for video issuing, so that when the target resolution which is preferentially selected meets the selection condition, the target resolution is preferentially selected for video issuing, thereby meeting the resolution selection requirement and ensuring the video quality. In still another aspect, the resolution decision data is used for indicating a reference for delivering a video of a target resolution in a period of time, where the resolution decision data is determined according to a predicted video bandwidth in a corresponding period of time, that is, whether the target resolution preferentially selected meets a selection condition is determined according to the predicted video bandwidth, so that it can be ensured that the bandwidth usage involved in video delivery meets a set requirement.
As described above, the target resolution may be the maximum resolution of the N resolutions, and the resolution decision configuration corresponding to the target resolution includes a plurality of sub-time periods and resolution decision data corresponding to each sub-time period, where the plurality of sub-time periods may be obtained by equally dividing the first time period according to a fixed duration. The reference time includes a plurality of second time periods, and the duration of the second time periods matches the duration of the first time periods. Taking the determination of resolution decision data corresponding to a certain sub-period as an example, an exemplary manner of determining resolution decision data is described in detail below with reference to fig. 4, where the determination of resolution decision data (or resolution decision configuration) may be performed by a video gear decision device or other devices. Referring to fig. 4, fig. 4 illustrates an exemplary process flow for determining resolution decision data, including, but not limited to, the steps of:
s401, respectively determining a matched sub-time period matched with a target sub-time period in each second time period according to a plurality of second time periods included in the reference time, wherein the target sub-time period is any sub-time period in a plurality of sub-time periods obtained by dividing the first time period.
For example, the first time period may be the day of month 24 of year 2023, which is divided by the time period of 5 minutes (min) at equal intervals into a total 288 sub-time periods including 00:00-00:05, 00:05-00:10, 13:00-00:05, etc. for the day of month 24 of year 2023. The reference time may be three days, 2023, 11, 21, to 2023, 11, 23, any of which is the second time period. Taking the example of resolution decision data for determining the sub-period of 2023, 11, 24, 00:05-00:10, then 2023, 11, 24, 00:05-00:10 is the target sub-period, 2023, 11, 21, 00:05-00:10, 2023, 11, 22, 00:05-00:10, 2023, 11, 23, 00:05-00:10 is the matching sub-period matched thereto
S402, acquiring video bandwidth calculation data related to video playing of a video client in any matched sub-time period according to the matched sub-time periods.
In the embodiment of the application, the video bandwidth calculation data includes: the video duration, the average video code rate and the bandwidth utilization are issued. For example, if the matching sub-period is 2023, 11, 23, 00:05-00:10, then the video bandwidth calculation data related to playing the video in 2023, 11, 23, 00:05-00:10, includes: the time length of issuing the video in the five minutes, or the time length of issuing the video data in the five minutes, the time length of issuing the video can also be the time length of playing the video, namely the time length of playing the video in the five minutes; average video rate of the delivered video data within the five minutes; bandwidth utilization within these five minutes.
In connection with the above example, it is required that the video client plays video bandwidth calculation data related to video within five minutes of 2023, 11, 21, 00, 05, to 00, 10, the video client plays video within five minutes of 2023, 11, 22, 00, 05, to 00, 10, the video client plays video bandwidth calculation data related to video within five minutes of 2023, 11, 23, 00, 05, to 00, 10.
S403, predicting video bandwidth calculation data of the target sub-time period according to video bandwidth calculation data corresponding to each matching sub-time period in the plurality of matching sub-time periods.
In this embodiment of the present application, according to video bandwidth calculation data corresponding to each matching sub-period of the plurality of matching sub-periods, the video bandwidth calculation data of the prediction target sub-period may be: predicting the video issuing duration of the target sub-time period according to the video issuing duration corresponding to each matched sub-time period in the matched sub-time periods; predicting the average video code rate of the target sub-time period according to the average video code rate corresponding to each matched sub-time period in the matched sub-time periods; and predicting the bandwidth utilization rate of the target sub-time period according to the bandwidth utilization rate corresponding to each matching sub-time period in the plurality of matching sub-time periods.
In combination with the above example, the video duration of the transmission in the period 2023 is predicted according to the video duration of the transmission in the period 2023, 11, 21, 00:05-00:10, 2023, 11, 22, 00:05-00:10, 2023, 11, 23, 00:05-00:10, the video rate of the transmission in the period 2023, 11, 24, 00:05-00:10, the video rate of the transmission in the period 2023, 11, 24, 00:05-00:10, the bandwidth utilization in the period 2023, 11, 24, the bandwidth utilization in the period.
In a possible implementation manner, according to the duration of the delivered video corresponding to each of the plurality of matched sub-time periods, the predicted duration of the delivered video of the target sub-time period may be: and linearly planning according to the video issuing duration corresponding to each matched sub-time period in the matched sub-time periods, wherein the linear planning result can indicate the change trend of the video issuing duration, and the video issuing duration of the target sub-time period is predicted according to the linear planning result. In other possible embodiments, an average value of a plurality of video durations corresponding to a plurality of matching sub-time periods may be determined, or a weighted average value of a plurality of video durations corresponding to a plurality of matching sub-time periods may be determined, and the closer to the target sub-time period, the greater the weight corresponding to the matching sub-time period is, the greater the video duration of the target sub-time period may be determined according to the average value or the weighted average value. It should be noted that, the prediction manners of the average video code rate and the bandwidth utilization rate of the target sub-period are similar, and will not be repeated here.
S404, determining the predicted video bandwidth of the target sub-time period according to the video bandwidth calculation data of the predicted target sub-time period.
In this embodiment of the present application, the video bandwidth calculation formula may be: video bandwidth = delivered video duration (or video play duration) x average video rate/bandwidth utilization/duration.
The duration refers to the duration of the target sub-time period. For example, the target sub-time period is obtained by dividing a certain day at equal intervals according to a duration of 5 minutes, and the duration in the video bandwidth calculation formula is 5 minutes (or 360 s).
And (3) bringing the issued video duration, the average video code rate and the bandwidth utilization rate of the target sub-time period obtained by prediction in the step (S403) into the bandwidth calculation formula to obtain the predicted video bandwidth of the target sub-time period.
In a possible embodiment, the bandwidth utilization may be set to a fixed value, for example, 1 by default, at which time the related processing of the bandwidth utilization may not be involved in steps S402 and S403.
S405, determining resolution decision data corresponding to the target sub-time period according to the predicted video bandwidth of the target sub-time period.
According to the method and the device, according to the predicted video bandwidth of the target sub-time period, the proportion of videos with target resolution can be issued in the target sub-time period under the condition that bandwidth charging is not affected is determined, and according to the determined proportion of videos with target resolution can be issued in the target sub-time period, resolution decision data corresponding to the target sub-time period is determined. Not affecting the bandwidth charging may mean that the maximum bandwidth available is not exceeded, which would require an additional charge. The bandwidth charging may be in the form of 95 peak charging. The target resolution may be the maximum resolution of the above-described N resolutions, for example 1080P.
In a possible implementation manner, according to the predicted video bandwidth of the target sub-period, the determining the proportion of the video with the target resolution that can be issued in the target sub-period without affecting the bandwidth charging may be: estimating the video issuing quantity according to the average bandwidth of the video with each resolution and the predicted video bandwidth; and determining the consumed bandwidth of the video with the target resolution, and determining the proportion of the video with the target resolution which can be issued in the target sub-time period under the condition of not influencing bandwidth charging according to the maximum available bandwidth, the estimated video issuing quantity and the consumed bandwidth of the video with the target resolution.
For example, the maximum available bandwidth is 200Mbps, and the predicted video bandwidth in the period of 2023, 11 months, 24 days, 00:05-00:10 is 150Mbps, and if the actual situation meets the predicted situation, the bandwidth of 50Mbps is not utilized, resulting in waste of bandwidth. The reason for this is likely to be that the number of video releases in this period is small and most of the releases are low resolution (e.g., 720P resolution, 480P resolution) video. At this time, under the condition of ensuring that the bandwidth charging is not influenced, that is, the maximum available 200Mbps is not exceeded, the video proportion of the high-resolution transmission (or target resolution, such as 1080P) can be properly improved, so that the actual video bandwidth in the time period approaches to the maximum available 200Mbps, and thus, on the basis of not increasing extra cost, as many high-resolution videos can be transmitted as possible, the quality of video watched by a user is improved, and the user experience is improved.
The method and the device can be applied to video-on-demand service scenes, wherein the video-on-demand service scenes comprise short video-on-demand service scenes. Aiming at complex video on demand service scenes, from the dimension of a user, the equipment (including an operating system type, an operating system version, a video client version and the like) of the user is different from each other, the network environment, the consumption time, the video to be watched and the like are different from each other, from the dimension of video processing, various video gears (including a video coding mode, a video code rate, whether oversubscription, whether encryption and the like) are provided, the video on demand service scene matching method can flexibly and intelligently match the most suitable video gears and resolution, and on the basis of not increasing extra cost, the quality of the video watched by the user is improved as much as possible, and the user experience is improved. The video gear matching method is based on intelligent rules, is mainly applied to video gears corresponding to 1080P resolution, predicts the bandwidth conditions of all time periods in the future according to the video consumption conditions (issuing video duration, average video code rate, bandwidth utilization rate and the like) of history (a period of time before the current time) by using a prediction algorithm, and calculates the video with 1080 resolution in a proportion under the condition of not affecting bandwidth charging according to the predicted bandwidth. And generating a rule for issuing video gears corresponding to 1080P resolutions of different periods according to the calculation result. The intelligent rule engine module can periodically load and understand the generated rules and control the issuing proportion of the 1080P resolution video in each time period in real time, so that the purpose of issuing 1080P resolution video as much as possible under the condition of not affecting bandwidth charging is achieved.
Referring to fig. 5, fig. 5 is a schematic architecture diagram of a video gear distribution system according to an embodiment of the present application. The video gear distribution system is provided based on the data processing method provided by the embodiment of the application. As shown in fig. 5, the video gear distribution system includes:
control layer: the whole is responsible for controlling the video issuing logic. The control layer comprises a metadata module, a static rule engine module, an intelligent rule engine module and a cdn scheduling module.
Metadata module: multidimensional data required for packaging video gear and resolution decisions includes video metadata, object (or user) metadata, device metadata, and network metadata. And generating the entry of the rule engine through the processing of the metadata module.
Static rule engine module: responsible for static rule management and making pre-decisions based on the input of metadata. The processing manner may correspond to the step S202, and includes: and determining M video gears to be selected from N video gear decision configurations corresponding to the N resolutions according to the video gear decision data. Each of the N resolutions corresponds to a video gear decision configuration, the video gear decision configuration includes one or more video gears, and the video gear decision configuration corresponding to each resolution may be configured in advance.
The intelligent rule engine module: and the control rules are dynamically generated according to the input historical data, and are loaded to the decision sub-module for decision judgment by the decision sub-module. The processing may be the steps of determining the resolution decision data for each time period corresponding to the steps S401 to S405, and determining whether to issue the video of the target resolution according to the matching resolution decision data.
The intelligent rule engine module comprises a dynamic rule engine, and the main function of the dynamic rule engine is to dynamically load and analyze the result output by the prediction algorithm into a Strategy, then to carry out a matching decision according to the Strategy, and to output a corresponding video gear and resolution issuing Strategy, wherein the intelligent rule engine module mainly comprises a Strategy Manager module and a Strategy Decision module. As shown in FIG. 6, the input of the Strategy Manager module is the prediction data output by the prediction algorithm, and the output Strategy Decision module can understand the policy data structure through dynamic rule loading, dynamic rule parsing and policy local cache construction of the module. The policy data structure finally output by the Strategy Manager module is as follows:
public class StrategyInfo{
private long startTime; policy validation start time
private long endTime; policy validation end time
private double percentage; percent of resolution issue for/(1080P)
private int predictionType; type of/(prediction)
}
As shown in fig. 7, the Strategy Decision module generates a final delivery decision according to the input existing policy and specific play request parameters. Specifically, to the application scene, whether the 1080P gear can be issued by the request is output, and the 1080P gear issues the video with 1080P resolution according to the video gear corresponding to 1080P resolution.
cdn scheduling module: and the final cdn scheduling of the video gear and the resolution to be finally issued is carried out, wherein the final cdn scheduling comprises dynamic scheduling and fixed replacement of some business scenes.
Data layer: is responsible for providing various data required by the control layer and for maintaining the cache.
Monitoring layer: and the service quality and business logic monitoring and log reporting of the full link are responsible.
The video gear distribution system (or intelligent rule engine module) realized based on the prediction algorithm and the dynamic rule engine can adjust the logic issued by the video gear and the resolution more intelligently and flexibly and iterate rules more quickly, thereby optimizing the user consumption experience and cost.
Referring to fig. 8, fig. 8 is a schematic structural diagram of a data processing apparatus according to an embodiment of the present application. The data processing apparatus described in the embodiments of the present application corresponds to the video gear decision device described above, and includes:
an obtaining unit 801, configured to obtain video gear decision data associated with a video playing request;
a processing unit 802, configured to determine M video gears to be selected according to the video gear decision data; the video gears to be selected are used for indicating video issuing rules, the M video gears to be selected correspond to M resolutions, and M is a positive integer;
the processing unit 802 is further configured to determine, if the M resolutions include a target resolution, matching resolution decision data that matches a video delivery time corresponding to the video play request from a resolution decision configuration corresponding to the target resolution;
the processing unit 802 is further configured to generate first indication information according to the target resolution and a target video gear if it is determined that the video with the target resolution is issued according to the matching resolution decision data; the target video gear is a video gear to be selected corresponding to the target resolution in the M video gears to be selected;
The communication unit 803 is configured to send the first indication information to a video delivery device, where the first indication information is used to instruct the video delivery device to deliver, according to a video delivery rule indicated by the target video gear, a video with the target resolution to the video play request.
In an embodiment, the resolution decision configuration includes a plurality of sub-time periods and resolution decision data corresponding to each sub-time period, where the resolution decision data is used to indicate a delivery benchmark of the video with the target resolution in the corresponding sub-time period, the resolution decision data is determined according to a predicted video bandwidth of the corresponding sub-time period, and the predicted video bandwidth is determined according to video bandwidth calculation data in a reference time; the plurality of sub-time periods are obtained by dividing a first time period, and the time corresponding to the first time period is later than the reference time.
In an embodiment, the reference time includes a plurality of second time periods, and the processing unit 802 is further configured to:
determining a matching sub-time period which is matched with a target sub-time period in each second time period, wherein the target sub-time period is any sub-time period in the plurality of sub-time periods; for any matched sub-time period in a plurality of matched sub-time periods, acquiring video bandwidth calculation data related to video client playing video in the any matched sub-time period; predicting video bandwidth calculation data of the target sub-time period according to video bandwidth calculation data corresponding to each matching sub-time period in the plurality of matching sub-time periods; determining the predicted video bandwidth of the target sub-time period according to the predicted video bandwidth calculation data of the target sub-time period; and determining resolution decision data corresponding to the target sub-time period according to the predicted video bandwidth of the target sub-time period.
In an embodiment, the video bandwidth calculation data includes: issuing video duration, average video code rate and bandwidth utilization rate; the processing unit 802 is specifically configured to:
predicting the video issuing duration of the target sub-time period according to the video issuing duration corresponding to each matched sub-time period in the matched sub-time periods; predicting the average video code rate of the target sub-time period according to the average video code rate corresponding to each matched sub-time period in the matched sub-time periods; and predicting the bandwidth utilization rate of the target sub-time period according to the bandwidth utilization rate corresponding to each matching sub-time period in the plurality of matching sub-time periods.
In one embodiment, the processing unit 802 is specifically configured to:
determining the proportion of the video which can issue the target resolution in the target sub-time period under the condition of not influencing bandwidth charging according to the predicted video bandwidth of the target sub-time period; and determining resolution decision data corresponding to the target sub-time period according to the proportion of the video which can deliver the target resolution in the target sub-time period.
In an embodiment, the sub-period corresponding to the matching resolution decision data is a sub-period including the video delivery time in the plurality of sub-periods, and the matching resolution decision data is used for indicating a proportion of the video with the target resolution that can be delivered in the sub-period including the video delivery time. The processing unit 802 is further configured to:
Generating a random value according to the proportion of the video with the target resolution which can be issued in the sub-time period containing the video issuing time; if the random value is contained in the set value set, determining to issue the video of the target resolution; the set of settings includes one or more settings that are used to indicate the video that delivers the target resolution.
In one embodiment, the processing unit 802 is specifically configured to:
according to the video gear decision data, M video gears to be selected are determined from N video gear decision configurations corresponding to N resolutions; wherein the N resolutions include the target resolution, each of the N resolutions corresponds to a video gear decision configuration, and the video gear decision configuration includes one or more video gears; n is a positive integer greater than 1, and M is a positive integer less than or equal to N.
In an embodiment, the video gear decision data comprises: one or more of video metadata of a video requested to be played, object metadata of a request object, device metadata of a request device, and network metadata of a request device; the video gear decision configuration comprises one or more video gear decision strategies, wherein the video gear decision strategies comprise strategy expressions, video gears and strategy weights, and the strategy expressions are determined according to operators constructed for various metadata. The processing unit 802 is specifically configured to:
According to strategy weights included in all video gear decision strategies in target video gear decision configuration, sequentially utilizing strategy expressions included in the video gear decision strategies in the target video gear decision configuration, and carrying out expression operation on the video gear decision data; the target video gear decision configuration is video gear decision configuration corresponding to any one of the N resolutions; and determining the video gear included in the video gear decision strategy to which the strategy expression conforming to the result is the operation result of the first expression as the video gear to be selected corresponding to any resolution.
In an embodiment, the target resolution is a highest resolution of the N resolutions, and the processing unit 802 is further configured to:
if the target resolution is not included in the M resolutions, performing resolution selection from the M resolutions to obtain a selected resolution, wherein the selected resolution is any one of the following: the highest resolution of the M resolutions, the lowest resolution of the M resolutions, and a resolution randomly selected from the M resolutions; generating second indication information according to the selected resolution and the video gear to be selected corresponding to the selected resolution;
The communication unit 803 is further configured to send the second indication information to the video delivery device, where the second indication information is used to instruct the video delivery device to deliver the video with the selected resolution according to a video delivery rule indicated by the video to be selected gear corresponding to the selected resolution, and to the video play request.
It may be understood that the functions of each functional unit of the data processing apparatus according to the embodiments of the present application may be specifically implemented according to the method in the embodiments of the method, and the specific implementation process may refer to the relevant description in the embodiments of the method, which is not repeated herein.
In a possible embodiment, the data processing apparatus provided in the embodiment of the present application may be implemented in a software manner, or may be implemented in a manner combining software and hardware.
By adopting the data processing device provided by the embodiment of the application, on one hand, M video gears for indicating the video issuing rule are determined according to video gear decision data associated with video playing requests, and are not fixed, so that the diversity and self-adaptive selection of the video gears can be realized, the video gears adopted when video issuing is carried out for different video playing requests are not completely the same, the issuing modes of the video can be enriched, and the video processing device can be suitable for various video on-demand service scenes. On the other hand, when the M resolutions corresponding to the M video gears comprise the target resolution, determining resolution decision data matched with video issuing time from resolution decision configuration corresponding to the target resolution, and if the video with the target resolution is determined to be issued according to the matched resolution decision data, determining to select the target resolution for video issuing, so that when the target resolution which is preferentially selected meets the selection condition, the target resolution is preferentially selected for video issuing, thereby meeting the resolution selection requirement and ensuring the video quality.
Referring to fig. 9, fig. 9 is a schematic structural diagram of a computer device according to an embodiment of the present application. The computer device described in the embodiments of the present application corresponds to the video gear decision device and the data processing apparatus described in the foregoing, and includes: processor 901, communication interface 902, and memory 903. The processor 901, the communication interface 902, and the memory 903 may be connected by a bus or other means, which is exemplified in the embodiment of the present application.
Among them, the processor 901 (or CPU (Central Processing Unit, central processing unit)) is a computing core and a control core of a computer device, which can parse various instructions in the computer device and process various data of the computer device, for example: the CPU may transmit various types of interaction data between internal structures of the computer device, and so on. The communication interface 902 may optionally include a standard wired interface, a wireless interface (e.g., wi-Fi, mobile communication interface, etc.), controlled by the processor 901 for transceiving data. The Memory 903 (Memory) is a Memory device in a computer device for storing programs and data. It will be appreciated that the memory 903 here may include both built-in memory of the computer device and extended memory supported by the computer device. The memory 903 provides storage space that stores the operating system of the computer device, which may include, but is not limited to: android systems, iOS systems, windows Phone systems, etc., which are not limiting in this application.
In the present embodiment, the processor 901 performs the following operations by executing executable program code in the memory 903:
acquiring video gear decision data associated with a video play request through the communication interface 902; determining M video gears to be selected according to the video gear decision data; the video gears to be selected are used for indicating video issuing rules, the M video gears to be selected correspond to M resolutions, and M is a positive integer; if the M resolutions comprise target resolutions, determining matching resolution decision data matched with video issuing time corresponding to the video playing request from resolution decision configuration corresponding to the target resolutions; if the video with the target resolution is determined to be issued according to the matching resolution decision data, generating first indication information according to the target resolution and a target video gear; the target video gear is a video gear to be selected corresponding to the target resolution in the M video gears to be selected; the first indication information is sent to a video issuing device through the communication interface 902, where the first indication information is used to instruct the video issuing device to issue the video with the target resolution according to the video issuing rule indicated by the target video gear, and the video playing request is sent.
In an embodiment, the resolution decision configuration includes a plurality of sub-time periods and resolution decision data corresponding to each sub-time period, where the resolution decision data is used to indicate a delivery benchmark of the video with the target resolution in the corresponding sub-time period, the resolution decision data is determined according to a predicted video bandwidth of the corresponding sub-time period, and the predicted video bandwidth is determined according to video bandwidth calculation data in a reference time; the plurality of sub-time periods are obtained by dividing a first time period, and the time corresponding to the first time period is later than the reference time.
In an embodiment, the reference time includes a plurality of second time periods, and the processor 901 is further configured to: determining a matching sub-time period which is matched with a target sub-time period in each second time period, wherein the target sub-time period is any sub-time period in the plurality of sub-time periods; for any matched sub-time period in a plurality of matched sub-time periods, acquiring video bandwidth calculation data related to video client playing video in the any matched sub-time period; predicting video bandwidth calculation data of the target sub-time period according to video bandwidth calculation data corresponding to each matching sub-time period in the plurality of matching sub-time periods; determining the predicted video bandwidth of the target sub-time period according to the predicted video bandwidth calculation data of the target sub-time period; and determining resolution decision data corresponding to the target sub-time period according to the predicted video bandwidth of the target sub-time period.
In an embodiment, the video bandwidth calculation data includes: issuing video duration, average video code rate and bandwidth utilization rate; the processor 901 predicts the video bandwidth calculation data of the target sub-period according to the video bandwidth calculation data corresponding to each of the plurality of matching sub-periods, and is specifically configured to: predicting the video issuing duration of the target sub-time period according to the video issuing duration corresponding to each matched sub-time period in the matched sub-time periods; predicting the average video code rate of the target sub-time period according to the average video code rate corresponding to each matched sub-time period in the matched sub-time periods; and predicting the bandwidth utilization rate of the target sub-time period according to the bandwidth utilization rate corresponding to each matching sub-time period in the plurality of matching sub-time periods.
In an embodiment, when the processor 901 determines resolution decision data corresponding to the target sub-period according to the predicted video bandwidth of the target sub-period, the processor is specifically configured to: determining the proportion of the video which can issue the target resolution in the target sub-time period under the condition of not influencing bandwidth charging according to the predicted video bandwidth of the target sub-time period; and determining resolution decision data corresponding to the target sub-time period according to the proportion of the video which can deliver the target resolution in the target sub-time period.
In an embodiment, the sub-period corresponding to the matching resolution decision data is a sub-period including the video delivery time in the plurality of sub-periods, the matching resolution decision data is used for indicating a proportion of the video with the target resolution that can be delivered in the sub-period including the video delivery time, and the processor 901 is further configured to: generating a random value according to the proportion of the video with the target resolution which can be issued in the sub-time period containing the video issuing time; if the random value is contained in the set value set, determining to issue the video of the target resolution; the set of settings includes one or more settings that are used to indicate the video that delivers the target resolution.
In an embodiment, when the processor 901 determines M candidate video gears according to the video gear decision data, the method is specifically used for: according to the video gear decision data, M video gears to be selected are determined from N video gear decision configurations corresponding to N resolutions; wherein the N resolutions include the target resolution, each of the N resolutions corresponds to a video gear decision configuration, and the video gear decision configuration includes one or more video gears; n is a positive integer greater than 1, and M is a positive integer less than or equal to N.
In an embodiment, the video gear decision data comprises: one or more of video metadata of a video requested to be played, object metadata of a request object, device metadata of a request device, and network metadata of a request device; the video gear decision configuration comprises one or more video gear decision strategies, wherein the video gear decision strategies comprise strategy expressions, video gears and strategy weights, and the strategy expressions are determined according to operators constructed for various metadata.
The processor 901 is specifically configured to, according to the video gear decision data, determine M video gears to be selected from N video gear decision configurations corresponding to N resolutions: according to strategy weights included in all video gear decision strategies in target video gear decision configuration, sequentially utilizing strategy expressions included in the video gear decision strategies in the target video gear decision configuration, and carrying out expression operation on the video gear decision data; the target video gear decision configuration is video gear decision configuration corresponding to any one of the N resolutions; and determining the video gear included in the video gear decision strategy to which the strategy expression conforming to the result is the operation result of the first expression as the video gear to be selected corresponding to any resolution.
In an embodiment, the target resolution is a highest resolution of the N resolutions, and the processor 901 is further configured to: if the target resolution is not included in the M resolutions, performing resolution selection from the M resolutions to obtain a selected resolution, wherein the selected resolution is any one of the following: the highest resolution of the M resolutions, the lowest resolution of the M resolutions, and a resolution randomly selected from the M resolutions; generating second indication information according to the selected resolution and the video gear to be selected corresponding to the selected resolution; and sending the second indication information to the video issuing device through the communication interface 902, where the second indication information is used to instruct the video issuing device to issue the video with the selected resolution according to the video issuing rule indicated by the video to be selected gear corresponding to the selected resolution, and to the video playing request.
In a specific implementation, the processor 901, the communication interface 902, and the memory 903 described in the embodiments of the present application may execute an implementation manner of the video gear decision device described in the data processing method provided in the embodiments of the present application, or may execute an implementation manner of the data processing apparatus provided in the embodiments of the present application, which is not described herein again.
By adopting the computer equipment provided by the embodiment of the application, on one hand, M video gears for indicating the video issuing rule are determined according to the video gear decision data associated with the video playing request, and are not fixed, so that the diversity and self-adaptive selection of the video gears can be realized, the video gears adopted when video issuing is carried out for different video playing requests are not completely the same, the issuing mode of the video can be enriched, and the computer equipment can be suitable for various video on-demand service scenes. On the other hand, when the M resolutions corresponding to the M video gears comprise the target resolution, determining resolution decision data matched with video issuing time from resolution decision configuration corresponding to the target resolution, and if the video with the target resolution is determined to be issued according to the matched resolution decision data, determining to select the target resolution for video issuing, so that when the target resolution which is preferentially selected meets the selection condition, the target resolution is preferentially selected for video issuing, thereby meeting the resolution selection requirement and ensuring the video quality.
The embodiment of the application also provides a computer readable storage medium, wherein the computer readable storage medium stores computer instructions, which when running on a computer, cause the computer to realize the data processing method provided by the embodiment of the application. The specific implementation manner may refer to the foregoing description, and will not be repeated here.
Embodiments of the present application also provide a computer program product comprising a computer program or computer instructions stored in a computer-readable storage medium. The processor of the computer device reads the computer program or the computer instructions from the computer readable storage medium, and the processor executes the computer program or the computer instructions, so that the computer device implements the data processing method provided by the embodiment of the application. The specific implementation manner may refer to the foregoing description, and will not be repeated here.
It should be noted that, in the application of the present application, the relevant data collection process should strictly obtain the informed consent or the individual consent of the personal information body according to the requirements of the relevant laws and regulations, and develop the subsequent data use and processing actions within the authorized range of the laws and regulations and the personal information body. For the foregoing description of the various method embodiments, a series of combinations of actions are described for simplicity of explanation, but it should be understood by those skilled in the art that the present application is not limited by the order of actions described, as some steps may occur in other orders or concurrently with other steps from that shown and described herein. Further, those skilled in the art will also appreciate that the embodiments described in the specification are all preferred embodiments, and that the acts and modules referred to are not necessarily required in the present application.
Those of ordinary skill in the art will appreciate that all or part of the steps in the various methods of the above embodiments may be implemented by a program to instruct related hardware, the program may be stored in a computer readable storage medium, and the storage medium may include: flash disk, read-Only Memory (ROM), random-access Memory (Random Access Memory, RAM), magnetic or optical disk, and the like.
The foregoing disclosure is only illustrative of some of the embodiments of the present application and is not, of course, to be construed as limiting the scope of the appended claims, and therefore, all changes that come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein.

Claims (12)

1. A method of data processing, the method comprising:
acquiring video gear decision data associated with a video play request;
determining M video gears to be selected according to the video gear decision data; the video gears to be selected are used for indicating video issuing rules, the M video gears to be selected correspond to M resolutions, and M is a positive integer;
if the M resolutions comprise target resolutions, determining matching resolution decision data matched with video issuing time corresponding to the video playing request from resolution decision configuration corresponding to the target resolutions;
If the video with the target resolution is determined to be issued according to the matching resolution decision data, generating first indication information according to the target resolution and a target video gear; the target video gear is a video gear to be selected corresponding to the target resolution in the M video gears to be selected;
and sending the first indication information to video issuing equipment, wherein the first indication information is used for indicating the video issuing equipment to issue the video with the target resolution according to the video issuing rule indicated by the target video gear aiming at the video playing request.
2. The method of claim 1, wherein the resolution decision configuration includes a plurality of sub-time periods and resolution decision data corresponding to each sub-time period, the resolution decision data being used to indicate a delivery benchmark for the video of the target resolution for the corresponding sub-time period, the resolution decision data being determined based on a predicted video bandwidth for the corresponding sub-time period, the predicted video bandwidth being determined based on video bandwidth calculation data for a reference time; the plurality of sub-time periods are obtained by dividing a first time period, and the time corresponding to the first time period is later than the reference time.
3. The method of claim 2, wherein the reference time comprises a plurality of second time periods, the method further comprising:
determining a matching sub-time period which is matched with a target sub-time period in each second time period, wherein the target sub-time period is any sub-time period in the plurality of sub-time periods;
for any matched sub-time period in a plurality of matched sub-time periods, acquiring video bandwidth calculation data related to video client playing video in the any matched sub-time period;
predicting video bandwidth calculation data of the target sub-time period according to video bandwidth calculation data corresponding to each matching sub-time period in the plurality of matching sub-time periods;
determining the predicted video bandwidth of the target sub-time period according to the predicted video bandwidth calculation data of the target sub-time period;
and determining resolution decision data corresponding to the target sub-time period according to the predicted video bandwidth of the target sub-time period.
4. The method of claim 3, wherein the video bandwidth calculation data comprises: issuing video duration, average video code rate and bandwidth utilization rate;
the predicting the video bandwidth calculation data of the target sub-time period according to the video bandwidth calculation data corresponding to each matching sub-time period in the plurality of matching sub-time periods includes:
Predicting the video issuing duration of the target sub-time period according to the video issuing duration corresponding to each matched sub-time period in the matched sub-time periods;
predicting the average video code rate of the target sub-time period according to the average video code rate corresponding to each matched sub-time period in the matched sub-time periods;
and predicting the bandwidth utilization rate of the target sub-time period according to the bandwidth utilization rate corresponding to each matching sub-time period in the plurality of matching sub-time periods.
5. The method according to claim 3 or 4, wherein determining resolution decision data corresponding to the target sub-period according to the predicted video bandwidth of the target sub-period comprises:
determining the proportion of the video which can issue the target resolution in the target sub-time period under the condition of not influencing bandwidth charging according to the predicted video bandwidth of the target sub-time period;
and determining resolution decision data corresponding to the target sub-time period according to the proportion of the video which can deliver the target resolution in the target sub-time period.
6. The method of claim 5, wherein the sub-period corresponding to the matching resolution decision data is a sub-period of the plurality of sub-periods that includes the video delivery time, the matching resolution decision data being indicative of a proportion of video of the target resolution that can be delivered within the sub-period that includes the video delivery time, the method further comprising:
Generating a random value according to the proportion of the video with the target resolution which can be issued in the sub-time period containing the video issuing time;
if the random value is contained in the set value set, determining to issue the video of the target resolution; the set of settings includes one or more settings that are used to indicate the video that delivers the target resolution.
7. The method of any of claims 1-4, wherein determining M candidate video gears from the video gear decision data comprises:
according to the video gear decision data, M video gears to be selected are determined from N video gear decision configurations corresponding to N resolutions;
wherein the N resolutions include the target resolution, each of the N resolutions corresponds to a video gear decision configuration, and the video gear decision configuration includes one or more video gears; n is a positive integer greater than 1, and M is a positive integer less than or equal to N.
8. The method of claim 7, wherein the video gear decision data comprises: one or more of video metadata of a video requested to be played, object metadata of a request object, device metadata of a request device, and network metadata of a request device; the video gear decision configuration comprises one or more video gear decision strategies, wherein the video gear decision strategies comprise strategy expressions, video gears and strategy weights, and the strategy expressions are determined according to operators constructed for various metadata;
According to the video gear decision data, determining M video gears to be selected from N video gear decision configurations corresponding to N resolutions, including:
according to strategy weights included in all video gear decision strategies in target video gear decision configuration, sequentially utilizing strategy expressions included in the video gear decision strategies in the target video gear decision configuration, and carrying out expression operation on the video gear decision data; the target video gear decision configuration is video gear decision configuration corresponding to any one of the N resolutions;
and determining the video gear included in the video gear decision strategy to which the strategy expression conforming to the result is the operation result of the first expression as the video gear to be selected corresponding to any resolution.
9. The method of claim 7, wherein the target resolution is a highest resolution of the N resolutions, the method further comprising:
if the target resolution is not included in the M resolutions, performing resolution selection from the M resolutions to obtain a selected resolution, wherein the selected resolution is any one of the following: the highest resolution of the M resolutions, the lowest resolution of the M resolutions, and a resolution randomly selected from the M resolutions;
Generating second indication information according to the selected resolution and the video gear to be selected corresponding to the selected resolution;
and sending the second indication information to the video issuing device, wherein the second indication information is used for indicating the video issuing device to issue the video with the selected resolution according to a video issuing rule indicated by the video gear to be selected corresponding to the selected resolution, and aiming at the video playing request.
10. A data processing apparatus, the apparatus comprising:
the acquisition unit is used for acquiring video gear decision data associated with the video playing request;
the processing unit is used for determining M video gears to be selected according to the video gear decision data; the video gears to be selected are used for indicating video issuing rules, the M video gears to be selected correspond to M resolutions, and M is a positive integer;
the processing unit is further configured to determine, if the M resolutions include a target resolution, matching resolution decision data that matches a video delivery time corresponding to the video play request from a resolution decision configuration corresponding to the target resolution;
the processing unit is further configured to generate first indication information according to the target resolution and a target video gear if it is determined that the video with the target resolution is issued according to the matching resolution decision data; the target video gear is a video gear to be selected corresponding to the target resolution in the M video gears to be selected;
The communication unit is used for sending the first indication information to the video issuing equipment, wherein the first indication information is used for indicating the video issuing equipment to issue the video with the target resolution according to the video issuing rule indicated by the target video gear.
11. A computer device, comprising: the data processing method according to any one of claims 1-9, comprising a processor, a communication interface and a memory, said processor, said communication interface and said memory being interconnected, wherein said memory stores executable program code, said processor being adapted to invoke said executable program code.
12. A computer readable storage medium, characterized in that the computer readable storage medium has stored therein computer instructions, which when run on a computer, cause the computer to implement the data processing method according to any of claims 1-9.
CN202311667428.7A 2023-12-06 2023-12-06 Data processing method, device, computer equipment and computer readable storage medium Pending CN117768685A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311667428.7A CN117768685A (en) 2023-12-06 2023-12-06 Data processing method, device, computer equipment and computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311667428.7A CN117768685A (en) 2023-12-06 2023-12-06 Data processing method, device, computer equipment and computer readable storage medium

Publications (1)

Publication Number Publication Date
CN117768685A true CN117768685A (en) 2024-03-26

Family

ID=90309730

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311667428.7A Pending CN117768685A (en) 2023-12-06 2023-12-06 Data processing method, device, computer equipment and computer readable storage medium

Country Status (1)

Country Link
CN (1) CN117768685A (en)

Similar Documents

Publication Publication Date Title
US10271112B2 (en) System and method for dynamic adaptive video streaming using model predictive control
CN103813213B (en) Real-time video sharing platform and method based on mobile cloud computing
US7633887B2 (en) On demand peer-to-peer video streaming with multiple description coding
CN113068052B (en) Method for determining brushing amount of live broadcast room, live broadcast method and data processing method
US20220303043A1 (en) Server selected variable bitrate streaming
CN104378665A (en) Distributed transcoding system and method based on digital television
CN101015191A (en) System for layering content for scheduled delivery in a data network
US11997353B2 (en) Network time-shift buffering, recording conversion, and content management
KR102652518B1 (en) Session based adaptive playback profile decision for video streaming
CN111093094A (en) Video transcoding method, device and system, electronic equipment and readable storage medium
US20140189760A1 (en) Method and system for allocating wireless resources
CN102138336B (en) Moving-picture image data-distribution method
Van Ma et al. NFV-based mobile edge computing for lowering latency of 4K video streaming
CN109587511A (en) More equipment net cast methods, equipment, system and storage medium
WO2023109925A1 (en) Universal computing task cooperation system
Colonnese et al. Cloud-assisted buffer management for http-based mobilevideo streaming
US20130243082A1 (en) Rate optimisation for scalable video transmission
CN111417001B (en) Video transmission method, device, server and storage medium
US8977776B1 (en) Content streaming with bandwidth management
CN117768685A (en) Data processing method, device, computer equipment and computer readable storage medium
CN115589489B (en) Video transcoding method, device, equipment, storage medium and video on demand system
WO2023104186A1 (en) Highly-efficient and low-cost cloud game system
CN115955578A (en) Live streaming scheduling method and device
Yang et al. Intelligent cache and buffer optimization for mobile VR adaptive transmission in 5G edge computing networks
Koch et al. Media download optimization through prefetching and resource allocation in mobile networks

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination