Video processing method and device, electronic equipment and storage medium

By rationally scheduling video processing tasks based on the priority of video segmentation tasks and the performance information of data source locations, the problem of low video analysis efficiency in large-scale security monitoring systems is solved, and efficient and accurate video processing is achieved.

CN122160532APending Publication Date: 2026-06-05ZHEJIANG UNIVIEW TECH CO LTD +1

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
ZHEJIANG UNIVIEW TECH CO LTD
Filing Date
2024-12-04
Publication Date
2026-06-05

Smart Images

  • Figure CN122160532A_ABST
    Figure CN122160532A_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a video processing method and device, electronic equipment and storage medium. The method comprises: loading a to-be-processed video slice task into a video processing waiting area according to first video attribute information of each to-be-processed video slice task; determining, for each video data source point, current performance benchmark information corresponding to the video data source point in a current task processing period; determining second video attribute information of the to-be-processed video slice task in the video processing waiting area in the current task processing period based on the current performance benchmark information corresponding to each video data source point in the current task processing period; and sequentially scheduling and issuing the to-be-processed video slice task in the video processing waiting area based on the second video attribute information of the to-be-processed video slice task in the video processing waiting area in the current task processing period. The present scheme can reduce the waste of video analysis computing power caused by video streaming performance and other problems in the video analysis process.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of image processing technology, and in particular to a video processing method, apparatus, electronic device, and storage medium. Background Technology

[0002] With the rapid development of technology, AI-based video analytics, with its powerful data analysis and pattern recognition capabilities, has become an important auxiliary detection method. However, dedicated AI chips are relatively expensive. In large-scale security monitoring systems, equipping all cameras with AI chips capable of real-time analysis would significantly increase costs. The conventional approach is to quickly analyze videos near the incident location, but this method cannot quickly and efficiently perform intelligent analysis on these specific videos under limited AI equipment resources. This results in insufficient accuracy and timeliness of video analysis, failing to meet the practical needs of security work in areas such as rapid video detection and analysis. Summary of the Invention

[0003] This invention provides a video processing method, apparatus, electronic device, and storage medium to reduce the waste of video analysis computing power caused by problems such as video streaming performance during video analysis, thereby improving the overall video analysis efficiency of the system.

[0004] In a first aspect, embodiments of the present invention provide a video processing method, the method comprising:

[0005] According to the first video attribute information of each pending video segment task, the pending video segment tasks are loaded into the video processing waiting area. The pending video segment tasks are tasks that perform video processing on the pending video segments. The first video attribute information is used to indicate the order in which each pending video segment task is loaded into the video processing waiting area. The first video attribute information is determined according to the priority order of the pending video segments associated with each pending video segment task before video segmentation.

[0006] For each video data source location, determine the current performance benchmark information corresponding to the video data source location within the current task processing cycle. The video data source location is the shooting device used to capture the video to be processed associated with the task of capturing the video segment to be processed. The performance benchmark information is used to characterize the ability and efficiency of acquiring video streams from the video data source location at different task processing times within the same task processing cycle.

[0007] Based on the current performance benchmark information of each video data source point in the current task processing cycle, the second video attribute information of the video segment task to be processed in the video processing waiting area in the current task processing cycle is determined. The second video attribute information is used to indicate the scheduling priority order when scheduling and issuing the target video processing task to be processed in the video task waiting area in different task processing time periods in the current task processing cycle.

[0008] Based on the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle, the video segment tasks to be processed in the video processing waiting area are scheduled and issued sequentially.

[0009] Secondly, embodiments of the present invention also provide a video processing apparatus, the apparatus comprising:

[0010] The loading module is used to load the video segment tasks to be processed into the video processing waiting area according to the first video attribute information of each video segment task to be processed. The video segment task to be processed is a task that performs video processing on the video segment to be processed. The first video attribute information is used to indicate the order in which each video segment task to be processed is loaded into the video processing waiting area. The first video attribute information is determined according to the priority order of the video segments to be processed associated with each video segment task before video segmentation.

[0011] The first determining module is used to determine the current performance benchmark information corresponding to the video data source point in the current task processing cycle for each video data source point. The video data source point is a shooting device used to capture the video to be processed associated with the video segment to be processed task. The performance benchmark information is used to characterize the ability and efficiency of acquiring video streams from the video data source point in different task processing periods within the same task processing cycle.

[0012] The second determining module is used to determine the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle based on the current performance benchmark information corresponding to each video data source point within the current task processing cycle. The second video attribute information is used to indicate the scheduling priority order when scheduling and issuing the target video processing task to be processed in the video task waiting area to be executed in different task processing periods within the current task processing cycle.

[0013] The scheduling module is used to schedule and distribute the video segment tasks to be processed in the video processing waiting area in sequence based on the second video attribute information of the video segment tasks to be processed in the current task processing cycle.

[0014] Thirdly, this invention also provides an electronic device, the electronic device comprising:

[0015] At least one processor; and

[0016] A memory communicatively connected to the at least one processor; wherein,

[0017] The memory stores a computer program that can be executed by the at least one processor, which enables the at least one processor to perform the video processing method described in any of the above embodiments.

[0018] Fourthly, this invention also provides a computer-readable medium storing computer instructions that cause a processor to execute the video processing method described in any of the above embodiments.

[0019] The technical solution of this invention determines the loading order of video segmentation tasks to be processed into the video processing waiting area through first video attribute information. This allows high-priority video segmentation tasks to enter the waiting area first, ensuring that important video content can be processed faster. This avoids the situation where critical videos may be delayed due to disordered loading, thus improving overall processing efficiency. Furthermore, the performance benchmark information corresponding to the video data source points can accurately reflect the video stream acquisition capability and efficiency performance of each video data source point during different task processing periods. Based on the performance benchmark information, second video attribute information is determined, thereby determining the scheduling priority order of video segmentation tasks to be processed during different task processing periods. This can guide the reasonable scheduling of video segmentation tasks to be processed at different points during different time periods, ensuring that resource allocation matches the actual capability of each point. This allows for the reasonable arrangement of video segmentation task processing based on the actual performance of each video data source point, making full use of resources and avoiding resource waste and over-allocation. This maximizes the utilization of limited resources and reduces the waste of video analysis computing power caused by video streaming performance issues during video analysis, further improving video processing efficiency and stability.

[0020] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description

[0021] The above and other features, advantages, and aspects of the various embodiments of the present invention will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.

[0022] Figure 1 This is a flowchart illustrating a video processing method provided in an embodiment of the present invention;

[0023] Figure 2 This is a flowchart illustrating another video processing method provided in an embodiment of the present invention;

[0024] Figure 3 This is a flowchart illustrating another video processing method provided in an embodiment of the present invention;

[0025] Figure 4 A schematic diagram of the structure of a video processing device provided in an embodiment of the present invention;

[0026] Figure 5 This is a schematic diagram of the structure of an electronic device for implementing a video processing method according to an embodiment of the present invention. Detailed Implementation

[0027] Embodiments of the present invention will now be described in more detail with reference to the accompanying drawings. While some embodiments of the invention are shown in the drawings, it should be understood that the invention can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of the invention. It should be understood that the accompanying drawings and embodiments are for illustrative purposes only and are not intended to limit the scope of protection of the invention.

[0028] It should be understood that the various steps described in the method embodiments of the present invention may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of the present invention is not limited in this respect.

[0029] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.

[0030] It should be noted that the concepts of "first" and "second" mentioned in this invention are only used to distinguish different devices, modules or units, and are not used to limit the order of functions performed by these devices, modules or units or their interdependencies.

[0031] It should be noted that the terms "a" and "a plurality of" used in this invention are illustrative rather than restrictive. Those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".

[0032] Figure 1 This is a flowchart illustrating a video processing method provided in an embodiment of the present invention. The technical solution of this embodiment is applicable to scenarios where it is necessary to rationally schedule video processing tasks in the video processing waiting area to efficiently process video tasks based on the priority of the video segments associated with the video segments to be processed and the performance of the video data source locations at different task processing cycles and time periods. This video processing method can be executed by a video processing device, which can be implemented in the form of software and / or hardware, and is generally integrated on any electronic device with network communication capabilities, such as a mobile terminal, a PC, or a server.

[0033] like Figure 1 As shown, the video processing method of this embodiment of the invention may include the following processes:

[0034] S110. Load the video segment tasks to be processed into the video processing waiting area according to the first video attribute information of each video segment task to be processed. The video segment task to be processed is the task that performs video processing on the video segment to be processed. The first video attribute information is used to indicate the order in which each video segment task to be processed is loaded into the video processing waiting area. The first video attribute information is determined according to the priority order of the video segments to be processed associated with each video segment task before video segmentation.

[0035] The video processing waiting area can be a specific region or logical space used to temporarily store pending video segment tasks. In video processing, when pending video segment tasks from different data source locations need to be processed, these tasks are loaded into the video processing waiting area, awaiting further scheduling and processing. The waiting area acts as a buffer, ensuring that the pending video segments associated with the pending tasks can enter the video processing flow in an orderly manner, without confusion or loss due to processing capacity limitations or other factors. The existence of the waiting area allows the system to better manage and coordinate video processing tasks. The pending video segment task can include a task identifier assigned to the segment, the start and end times of the segment within the video to be processed, and / or the duration of the segment.

[0036] The first video attribute information is used to indicate the order in which each video segment task is loaded into the video processing waiting area. In other words, it determines which video segment task is loaded into the video processing waiting area first and which is loaded later. The first video attribute information plays a crucial guiding role in the video processing process, primarily based on the priority order of the complete video to which each video segment task belongs before the segmentation operation is performed.

[0037] If a video to be processed is deemed to have high priority as a whole, then the video segment task extracted from that video will be assigned a first video attribute value indicating its priority for entering the video processing waiting area. This ensures that video segments associated with important videos can enter the processing flow more quickly and be processed promptly. This method achieves ordered loading of video segments of varying importance, improving the efficiency and focus of video processing. For example, videos from critical areas may be set to high priority. After these videos are segmented, the corresponding video segment tasks in the waiting area will have higher first video attribute values ​​due to the high priority of their parent videos, allowing them to be prioritized by the processing system when loaded into the video processing waiting area.

[0038] Optionally, the priority order of each video segmentation task before video segmentation is determined based on the task distribution order corresponding to the video segment and / or the sorting result of the task trigger selection. For example, after receiving the task distribution orders for each video segment from an external source, the videos are sorted and configured according to the task distribution order and / or the sorting result of the task trigger selection. The smallest unit for priority level control is the video data source point, and this priority can be modified periodically as needed.

[0039] Optionally, the video to be processed for each video data source point is segmented. The duration of the video segment associated with each video segmentation task is T_min. The value of T_min can be set according to the specific situation of the video segments, for example, a default value of 5 minutes. If the duration of the video segment associated with the last video segmentation task is less than T_min during the video segmentation process, it is still processed according to T_min. After the video segmentation process is completed, the smallest unit of task scheduling in subsequent video processing and analysis is one video segmentation task. At the same time, after the video segmentation process is completed, the video segmentation tasks, the videos to which the video segments associated with the video segmentation tasks belong, and the first video attribute information of each video segmentation task need to be stored and recorded.

[0040] By associating the first video attribute information of the video segment task with the priority of the video segment to which it belongs during the video processing stage, video segment tasks of different importance can be distinguished. In subsequent processing, the processing order and resource allocation can be reasonably arranged according to the first video attribute information associated with each video segment task. This avoids low-priority video segment tasks consuming too many resources or delaying the processing of high-priority videos, thereby improving the efficiency and targeting of the entire video processing system.

[0041] As an optional but not limited implementation, the video segment tasks to be processed are loaded into the video processing waiting area according to the first video attribute information of each task, including steps A1-A2:

[0042] Step A1: Determine the remaining available video processing resources associated with the video processing waiting area.

[0043] Step A2: Based on the remaining available video processing resources associated with the video processing waiting area, sequentially retrieve the video segment tasks to be processed from each video segment task according to the first video attribute information of each video segment task to be processed and load them into the video processing waiting area, so that the remaining available video processing resources associated with the video processing waiting area are not greater than the preset resource amount or there are no more unloaded video segment tasks to be processed.

[0044] In a video processing system, the video processing waiting area is a region used to temporarily store pending video segment tasks. Video processing resources can include computing resources (such as CPU processing power), storage resources (such as memory and hard disk space), and network resources. These resources are used to perform further video processing on the pending video segment tasks in the waiting area. The remaining available video processing resources associated with the video processing waiting area can refer to the amount of computing resources that can be used for the pending video segment tasks in the waiting area. For example, this can be calculated by monitoring the current CPU utilization, memory usage, and network bandwidth usage of the system, and then calculating the remaining available resources based on the amount of resources already used.

[0045] Optionally, the first video attribute information can be used as a basis for determining the order in which video segment tasks are loaded into the video processing waiting area. This is typically determined by the priority order of the videos to which each video segment task belongs. Based on the remaining available video processing resources, and according to the order of the video segment tasks determined by the first video attribute information, video segment tasks are sequentially selected and loaded into the video processing waiting area. The video segment tasks with the highest priority indicated by the first video attribute information are loaded first into the video processing waiting area. Furthermore, each time a video segment task is loaded, all video segment tasks with the same priority are loaded into the video processing waiting area.

[0046] Optionally, during the process of sequentially acquiring video segment tasks from each pending video segment task and loading them into the video processing waiting area, if the remaining available video processing resources associated with the video processing waiting area are not greater than a preset resource amount, loading of pending video segment tasks into the video processing waiting area is stopped. If the remaining available video processing resources associated with the video processing waiting area are greater than the preset resource amount, loading of pending video segment tasks into the video processing waiting area is restarted, and so on. Here, the preset resource amount is a pre-set threshold. When the remaining available resources reach or fall below the preset resource amount threshold, loading of pending video segment tasks is stopped to avoid overloading video processing resources.

[0047] Optionally, during the process of sequentially acquiring and loading video segment tasks from each pending video segment task into the video processing waiting area, if there are no more unloaded pending video segment tasks, loading pending video segment tasks into the video processing waiting area will also stop. This means that all pending video segment tasks have been loaded into the video processing waiting area, or there are no more pending video segment tasks available for loading.

[0048] By using the above methods, it can be ensured that the number of pending video segment tasks and processing requirements in the video processing waiting area match the actual processing capacity of the video processing resources, thus avoiding performance degradation or crashes of video processing resources due to overloading of pending video segment tasks.

[0049] S120. For each video data source point, determine the current performance benchmark information corresponding to the video data source point within the current task processing cycle. The video data source point is the shooting device used to capture and obtain the video to be processed in the video segment task. The performance benchmark information is used to characterize the ability and efficiency of acquiring video streams from the video data source point in different task processing periods within the task processing cycle.

[0050] The video segments to be processed are loaded into the video processing waiting area according to their priority order. If the video segments to be processed are scheduled and distributed in the order of loading, although it can meet the need to make full use of video processing resources from the perspective of actual load and usage, in actual scenarios, some video segments to be processed may be interrupted repeatedly due to bottlenecks such as the performance of the data source. The abnormal video segments to be processed will still occupy video processing resources, which leads to the waste of video processing resources.

[0051] Therefore, for video data source locations with different types of data points, it is necessary to effectively assess the bottlenecks of each data source location. Through probing and feedback from actual business operations, the performance benchmark information for each video data source location should be gradually determined. The performance benchmark information for each video data source location should be the same or identical across different task processing cycles. This performance benchmark information is mainly used to characterize the ability and efficiency of acquiring video streams from that video data source location during different task processing periods within a task processing cycle. Based on the performance benchmark information of each video data source location and the actual video processing resources, a video analysis strategy can be formulated that balances maximizing the use of video processing resources with striving for the most stable stream acquisition from the video source location. Then, according to the video analysis strategy, each video segment task to be processed will be scheduled and distributed sequentially.

[0052] The performance of video stream acquisition can include parameters such as the maximum amount of video stream data that the video data source can provide, supported resolutions, and frame rates. For example, a high-performance video data source may be able to provide high-resolution, high-frame-rate video streams, while a lower-performance video data source may be limited in these aspects. The efficiency of video stream acquisition can involve the speed and stability of the acquisition. For instance, at certain times, the video stream acquisition speed from a particular video data source may be fast, without stuttering or packet loss, indicating good efficiency; while at other times, due to network problems or equipment failures, the acquisition speed may slow down or become unstable, resulting in decreased efficiency. By determining these performance benchmarks, we can better understand the actual performance of each video data source at different times, and thus, in subsequent video processing, make reasonable task allocation and scheduling based on this information to improve the overall efficiency and stability of video processing.

[0053] S130. Based on the current performance benchmark information corresponding to each video data source point in the current task processing cycle, determine the second video attribute information of the video segment tasks to be processed in the video processing waiting area in the current task processing cycle. The second video attribute information is used to indicate the scheduling priority order when scheduling and issuing the target video processing task to be processed in the video task waiting area in different task processing periods in the current task processing cycle.

[0054] Within the current task processing cycle, the current performance benchmark information for each video data source location has been determined. This performance benchmark information reflects the capability and efficiency of each video data source location in acquiring video streams from that location during different task processing periods. By comparing and analyzing the performance-related data of video data source locations acquiring video streams during different task processing periods, the second video attribute information of the pending video segment tasks in the video processing waiting area within the current task processing cycle can be obtained. The second video attribute information has a specific purpose: to indicate the scheduling priority order when scheduling and issuing pending video segment tasks in the video task waiting area to execute the target video processing task during different task processing periods within the current task processing cycle.

[0055] The order in which video data source tasks are scheduled for processing in different task processing periods is determined by the performance of each video data source location. If a video data source location performs well during a task processing period, its corresponding video data segment task may be given a higher scheduling priority when scheduled from the video processing waiting area during that period. Conversely, if a video data source location performs poorly during a task processing period, its corresponding video data segment task may be given a lower scheduling priority when scheduled from the video processing waiting area during that period.

[0056] By adopting the above method, system resources can be utilized more rationally, ensuring that video segmentation tasks can be scheduled and processed efficiently based on the actual performance of video data source points during different task processing periods, thereby improving the overall operating efficiency and quality of the video processing system.

[0057] S140. Based on the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle, schedule and distribute the video segment tasks to be processed in the video processing waiting area in sequence.

[0058] Within the current task processing cycle, the second video attribute information of the video segment tasks awaiting processing in the video processing waiting area has been determined. This second video attribute information indicates the scheduling priority order when scheduling and issuing the video segment tasks awaiting processing in the video processing waiting area to the target video processing task during different task processing periods within the current task processing cycle. Therefore, based on this second video attribute information, the video segment tasks awaiting processing in the video processing waiting area can be scheduled and issued sequentially.

[0059] Specifically, video segment tasks can be selected one by one from the video processing waiting area according to the priority order determined by the second video attribute information. These sequentially selected tasks are then scheduled and dispatched to subsequent video processing stages. This process ensures that high-priority video segment tasks are processed first, thereby improving the efficiency and response speed of the entire video processing system. For example, if a video segment task is assigned a high priority in the second video attribute information, it will be selected and sent to the next processing stage earlier, potentially for video analysis or encoding. Lower-priority video segment tasks will be scheduled and dispatched after higher-priority tasks have been processed or when system resources allow. In this way, the processing order of each video segment task can be rationally arranged according to different task requirements and resource conditions, achieving a more efficient video processing workflow.

[0060] The technical solution of this invention determines the loading order of video segmentation tasks to be processed into the video processing waiting area through first video attribute information. This allows high-priority video segmentation tasks to enter the waiting area first, ensuring that important video content can be processed faster. This avoids the situation where critical videos may be delayed due to disordered loading, thus improving overall processing efficiency. Furthermore, the performance benchmark information corresponding to the video data source points can accurately reflect the video stream acquisition capability and efficiency performance of each video data source point during different task processing periods. Based on the performance benchmark information, second video attribute information is determined, thereby determining the scheduling priority order of video segmentation tasks during different task processing periods. This can guide the reasonable scheduling of video segmentation tasks at different points during different time periods, ensuring that resource allocation matches the actual capabilities of each point. This allows for the reasonable arrangement of video segmentation task processing based on the actual performance of each video data source point, making full use of resources and avoiding resource waste and over-allocation. This maximizes the utilization of limited resources and reduces the waste of video analysis computing power caused by video streaming performance issues during video analysis, further improving video processing efficiency and stability.

[0061] Figure 2 This is a flowchart illustrating another video processing method provided by an embodiment of the present invention. The technical solution of this embodiment further optimizes the process of determining the current performance benchmark information corresponding to the video data source point within the current task processing cycle in the foregoing embodiments based on the technical solutions of the above embodiments. This embodiment can be combined with various optional solutions in one or more of the above embodiments.

[0062] like Figure 2 As shown, the video processing method of this embodiment of the invention may include the following processes:

[0063] S210. According to the first video attribute information of each pending video segment task, load the pending video segment tasks into the video processing waiting area. The pending video segment task is the task that performs video processing on the pending video segment. The first video attribute information is used to indicate the order in which each pending video segment task is loaded into the video processing waiting area. The first video attribute information is determined according to the priority order of the pending video segments associated with each pending video segment task before video segmentation.

[0064] S220. For each video data source location, determine the reference attribute data corresponding to the video data source location within the current task processing cycle. The reference attribute data is at least one reference detection data or reference performance benchmark information. Each reference attribute data is the performance detection data obtained by detecting the reference performance of the video data source location within each reference task processing cycle. The reference performance benchmark information is the performance benchmark information corresponding to the video data source location within the previous reference task processing cycle of the current task processing cycle. Each reference task processing cycle is a historical time period before the current task processing cycle. Each task processing cycle is divided into a preset number of task processing time periods.

[0065] Among them, the video data source point is the shooting device used to capture and acquire the video to be processed in the video segment task. The performance benchmark information is used to characterize the ability and efficiency of acquiring video streams from the video data source point at different task processing time periods within the task processing cycle.

[0066] Reference detection data can be performance detection data obtained by detecting the reference performance of video data source locations, and this detection is performed within each reference task processing cycle. Each reference task processing cycle is a historical time period preceding the current task processing cycle. For example, if the current task processing cycle is today, then the reference task processing cycle might be yesterday, the day before yesterday, or other past time periods. Within these reference task processing cycles, a series of reference detection data are obtained by detecting the performance of the video data source locations, and this data can reflect the performance of that location at different times in the past.

[0067] Reference performance benchmark information can be the performance benchmark information corresponding to the video data source location in the previous reference task processing cycle of the current task processing cycle. Performance benchmark information is usually used to characterize the ability and efficiency of acquiring video streams from the video data source location at different task processing times within a task processing cycle. Therefore, reference performance benchmark information is the performance data of this location in the previous historical task processing cycle.

[0068] Each task processing cycle is divided into a preset number of task processing time slots. This division allows the system to more finely analyze and manage the performance of video data source points at different time segments. For example, a task processing cycle can be a day, divided into 24-hour task processing time slots, or further divided into smaller time slots according to actual needs, in order to more accurately understand the performance changes of video data source points at different times. By determining these reference attribute data, a better understanding of the historical performance of video data source points can be achieved, thereby providing a reference for decision-making within the current task processing cycle and improving video processing efficiency and stability.

[0069] As an optional but not limited implementation, determining the reference attribute data corresponding to the video data source location within the current task processing cycle includes the following steps B1-B2:

[0070] Step B1: For at least one reference task processing cycle, obtain reference detection data for the reference performance of the video data source points during different task processing periods in each reference task processing cycle. The reference performance is described by query concurrency performance, streaming concurrency performance, and / or streaming anomaly frequency. Query concurrency performance is the number of concurrent video stream queries supported per unit time. Streaming concurrency performance is the number of concurrent video streams supported per unit time. Streaming anomaly frequency is the number of streaming anomalies that occur per unit time during continuous acquisition of video streams.

[0071] Step B2: Based on the reference detection data obtained within at least one reference task processing cycle, determine the reference attribute data corresponding to the video data source location within the current task processing cycle.

[0072] Depending on the specific scenario, a task processing cycle (e.g., 24 hours in a day) can be divided into several task processing periods. Assuming the number of task processing periods is n, each task processing period can be represented by TS1 to TS2. n This indicates that performance monitoring for each video data source point will be initiated periodically during each task processing period. If no actual video task is being executed within a task processing period, full performance data monitoring will be used. If an actual video processing task is being performed within a task processing period, and the video processing task does not have any anomalies related to streaming performance, performance monitoring of the video data source point will be supplemented based on performance analysis, without affecting normal functionality. If the video processing task has streaming anomalies, the streaming anomaly data at that time will be used as the monitoring data for performance monitoring of the video data source point at the current moment.

[0073] When detecting the reference performance of video data source points, the reference performance can include three parts: query concurrency performance, denoted by Q, in times / second, indicating how many concurrent queries can be supported per second; streaming concurrency performance, denoted by B, in channels / second, indicating how many concurrent streaming channels can be supported per second; and streaming anomaly frequency, denoted by A, in times / minute, indicating the number of anomalies per minute during continuous streaming. Streaming concurrency and query concurrency are gradually obtained through testing with concurrent calls from low to high frequency. Streaming anomaly frequency is obtained by continuously streaming for 5 minutes and recording the number of anomalies during that time. The specific recording and representation methods are shown in Table 1 below.

[0074] Table 1

[0075] Time period <![CDATA[TS1]]> <![CDATA[TS2]]> <![CDATA[TS3]]> <![CDATA[TS4]]> … <![CDATA[TS n ]]> <![CDATA[Query concurrency performance Q i (times per second)]]> <![CDATA[Q1]]> <![CDATA[Q2]]> <![CDATA[Q3]]> <![CDATA[Q4]]> … <![CDATA[Q n ]]> <![CDATA[Concurrent Fetch Performance B i (routes / second)]]> <![CDATA[B1]]> <![CDATA[B2]]> <![CDATA[B3]]> <![CDATA[B4]]> … <![CDATA[B n ]]> <![CDATA[Abnormal flow rate frequency A i (times / minute)]]> <![CDATA[A1]]> <![CDATA[A2]]> <![CDATA[A3]]> <![CDATA[A4]]> … <![CDATA[A n ]]>

[0076] As an optional but not limited implementation, the reference performance of the video data source location is detected, including the following steps C1-C2:

[0077] Step C1: Detect the query concurrency performance of video data source points by gradually increasing the frequency of concurrent query requests per unit time when querying video streams from video data source points.

[0078] Step C2: Detect the concurrent streaming performance of the video data source point by gradually increasing the number of concurrent streaming paths per unit time when acquiring video streams from the video data source point.

[0079] Step C3: Detect abnormal streaming frequency by continuously performing a streaming operation for a preset duration when acquiring video streams from video data source locations.

[0080] S230. Based on the reference attribute data corresponding to the video data source points within the current task processing cycle, determine the current performance benchmark information corresponding to the video data source points.

[0081] The performance benchmark information set on the current day is not effective; a historical analysis strategy is adopted overall, and this strategy is activated after one task processing cycle. The rules for generating benchmark performance information after each task processing cycle are as follows: the performance benchmark information for each task processing period is the average of the performance monitoring data for the corresponding task processing period over the past three consecutive days. If the historical performance benchmark information records less than three days, the performance benchmark information of the previous day is used; if there is no performance benchmark information for the previous day, the performance monitoring data of the previous day is used as the performance benchmark information for the corresponding task processing period of the current task processing cycle; otherwise, the set historical analysis strategy is adopted.

[0082] S240. Based on the current performance benchmark information corresponding to each video data source point in the current task processing cycle, determine the second video attribute information of the video segment tasks to be processed in the video processing waiting area in the current task processing cycle. The second video attribute information is used to indicate the scheduling priority order when scheduling and issuing the target video processing task to be processed in the video task waiting area in different task processing periods in the current task processing cycle.

[0083] S250. Based on the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle, schedule and distribute the video segment tasks to be processed in the video processing waiting area in sequence.

[0084] The technical solution of this invention determines the loading order of video segmentation tasks to be processed into the video processing waiting area through first video attribute information. This allows high-priority video segmentation tasks to enter the waiting area first, ensuring that important video content can be processed faster. This avoids the situation where critical videos may be delayed due to disordered loading, thus improving overall processing efficiency. Furthermore, the performance benchmark information corresponding to the video data source points can accurately reflect the video stream acquisition capability and efficiency performance of each video data source point during different task processing periods. Based on the performance benchmark information, second video attribute information is determined, thereby determining the scheduling priority order of video segmentation tasks to be processed during different task processing periods. This can guide the reasonable scheduling of video segmentation tasks to be processed at different points during different time periods, ensuring that resource allocation matches the actual capabilities of each point. This allows for the reasonable arrangement of processing of video segmentation tasks to be processed based on the actual performance of each video data source point, making full use of resources and avoiding resource waste and over-allocation. This maximizes the utilization of limited resources, further improving video processing efficiency and stability.

[0085] Figure 3 This is a flowchart illustrating another video processing method provided by an embodiment of the present invention. The technical solution of this embodiment further optimizes the process of determining the second video attribute information of the video segment task to be processed in the video processing waiting area within the current task processing cycle based on the current performance benchmark information corresponding to each video data source point within the current task processing cycle in the aforementioned embodiment. This embodiment can be combined with various optional solutions in one or more of the above embodiments.

[0086] like Figure 3 As shown, the video processing method of this embodiment of the invention may include the following processes:

[0087] S310. According to the first video attribute information of each pending video segment task, load the pending video segment tasks into the video processing waiting area. The pending video segment task is the task that performs video processing on the pending video segment. The first video attribute information is used to indicate the order in which each pending video segment task is loaded into the video processing waiting area. The first video attribute information is determined according to the priority order of the pending video segments associated with each pending video segment task before video segmentation.

[0088] S320. For each video data source point, determine the current performance benchmark information corresponding to the video data source point within the current task processing cycle. The video data source point is the shooting device used to capture and acquire the video to be processed in the video segment task. The performance benchmark information is used to characterize the ability and efficiency of acquiring video streams from the video data source point in different task processing periods within the task processing cycle.

[0089] S330. Determine at least one current task processing period associated with the pending video segment tasks in the video processing waiting area. The at least one current task processing period is the multiple task processing periods occupied by the target video processing task within the current task processing cycle after all pending video segment tasks in the video processing waiting area have been executed since the current time.

[0090] For the pending video segment tasks in the video processing waiting area, it is necessary to determine at least one associated current task processing period. First, the current task processing cycle is a specific time range within which various video processing tasks are scheduled and executed. The pending video segment tasks in the video processing waiting area need to undergo target video processing tasks, such as encoding and analysis, before they can be processed. Starting from the current moment, predicting the multiple task processing periods occupied by all these pending video segment tasks to complete the target video processing task constitutes the associated current task processing period for these pending video segment tasks. For example, if the current time is 10:00 AM, it is estimated that the pending video segment tasks in the video processing waiting area may need to complete the target video processing task gradually over multiple time periods, such as 10:00 AM to 11:00 AM, 2:00 PM to 3:00 PM, etc. These time periods constitute at least one associated current task processing period for these pending video segment tasks.

[0091] The significance of adopting the above scheme and determining these task processing periods is that it allows for better planning of resource allocation, task scheduling, and other operations, so as to provide the necessary processing resources for these pending video segment tasks at the appropriate time, ensuring that video processing tasks can be carried out efficiently and in an orderly manner.

[0092] As an optional but not limited implementation, determining at least one current task processing period associated with the video segment task to be processed in the video processing waiting area includes the following steps D1-D3:

[0093] Step D1: Determine the number of first and second segment tasks corresponding to the video processing waiting area. The number of first segment tasks is the number of video segment tasks loaded into the video processing waiting area when the loading of video segment tasks to be processed is triggered. The number of second segment tasks is the number of video segment tasks that were originally in the video processing waiting area but have not yet completed the target video processing task when the loading of video segment tasks to be processed is triggered.

[0094] The first segment task count refers to the actual number of video segment tasks loaded into the video processing waiting area when the action of loading video segment tasks into the waiting area is triggered. For example, if the system decides to add new video segment tasks to the waiting area at a certain moment, the number of newly added video segment tasks is the first segment task count. The second segment task count refers to the number of existing video segment tasks in the video processing waiting area that have not yet completed their target video processing tasks when the action of loading video segment tasks into the waiting area is triggered. In other words, it refers to the number of video segment tasks that already existed in the waiting area before the new loading action occurred, those that have not yet been processed by the target video processing task (such as encoding, analysis, etc.).

[0095] Step D2: Determine the number of third-segment tasks associated with the video processing waiting area. The number of third-segment tasks is the total number of concurrent video segment tasks that the target video processing resources associated with the video processing waiting area can support for executing the target video processing tasks.

[0096] The third-level task count represents the maximum number of concurrent video chunks that the target video processing resources associated with the video processing waiting area can support for processing the target video processing task. Different video processing resources have different processing capabilities, and this count reflects the maximum number of video chunks that these resources can process simultaneously within the same timeframe. For example, if the system has powerful processing resources, it may be able to process more video chunks simultaneously, resulting in a larger third-level task count; conversely, if resources are limited, the third-level task count will be relatively smaller.

[0097] Step D3: Based on the number of first segment tasks, the number of second segment tasks, the number of third segment tasks, and the time length of each pending video segment task in the video processing waiting area, determine at least one current task processing period associated with the pending video segment tasks in the video processing waiting area.

[0098] Specifically, based on the number of first, second, and third video segment tasks, and the duration of each pending video segment task in the video processing waiting area, at least one current task processing period associated with the pending video segment tasks in the video processing waiting area is determined. First, the three types of pending video segment task numbers determined earlier are considered comprehensively. The first segment task number represents newly added pending video segment tasks, the second segment task number represents existing unfinished pending video segment tasks in the video processing waiting area, and the third segment task number represents the limitation of video processing resources. Then, combined with the duration of each pending video segment task, the time required to process these pending video segment tasks is predicted. For example, if each video segment task has a long duration and a large number of pending video segment tasks, while the system processing resources are limited (the number of third segment tasks is small), then processing these pending video segment tasks may take a long time and span multiple task processing periods. Ultimately, at least one current task processing period is determined for each video segment task in the video processing waiting area. This means predicting the timeframe that these video segment tasks might take to complete the target video processing task from the current moment. This allows the system to better plan resource allocation and task scheduling, ensuring that video processing tasks can be completed within a reasonable timeframe.

[0099] For example, when each pending video segment task is loaded into the video processing waiting area, the predicted analysis time T when the target video processing is completed is calculated by combining the existing pending video segment tasks in the video processing waiting area. all The specific method is as follows: For each video data source point, count the number of pending video segment tasks in the video processing waiting area. This number can be represented by N. r This is represented. Then, the number of available video processing resources that trigger the loading moment (that is, the maximum total number of concurrent video processing channels supported by the target video processing resources at the loading moment) is further summarized, denoted by N. ar This indicates that at the time of loading, the total number of pending video segment tasks that have not yet completed their target video processing tasks is N. h Therefore, the time required to complete the predictive analysis for all videos to be processed is: T all =((N) r +N h ) / N ar +H)*T min H is a fault tolerance parameter, which requires H>1; the default value of H is 2.

[0100] S340. For each video data source point within the current task processing cycle, based on the current performance benchmark information corresponding to each video data source point within the current task processing cycle, determine the scheduling priority corresponding to each video data source point. The scheduling priority corresponding to each video data source point is determined based on the scheduling effect when polling and scheduling the pending video segment tasks corresponding to each video data source point during different current task processing periods within the current task processing cycle.

[0101] For each video data source location within the current task processing cycle, the following operations are required to determine its scheduling priority. Based on the current performance benchmark information corresponding to each video data source location within the current task processing cycle, this performance benchmark information characterizes the ability and efficiency of acquiring video streams from that video data source location at different task processing times within the current task processing cycle. For example, the performance benchmark information may include metrics such as the amount of video stream data that the video data source location can provide at different times, and its stability. The scheduling priority corresponding to each video data source location is determined based on this performance benchmark information. Specifically, the determination method is based on the scheduling effect when polling and scheduling the video segment tasks corresponding to each video data source location during different current task processing times within the current task processing cycle.

[0102] Scheduling effectiveness can be considered from multiple aspects. For example, if video segment tasks from a specific video data source can be processed quickly without causing system congestion during a particular time period, then that source has good scheduling effectiveness during that time period and may be assigned a higher scheduling priority. Conversely, if a source performs poorly in certain time periods, such as causing processing delays or excessive resource consumption, its scheduling priority may be reduced. Determining the scheduling priority of each video data source in this way allows the system to more rationally schedule video segment tasks from different sources during different task processing periods, making full use of system resources and improving the efficiency and quality of video processing.

[0103] As an optional but not limited implementation, the scheduling priority for each video data source point is determined based on the current performance benchmark information of each video data source point within the current task processing cycle, including the following steps E1-E2:

[0104] Step E1: Based on the current performance benchmark information of each video data source point within the current task processing cycle and at least one current task processing period associated with the video segment tasks to be processed in the video processing waiting area, determine the scheduling attribute information corresponding to each video data source point. The scheduling attribute information corresponding to each video data source point is described by first attribute information, second attribute information, and / or third attribute information. The first attribute information is the degree of variation in streaming concurrent performance determined based on the fluctuation of streaming concurrent performance when acquiring video streams from each video data source point in different current task processing periods within at least one current task processing period. The second attribute information is the level of streaming concurrent performance determined based on the magnitude of streaming concurrent performance when acquiring video streams from each video data source point in different current task processing periods within at least one current task processing period. The third attribute information is the streaming stability determined by the magnitude of the number of streaming anomalies when acquiring video streams from each video data source point in different current task processing periods within at least one current task processing period.

[0105] Specifically, the time T for predictive analysis was calculated. all Then, combining the video data source locations, starting from the current time and moving forward T... all Intra-period performance benchmark information. Utilizing a relative time-period performance priority model f LV (A i B i ), calculate the scheduling priority corresponding to each video data source point, and then calculate the second video attribute information of the pending video segment tasks in the video processing waiting area within the current task processing cycle, which is used for subsequent polling and scheduling of each pending video segment task in the video processing waiting area. If T all If, after a certain time, there are still pending video segment tasks at that video data source location in the video processing waiting area, the scheduling priority of each video data source location in each task processing period is recalculated. The specific calculation process for the first attribute information, the second attribute information, and / or the third attribute information is as follows:

[0106] 1) First attribute information: Time-period fluctuation score f of the video data source location CV :

[0107] For each video data source location, statistics are collected from TS1 to TS2. n The concurrent performance of video stream acquisition from various video data source locations within a given time period. The coefficient of variation (CV) of the concurrent performance of video stream acquisition from each video data source location is calculated, where B... i This refers to the concurrent streaming performance during the corresponding task processing period. The corresponding calculation method is as follows:

[0108]

[0109] Based on the variation coefficient of concurrent streaming performance when acquiring video streams from various video data source locations, the video data source locations can be divided into time periods of streaming performance fluctuation (CV≥TH). cv ) and time-stability (CV) <TH cv ) has two categories, among which TH cv This is the threshold for time-period variation, and its value can be adjusted according to the actual scenario; the default value is 0.1. Based on this definition, the time-period fluctuation score for the point-of-origin data retrieval performance is determined, with a stable score of 0 and a fluctuating score of 1. The specific description is as follows:

[0110]

[0111] 2) Second attribute information: relative peak segment score f for each time period B :

[0112] For video data source locations with time-varying fluctuations, based on TS1 to TS n The relative magnitude of concurrent streaming performance across different task processing periods is used to define relative peak streaming levels. These can be broadly categorized into three levels: relative peak streaming, relative mid-peak streaming, and relative low-peak streaming. These levels are based on T... all The maximum and minimum values ​​of the streaming performance within a given time period are averaged. Specifically, for peak periods: during T... all During the time period, the flow extraction performance is greater than Within the range, the relative peak segment fraction is set to 1; low peak segment: in T all During the time period, the flow extraction performance is less than For each time period, the relative peak score for the flow is set to -1; for the middle peak period: the rest are middle peak periods, and the relative peak score for the flow is set to 0.

[0113] Based on this, the relative peak segment fraction can be expressed by the following formula: B i The streaming concurrency performance of the i-th task processing period is represented by the following method:

[0114]

[0115] 3) Third attribute information: Flow stability score f A :

[0116] For different task processing periods at different video data source locations, streaming stability is divided into three levels: Level 1, Level 2, and Level 3. For each stability level, a streaming stability score is assigned. Level 1 indicates the most stable streaming with the fewest anomalies, thus having the highest relative stability score (0). Level 3 indicates the most unstable streaming with the highest number of anomalies, resulting in a relative stability score of -2. Level 2 indicates moderate stability, with a score of -1.μA The threshold can be adjusted according to environmental and system requirements; the default value is 0.3. The specific method for determining the relative stability score of the flow is as follows:

[0117]

[0118] Among them, A i This represents the query concurrency performance during the processing period of the i-th task.

[0119] Step E2: Determine the scheduling priority for each video data source point based on the scheduling attribute information corresponding to each video data source point.

[0120] Among them, the degree of variation in flow concurrency performance indicated by scheduling attribute information is negatively correlated with scheduling priority, the level of flow concurrency performance indicated by scheduling attribute information is positively correlated with scheduling priority, and the stability of flow extraction indicated by scheduling attribute information is positively correlated with scheduling priority.

[0121] Based on the time-period fluctuation score, relative peak segment score, and flow stability score corresponding to the first, second, and / or third attribute information, respectively, data with stable flow is prioritized for processing; tasks with time-period fluctuation are prioritized during peak periods, and those with poor flow stability are given lower priority. The overall priority is divided into 7 levels, labeled 1 to 7, with larger numbers indicating higher priority, thus providing an advantage in subsequent round-robin scheduling. The specific calculation process, based on the time-period fluctuation score, relative peak segment score, and flow stability score corresponding to the first, second, and / or third attribute information, is expressed by the following formula:

[0122] f LV (A i B i )=5+2*f A (A i )+f CV (B i ,B1,B2,…,B n )*(f B (B i ,B1,B2,…,B n )+1)

[0123] S350. Based on the scheduling priority of each video data source point within the current task processing cycle, determine the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle.

[0124] The second video attribute information is used to indicate the scheduling priority order when scheduling and issuing the target video processing task to be processed in the video task waiting area during different task processing periods within the current task processing cycle.

[0125] S360. Based on the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle, schedule and distribute the video segment tasks to be processed in the video processing waiting area in sequence.

[0126] As an optional but not limited implementation, based on the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle, the video segment tasks to be processed in the video processing waiting area are scheduled and issued sequentially, including the following steps F1-F2:

[0127] Step F1: For different task processing periods in the current task processing cycle, determine the reference scheduling order information based on the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle. The reference scheduling order information is used to indicate the order in which the video segment tasks to be processed in the video processing waiting area are scheduled and issued to execute the target video processing task in each task processing period of the current task processing cycle.

[0128] Step F2: Based on the reference scheduling order information and the preset scheduling constraint information, the pending video segment tasks in the video processing waiting area are scheduled and distributed by polling multiple times during each task processing period of the current task processing cycle. The preset scheduling constraint information is used to constrain the number of pending video segment tasks from video data source points in each poll.

[0129] The preset scheduling constraints are described using at least one of the following: Video segment tasks with higher scheduling priority should be scheduled and distributed before those with lower scheduling priority; for video segment tasks from the same video data source location, the number of video segment tasks acquired in the same poll is no greater than the number of video segment tasks associated with the scheduling priority of that video data source location; for video segment tasks from the same video data source location, the query concurrency performance generated by the number of video segment tasks acquired in the same poll is no greater than the query concurrency performance of the task processing period in which that poll occurs; the sum of the number of video segment tasks currently being scheduled to execute the target video processing task and the number of video segment tasks from the same video data source location in the same poll is no greater than the streaming concurrency performance of the task processing period in which that poll occurs.

[0130] The process employs a timed polling strategy to schedule and distribute video segment tasks in the video processing waiting area. This scheduling is based on the second video attribute information of each task. The polling interval is set to 1 second. During each polling and scheduling process, the system first collects available video processing resources. Then, for the current task processing time period, it calculates the scheduling priority of each video data source point within that time period based on the second video attribute information of the video segment tasks in the waiting area. The video data source points of all waiting video segment tasks are then sorted from highest to lowest priority. Subsequently, the scheduling order of each video segment task is determined according to the sorted video data source points. This process is repeated multiple times to obtain valid video segment tasks and distribute them for the target video processing task. The strategy for obtaining video segment tasks in each loop is as follows:

[0131] (1) Video data source points with higher priority are first pulled to execute the target video processing task; (2) In each polling scheduling loop, the number of video data source points to be processed shall not exceed the number of segments that the scheduling priority of the video data source point at the current time satisfies; (3) In the current polling scheduling loop, the number of video data source points to be processed that have been obtained shall not exceed the baseline query performance Q of the video data source point in the current task processing period. i (4) The sum of the number of pending video segment tasks being analyzed at the video data source point and the number of pending video segment tasks already acquired in the current polling must not exceed the baseline streaming performance B of the time segment at the current moment. i (5) In each loop, acquire as many video segments as possible from each location. For multiple loops, the termination condition must meet at least one of the following conditions: (1) In the polling scheduling loop, the number of valid videos to be processed is 0; (2) After the task is sent to each target video processing resource, the number of remaining video processing resources is 0.

[0132] The technical solution of this invention determines the loading order of video segmentation tasks to be processed into the video processing waiting area through first video attribute information. This allows high-priority video segmentation tasks to enter the waiting area first, ensuring that important video content can be processed faster. This avoids the situation where critical videos may be delayed due to disordered loading, thus improving overall processing efficiency. Furthermore, the performance benchmark information corresponding to the video data source points can accurately reflect the video stream acquisition capability and efficiency performance of each video data source point during different task processing periods. Based on the performance benchmark information, second video attribute information is determined, thereby determining the scheduling priority order of video segmentation tasks to be processed during different task processing periods. This can guide the reasonable scheduling of video segmentation tasks to be processed at different points during different time periods, ensuring that resource allocation matches the actual capabilities of each point. This allows for the reasonable arrangement of processing of video segmentation tasks to be processed based on the actual performance of each video data source point, making full use of resources and avoiding resource waste and over-allocation. This maximizes the utilization of limited resources, further improving video processing efficiency and stability.

[0133] Figure 4 This is a schematic diagram of a video processing device provided in an embodiment of the present invention. The technical solution of the present invention is applicable to scenarios where it is necessary to reasonably schedule video segmentation tasks in the video processing waiting area to efficiently process video tasks based on the priority of the video to be processed and the performance of the video data source location in different task processing cycles and time periods. The video processing device can be implemented in the form of software and / or hardware, and is generally integrated on any electronic device with network communication function, such as a mobile terminal, PC, or server.

[0134] like Figure 4 As shown, the video processing apparatus of this embodiment may include the following:

[0135] The loading module 410 is used to load the video segment tasks to be processed into the video processing waiting area according to the first video attribute information of each video segment task to be processed. The video segment task to be processed is a task that performs video processing on the video segment to be processed. The first video attribute information is used to indicate the order in which each video segment task to be processed is loaded into the video processing waiting area. The first video attribute information is determined according to the priority order of the video segments to be processed associated with each video segment task before video segmentation.

[0136] The first determining module 420 is used to determine the current performance benchmark information corresponding to the video data source point in the current task processing cycle for each video data source point. The video data source point is a shooting device used to capture the video to be processed associated with the video segment to be processed task. The performance benchmark information is used to characterize the ability and efficiency of acquiring video streams from the video data source point in different task processing periods within the same task processing cycle.

[0137] The second determining module 430 is used to determine the second video attribute information of the video segment task to be processed in the video processing waiting area in the current task processing cycle based on the current performance benchmark information corresponding to each video data source point in the current task processing cycle. The second video attribute information is used to indicate the scheduling priority order when scheduling and issuing the target video processing task to be processed in the video task waiting area to be executed in different task processing time periods in the current task processing cycle.

[0138] The scheduling module 440 is used to schedule and distribute the video segment tasks to be processed in the video processing waiting area in sequence based on the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle.

[0139] Based on the technical solutions of the above embodiments, optionally, according to the first video attribute information of each video segment task to be processed, the video segment tasks to be processed are loaded into the video processing waiting area, including:

[0140] Determine the remaining available video processing resources associated with the video processing waiting area;

[0141] Based on the remaining available video processing resources associated with the video processing waiting area, video segment tasks to be processed are sequentially obtained from each video segment task according to the first video attribute information of each video segment task to be processed and loaded into the video processing waiting area, so that the remaining available video processing resources associated with the video processing waiting area are not greater than a preset resource amount or there are no more unloaded video segment tasks to be processed.

[0142] Based on the technical solutions of the above embodiments, optionally, determining the current performance benchmark information corresponding to the video data source location within the current task processing cycle includes:

[0143] The reference attribute data corresponding to the video data source point within the current task processing cycle is determined. The reference attribute data is at least one reference detection data or reference performance benchmark information. Each reference attribute data is performance detection data obtained by detecting the reference performance of the video data source point within each reference task processing cycle. The reference performance benchmark information is the performance benchmark information corresponding to the video data source point within the previous reference task processing cycle of the current task processing cycle. Each reference task processing cycle is a historical time period before the current task processing cycle. Each task processing cycle is divided into a preset number of task processing time periods.

[0144] Based on the reference attribute data corresponding to the video data source location within the current task processing cycle, determine the current performance benchmark information corresponding to the video data source location.

[0145] Based on the technical solutions of the above embodiments, optionally, determining the reference attribute data corresponding to the video data source location within the current task processing cycle includes:

[0146] For at least one reference task processing cycle, reference detection data is obtained by detecting the reference performance of the video data source points at different task processing periods in each reference task processing cycle. The reference performance is described by query concurrency performance, streaming concurrency performance and / or streaming anomaly frequency. The query concurrency performance is the number of concurrent video stream queries supported per unit time. The streaming concurrency performance is the number of concurrent video streams supported per unit time. The streaming anomaly frequency is the number of streaming anomalies that occur per unit time during continuous acquisition of video streams.

[0147] Based on the reference detection data obtained within at least one reference task processing cycle, determine the reference attribute data corresponding to the video data source location within the current task processing cycle.

[0148] Based on the technical solutions of the above embodiments, optionally, the reference performance of the video data source location is detected, including:

[0149] The query concurrency performance of the video data source points is detected by gradually increasing the frequency of concurrent query requests per unit time when querying video streams from video data source points.

[0150] The concurrent streaming performance of the video data source point is detected by gradually increasing the number of concurrent streaming paths per unit time when acquiring video streams from the video data source point.

[0151] The frequency of abnormal streaming is detected by continuously performing a streaming operation for a preset duration when acquiring video streams from video data source locations.

[0152] Based on the technical solutions of the above embodiments, optionally, based on the current performance benchmark information corresponding to each video data source point within the current task processing cycle, the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle is determined, including:

[0153] Determine at least one current task processing period associated with the video segment tasks to be processed in the video processing waiting area. The at least one current task processing period is the multiple task processing periods occupied by the target video processing task within the current task processing cycle starting from the current moment when all the video segment tasks to be processed in the video processing waiting area are executed and completed.

[0154] For each video data source point within the current task processing cycle, based on the current performance benchmark information corresponding to each video data source point within the current task processing cycle, the scheduling priority corresponding to each video data source point in different current task processing periods within the current task processing cycle is determined. The scheduling priority corresponding to each video data source point is determined based on the scheduling effect when polling and scheduling the pending video segment tasks corresponding to each video data source point in different current task processing periods within the current task processing cycle.

[0155] Based on the scheduling priority of each video data source point within the current task processing cycle, the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle is determined.

[0156] Based on the technical solutions of the above embodiments, optionally, determining at least one current task processing time period associated with the video segment task to be processed in the video processing waiting area includes:

[0157] The number of first segment tasks and the number of second segment tasks corresponding to the video processing waiting area are determined. The number of first segment tasks is the number of video segment tasks loaded into the video processing waiting area when the loading of video segment tasks to be processed into the video processing waiting area is triggered. The number of second segment tasks is the number of video segment tasks that were originally in the video processing waiting area but have not yet completed the target video processing task when the loading of video segment tasks to be processed into the video processing waiting area is triggered.

[0158] The number of third-segment tasks associated with the video processing waiting area is determined. The number of third-segment tasks is the total number of video segment tasks to be processed that can be processed concurrently by the target video processing resources associated with the video processing waiting area for executing the target video processing task.

[0159] Based on the number of the first segment task, the number of the second segment task, the number of the third segment task, and the time length of the video segment to be processed associated with each video segment task to be processed in the video processing waiting area, at least one current task processing period associated with the video segment task to be processed in the video processing waiting area is determined.

[0160] Based on the technical solutions of the above embodiments, optionally, the scheduling priority corresponding to each video data source point is determined based on the current performance benchmark information corresponding to each video data source point within the current task processing cycle, including:

[0161] Based on the current performance benchmark information corresponding to each of the video data source points within the current task processing cycle and at least one current task processing time period associated with the video segment tasks to be processed in the video processing waiting area, scheduling attribute information corresponding to each of the video data source points is determined. The scheduling attribute information corresponding to each of the video data source points is described by first attribute information, second attribute information, and / or third attribute information. The first attribute information is the degree of variation in streaming concurrent performance determined based on the fluctuation of streaming concurrent performance when acquiring video streams from each of the video data source points in different current task processing time periods within at least one current task processing time period. The second attribute information is the level of streaming concurrent performance determined based on the magnitude of streaming concurrent performance when acquiring video streams from each of the video data source points in different current task processing time periods within at least one current task processing time period. The third attribute information is the streaming stability determined by the magnitude of the number of streaming anomalies when acquiring video streams from each of the video data source points in different current task processing time periods within at least one current task processing time period.

[0162] Based on the scheduling attribute information corresponding to each video data source point, determine the scheduling priority corresponding to each video data source point;

[0163] Specifically, the degree of variation in flow retrieval concurrency performance indicated by the scheduling attribute information is negatively correlated with the scheduling priority, the flow retrieval concurrency performance level indicated by the scheduling attribute information is positively correlated with the scheduling priority, and the flow retrieval stability indicated by the scheduling attribute information is positively correlated with the scheduling priority.

[0164] Based on the technical solutions of the above embodiments, optionally, based on the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle, the video segment tasks to be processed in the video processing waiting area are scheduled and issued sequentially, including:

[0165] For different task processing periods in the current task processing cycle, a reference scheduling order information is determined based on the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle. The reference scheduling order information is used to indicate the order in which the video segment tasks to be processed in the video processing waiting area are scheduled and sent to execute the target video processing task in each task processing period of the current task processing cycle.

[0166] Based on the reference scheduling order information and the preset scheduling constraint information, the video segment tasks to be processed in the video processing waiting area are scheduled and distributed by polling multiple times during each task processing period of the current task processing cycle. The preset scheduling constraint information is used to constrain the number of video segment tasks to be processed from the video data source points in each poll.

[0167] The preset scheduling constraints are described using at least one of the following: Video segment tasks with higher scheduling priority should be scheduled and distributed before those with lower scheduling priority; for video segment tasks from the same video data source location, the number of video segment tasks acquired in the same poll is no greater than the number of video segment tasks associated with the scheduling priority of that video data source location; for video segment tasks from the same video data source location, the query concurrency performance generated by the number of video segment tasks acquired in the same poll is no greater than the query concurrency performance of the task processing period in which that poll occurs; the sum of the number of video segment tasks currently being scheduled to execute the target video processing task and the number of video segment tasks from the same video data source location in the same poll is no greater than the streaming concurrency performance of the task processing period in which that poll occurs.

[0168] The technical solution of this invention determines the loading order of video segmentation tasks to be processed into the video processing waiting area through first video attribute information. This allows high-priority video segmentation tasks to enter the waiting area first, ensuring that important video content can be processed faster. This avoids the situation where critical videos may be delayed due to disordered loading, thus improving overall processing efficiency. Furthermore, the performance benchmark information corresponding to the video data source points can accurately reflect the video stream acquisition capability and efficiency performance of each video data source point during different task processing periods. Based on the performance benchmark information, second video attribute information is determined, thereby determining the scheduling priority order of video segmentation tasks during different task processing periods. This can guide the reasonable scheduling of video segmentation tasks at different points during different time periods, ensuring that resource allocation matches the actual capabilities of each point. This allows for the reasonable arrangement of video segmentation task processing based on the actual performance of each video data source point, making full use of resources and avoiding resource waste and over-allocation. This maximizes the utilization of limited resources, further improving video processing efficiency and stability.

[0169] The video processing apparatus provided in the embodiments of the present invention can execute the video processing method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects for executing the video processing method.

[0170] It is worth noting that the various units and modules included in the above-mentioned device are only divided according to functional logic, but are not limited to the above division, as long as the corresponding functions can be realized; in addition, the specific names of each functional unit are only for easy differentiation and are not used to limit the protection scope of the embodiments of the present invention.

[0171] Figure 5 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. Refer to the following... Figure 5 It illustrates an electronic device suitable for implementing embodiments of the present invention (e.g., Figure 5 The diagram below shows the structure of the terminal device or server 500. The terminal device in this embodiment may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), and in-vehicle terminals (e.g., in-vehicle navigation terminals), as well as fixed terminals such as digital TVs and desktop computers. Figure 5 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of use of the embodiments of the present invention.

[0172] like Figure 5As shown, electronic device 500 may include a processing unit (e.g., central processing unit, graphics processor, etc.) 501, which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 502 or a program loaded from storage device 508 into random access memory (RAM) 503. The RAM 503 also stores various programs and data required for the operation of electronic device 500. The processing unit 501, ROM 502, and RAM 503 are interconnected via bus 504. An edit / output (I / O) interface 505 is also connected to bus 504.

[0173] Typically, the following devices can be connected to I / O interface 505: input devices 506 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 507 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 508 including, for example, magnetic tapes, hard disks, etc.; and communication devices 509. Communication device 509 allows electronic device 500 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 5 An electronic device 500 with various devices is shown; however, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively.

[0174] In particular, according to embodiments of the present invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of the present invention include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the video processing method shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device 509, or installed from a storage device 508, or installed from a ROM 502. When the computer program is executed by the processing device 501, it performs the functions defined in the video processing method of the embodiments of the present invention.

[0175] The names of the messages or information exchanged between the multiple devices in the embodiments of the present invention are for illustrative purposes only and are not intended to limit the scope of these messages or information.

[0176] The electronic device provided in this embodiment of the invention and the video processing method provided in the above embodiments belong to the same inventive concept. Technical details not described in detail in this embodiment can be found in the above embodiments, and this embodiment has the same beneficial effects as the above embodiments.

[0177] This invention provides a computer storage medium storing a computer program that, when executed by a processor, implements the video processing method provided in the above embodiments.

[0178] It should be noted that the computer-readable medium described above in this invention can be a computer-readable signal medium, a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this invention, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this invention, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.

[0179] In some implementations, clients and servers can communicate using any currently known or future-developed network protocol such as HTTP (Hypertext Transfer Protocol) and can interconnect with digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include local area networks (“LANs”), wide area networks (“WANs”), the Internet (e.g., the Internet of Things), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future-developed networks.

[0180] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.

[0181] The aforementioned computer-readable medium carries one or more programs that, when executed by the electronic device, cause the electronic device to: load video segment tasks to be processed into a video processing waiting area according to the first video attribute information of each video segment task to be processed, wherein the video segment task to be processed is a task that performs video processing on the video segment to be processed, and the first video attribute information is used to indicate the order in which each video segment task to be processed is loaded into the video processing waiting area, and the first video attribute information is determined according to the priority order of the video segments to be processed associated with each video segment task before video segmentation; and for each video data source point, determine the current performance benchmark information corresponding to the video data source point within the current task processing cycle, wherein the video data source point is used to capture and acquire the video segment task to be processed. The system identifies the capturing device that captures the video segment to be processed within the current task processing cycle. The performance benchmark information characterizes the ability and efficiency of acquiring video streams from video data source locations at different task processing times within the same task processing cycle. Based on the current performance benchmark information corresponding to each video data source location within the current task processing cycle, the system determines the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle. The second video attribute information indicates the scheduling priority order when scheduling and issuing the video segment tasks to be processed in the video task waiting area to execute the target video processing task at different task processing times within the current task processing cycle. Based on the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle, the system sequentially schedules and issues the video segment tasks to be processed in the video processing waiting area.

[0182] Computer program code for performing the operations of this invention can be written in one or more programming languages ​​or a combination thereof, including but not limited to object-oriented programming languages ​​such as Java, Smalltalk, and C++, as well as conventional procedural programming languages ​​such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0183] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0184] The units described in the embodiments of the present invention can be implemented in software or in hardware. The name of a unit does not necessarily limit the unit itself; for example, the first acquisition unit can also be described as "a unit that acquires at least two Internet Protocol addresses".

[0185] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: Field Programmable Gate Arrays (FPGAs), Application-Specific Integrated Circuits (ASICs), Application Standard Products (ASSPs), System-on-Chip (SoCs), Complex Programmable Logic Devices (CPLDs), and so on.

[0186] In the context of this invention, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. Machine-readable media can include, but are not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0187] The above description is merely a preferred embodiment of the present invention and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of disclosure in this invention is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features with similar functions disclosed in this invention.

[0188] Furthermore, while the operations are described in a specific order, this should not be construed as requiring these operations to be performed in the specific order shown or in sequential order. In certain circumstances, multitasking and parallel processing may be advantageous. Similarly, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of the invention. Certain features described in the context of individual embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented individually or in any suitable sub-combination in multiple embodiments.

[0189] Although the subject matter has been described using language specific to structural features and / or methodological logic, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. Rather, the specific features and actions described above are merely illustrative examples of implementing the claims.

Claims

1. A video processing method, characterized in that, The method includes: According to the first video attribute information of each pending video segment task, the pending video segment tasks are loaded into the video processing waiting area. The pending video segment tasks are tasks that perform video processing on the pending video segments. The first video attribute information is used to indicate the order in which each pending video segment task is loaded into the video processing waiting area. The first video attribute information is determined according to the priority order of the pending video segments associated with each pending video segment task before video segmentation. For each video data source location, determine the current performance benchmark information corresponding to the video data source location within the current task processing cycle. The video data source location is the shooting device used to capture the video to be processed associated with the task of capturing the video segment to be processed. The performance benchmark information is used to characterize the ability and efficiency of acquiring video streams from the video data source location at different task processing times within the same task processing cycle. Based on the current performance benchmark information of each video data source point in the current task processing cycle, the second video attribute information of the video segment task to be processed in the video processing waiting area in the current task processing cycle is determined. The second video attribute information is used to indicate the scheduling priority order when scheduling and issuing the target video processing task to be processed in the video task waiting area in different task processing time periods in the current task processing cycle. Based on the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle, the video segment tasks to be processed in the video processing waiting area are scheduled and issued sequentially.

2. The method according to claim 1, characterized in that, Based on the first video attribute information of each pending video segment task, load the pending video segment tasks into the video processing waiting area, including: Determine the remaining available video processing resources associated with the video processing waiting area; Based on the remaining available video processing resources associated with the video processing waiting area, video segment tasks to be processed are sequentially obtained from each video segment task according to the first video attribute information of each video segment task to be processed and loaded into the video processing waiting area, so that the remaining available video processing resources associated with the video processing waiting area are not greater than a preset resource amount or there are no more unloaded video segment tasks to be processed.

3. The method according to claim 1, characterized in that, Determine the current performance baseline information corresponding to the video data source location within the current task processing cycle, including: The reference attribute data corresponding to the video data source point within the current task processing cycle is determined. The reference attribute data is at least one reference detection data or reference performance benchmark information. Each reference attribute data is performance detection data obtained by detecting the reference performance of the video data source point within each reference task processing cycle. The reference performance benchmark information is the performance benchmark information corresponding to the video data source point within the previous reference task processing cycle of the current task processing cycle. Each reference task processing cycle is a historical time period before the current task processing cycle. Each task processing cycle is divided into a preset number of task processing time periods. Based on the reference attribute data corresponding to the video data source location within the current task processing cycle, determine the current performance benchmark information corresponding to the video data source location.

4. The method according to claim 3, characterized in that, Determine the reference attribute data corresponding to the video data source locations within the current task processing cycle, including: For at least one reference task processing cycle, reference detection data is obtained by detecting the reference performance of the video data source points at different task processing periods in each reference task processing cycle. The reference performance is described by query concurrency performance, streaming concurrency performance and / or streaming anomaly frequency. The query concurrency performance is the number of concurrent video stream queries supported per unit time. The streaming concurrency performance is the number of concurrent video streams supported per unit time. The streaming anomaly frequency is the number of streaming anomalies that occur per unit time during continuous acquisition of video streams. Based on the reference detection data obtained within at least one reference task processing cycle, determine the reference attribute data corresponding to the video data source location within the current task processing cycle.

5. The method according to claim 1, characterized in that, Based on the current performance benchmark information corresponding to each video data source point within the current task processing cycle, the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle is determined, including: Determine at least one current task processing period associated with the video segment tasks to be processed in the video processing waiting area. The at least one current task processing period is the multiple task processing periods occupied by the target video processing task within the current task processing cycle starting from the current moment when all the video segment tasks to be processed in the video processing waiting area are executed and completed. For each video data source point within the current task processing cycle, based on the current performance benchmark information corresponding to each video data source point within the current task processing cycle, the scheduling priority corresponding to each video data source point in different current task processing periods within the current task processing cycle is determined. The scheduling priority corresponding to each video data source point is determined based on the scheduling effect when polling and scheduling the pending video segment tasks corresponding to each video data source point in different current task processing periods within the current task processing cycle. Based on the scheduling priority of each video data source point within the current task processing cycle, the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle is determined.

6. The method according to claim 5, characterized in that, Determining at least one current task processing period associated with the video segment tasks to be processed in the video processing waiting area includes: The number of first segment tasks and the number of second segment tasks corresponding to the video processing waiting area are determined. The number of first segment tasks is the number of video segment tasks loaded into the video processing waiting area when the loading of video segment tasks to be processed into the video processing waiting area is triggered. The number of second segment tasks is the number of video segment tasks that were originally in the video processing waiting area but have not yet completed the target video processing task when the loading of video segment tasks to be processed into the video processing waiting area is triggered. The number of third-segment tasks associated with the video processing waiting area is determined. The number of third-segment tasks is the total number of video segment tasks to be processed that can be processed concurrently by the target video processing resources associated with the video processing waiting area for executing the target video processing task. Based on the number of the first segment task, the number of the second segment task, the number of the third segment task, and the time length of the video segment to be processed associated with each video segment task to be processed in the video processing waiting area, at least one current task processing period associated with the video segment task to be processed in the video processing waiting area is determined.

7. The method according to claim 5, characterized in that, Based on the current performance baseline information of each video data source point within the current task processing cycle, the scheduling priority corresponding to each video data source point is determined, including: Based on the current performance benchmark information corresponding to each of the video data source points within the current task processing cycle and at least one current task processing time period associated with the video segment tasks to be processed in the video processing waiting area, scheduling attribute information corresponding to each of the video data source points is determined. The scheduling attribute information corresponding to each of the video data source points is described by first attribute information, second attribute information, and / or third attribute information. The first attribute information is the degree of variation in streaming concurrent performance determined based on the fluctuation of streaming concurrent performance when acquiring video streams from each of the video data source points in different current task processing time periods within at least one current task processing time period. The second attribute information is the level of streaming concurrent performance determined based on the magnitude of streaming concurrent performance when acquiring video streams from each of the video data source points in different current task processing time periods within at least one current task processing time period. The third attribute information is the streaming stability determined by the magnitude of the number of streaming anomalies when acquiring video streams from each of the video data source points in different current task processing time periods within at least one current task processing time period. Based on the scheduling attribute information corresponding to each video data source point, determine the scheduling priority corresponding to each video data source point; Specifically, the degree of variation in flow retrieval concurrency performance indicated by the scheduling attribute information is negatively correlated with the scheduling priority, the flow retrieval concurrency performance level indicated by the scheduling attribute information is positively correlated with the scheduling priority, and the flow retrieval stability indicated by the scheduling attribute information is positively correlated with the scheduling priority.

8. The method according to claim 1, characterized in that, Based on the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle, the video segment tasks to be processed in the video processing waiting area are scheduled and issued sequentially, including: For different task processing periods in the current task processing cycle, a reference scheduling order information is determined based on the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle. The reference scheduling order information is used to indicate the order in which the video segment tasks to be processed in the video processing waiting area are scheduled and sent to execute the target video processing task in each task processing period of the current task processing cycle. Based on the reference scheduling order information and the preset scheduling constraint information, the video segment tasks to be processed in the video processing waiting area are scheduled and distributed by polling multiple times during each task processing period of the current task processing cycle. The preset scheduling constraint information is used to constrain the number of video segment tasks to be processed from the video data source points in each poll. The preset scheduling constraints are described using at least one of the following: Video segment tasks with higher scheduling priority should be scheduled and distributed before those with lower scheduling priority; for video segment tasks from the same video data source location, the number of video segment tasks acquired in the same poll is no greater than the number of video segment tasks associated with the scheduling priority of that video data source location; for video segment tasks from the same video data source location, the query concurrency performance generated by the number of video segment tasks acquired in the same poll is no greater than the query concurrency performance of the task processing period in which that poll occurs; the sum of the number of video segment tasks currently being scheduled to execute the target video processing task and the number of video segment tasks from the same video data source location in the same poll is no greater than the streaming concurrency performance of the task processing period in which that poll occurs.

9. A video processing apparatus, characterized in that, The device includes: The loading module is used to load the video segment tasks to be processed into the video processing waiting area according to the first video attribute information of each video segment task to be processed. The video segment task to be processed is a task that performs video processing on the video segment to be processed. The first video attribute information is used to indicate the order in which each video segment task to be processed is loaded into the video processing waiting area. The first video attribute information is determined according to the priority order of the video segments to be processed associated with each video segment task before video segmentation. The first determining module is used to determine the current performance benchmark information corresponding to the video data source point in the current task processing cycle for each video data source point. The video data source point is a shooting device used to capture the video to be processed associated with the video segment to be processed task. The performance benchmark information is used to characterize the ability and efficiency of acquiring video streams from the video data source point in different task processing periods within the same task processing cycle. The second determining module is used to determine the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle based on the current performance benchmark information corresponding to each video data source point within the current task processing cycle. The second video attribute information is used to indicate the scheduling priority order when scheduling and issuing the target video processing task to be processed in the video task waiting area to be executed in different task processing periods within the current task processing cycle. The scheduling module is used to schedule and distribute the video segment tasks to be processed in the video processing waiting area in sequence based on the second video attribute information of the video segment tasks to be processed in the video processing waiting area within the current task processing cycle.

10. An electronic device, characterized in that, The electronic device includes: One or more processors; Storage device for storing one or more programs. When the one or more programs are executed by the one or more processors, the one or more processors implement the video processing method according to any one of claims 1-8.

11. A storage medium containing computer-executable instructions, characterized in that, The computer-executable instructions, when executed by a computer processor, are used to perform the video processing method according to any one of claims 1-8.