Video resource processing method, system, device and medium
By grouping video channels and generating virtual channels in the video surveillance system, the problems of repeated resource acquisition and bandwidth waste caused by repeated video channels are solved, and the stability and resource acquisition capabilities of the video aggregation platform are improved.
Patent Information
- Application Number
- CN202210006487.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-01-05
- Publication Date
- 2024-12-10
- Estimated Expiration
- 2042-01-05
AI Technical Summary
In a video surveillance system, repeated video channels cause video resources to be replicated, occupy storage space, waste network bandwidth, and may cause the concurrent output capability of the video output device to reach the upper limit, which in turn leads to video pulling failure.
By grouping video channels in the video aggregation platform, generating virtual channels, and using virtual channels for resource processing, avoiding duplicate resource processing, and merging duplicate video resources to ensure the uniqueness of video resources and the concurrent output capability of the device.
It effectively avoids repeated processing of video resources, saves storage space and network bandwidth, improves the robustness of the video aggregation platform and video distribution capabilities, and ensures flexible acquisition of video resources and concurrent output capabilities of the equipment.
Smart Images

Figure CN114339163B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of video surveillance technology, and specifically provides a video resource processing method, system, device and medium. Background Art
[0002] In video surveillance projects, video is generally collected through video acquisition devices, such as IPC (Internet Protocol Camera), etc. Users generally connect the same IPC to NVR (Network Video Recorder) / DVR (Digital Video Recorder) and video aggregation platform. At the same time, in order to ensure uninterrupted monitoring tasks during the process of video resource integration, NVR / DVR is generally connected to the video aggregation platform. In this case, there are actually two video channels with the same video stream. With the increase of the lower-level platforms of the video aggregation platform and the continuous increase of the level, there may be more and more duplicate video channels.
[0003] Duplicate video channels will bring the following problems: the video aggregation platform sends duplicate recording tasks to the video storage platform, resulting in repeated acquisition of the same video channel, which takes up storage space; users or other systems request to obtain multiple identical video streams from duplicate video channels, wasting network bandwidth and reducing the video distribution capabilities of the video aggregation platform; IPC, NVR / DVR and other devices generally have concurrent output capacity limitations. Some IPCs can only output about 5 video streams at the same time, while earlier models of IPCs can only output 2 video streams at the same time. If video streams from the same video device are pulled simultaneously from duplicate video channels, it is likely that the output capacity of the video output device will reach the upper limit of its concurrent output capacity, further leading to failure to pull video from the video device.
[0004] Accordingly, the art needs a new video resource processing solution to solve the above problems. Summary of the invention
[0005] In order to overcome the above-mentioned defects, the present invention is proposed to provide a solution or at least partially solve the problem of duplicate video channels in a video aggregation platform.
[0006] In a first aspect, the present invention provides a video resource processing method, the method is applied to a video convergence platform, the video convergence platform is connected to a plurality of front-end devices, each front-end device provides video resources to the video convergence platform through a respective corresponding video channel, the method comprising:
[0007] Grouping all video channels according to the video resources transmitted by each video channel, wherein the video resources transmitted by the video channels in the same video channel group are the same, and the video resources transmitted by the video channels in different video channel groups are different;
[0008] Generate virtual channels corresponding to each video channel group according to the video channels in each video channel group;
[0009] In response to the resource processing instruction for the current video channel, resource processing is performed using the virtual channel corresponding to the video channel group where the current video channel is located.
[0010] In a technical solution of the above-mentioned video resource processing method, the resource processing instruction is an instruction for obtaining a real-time video stream of the video resource, and the step of "using the virtual channel corresponding to the video channel group where the current video channel is located to perform resource processing" specifically includes:
[0011] Determine whether other video channels in the virtual channel are transmitting the real-time video stream;
[0012] If yes, directly obtain the real-time video stream being transmitted by the other video channel;
[0013] If not, the real-time video stream is obtained through any video channel in the virtual channel.
[0014] In a technical solution of the above-mentioned video resource processing method, after the step of "obtaining the real-time video stream through any one video channel in the virtual channel", the method further includes:
[0015] Determine whether the real-time video stream is successfully acquired through any one of the video channels;
[0016] If not, continue to acquire the real-time video stream through the next video channel in the virtual channel until the real-time video stream is successfully acquired or the real-time video stream is not successfully acquired through all video channels in the virtual channel.
[0017] In a technical solution of the above-mentioned video resource processing method, the resource processing instruction is an instruction for obtaining the video recording information of the video resource, and the step of "using the virtual channel corresponding to the video channel group where the current video channel is located to perform resource processing" specifically includes:
[0018] Determine whether the front-end device corresponding to the video channel in the virtual channel has stored the video information;
[0019] If so, directly obtain the video information stored in the front-end device.
[0020] In a technical solution of the above-mentioned video resource processing method, the resource processing instruction is an instruction to record the video resource, and the step of "using the virtual channel corresponding to the video channel group where the current video channel is located to perform resource processing" specifically includes:
[0021] Determine whether other video channels in the virtual channel are recording the video resource;
[0022] If so, the video resource transmitted by the current video channel is no longer recorded according to the resource processing instruction;
[0023] If not, the video resource transmitted by the current video channel is recorded according to the resource processing instruction.
[0024] In a technical solution of the above-mentioned video resource processing method, after the step of "generating virtual channels corresponding to each video channel group according to the video channels in each video channel group", the method further includes:
[0025] Generate a unique identifier for each virtual channel respectively;
[0026] Each video channel in each video channel group is associated with a unique identifier of a virtual channel corresponding to each video channel group.
[0027] In a technical solution of the above-mentioned video resource processing method, before the step of "grouping all video channels according to the video resources transmitted by each video channel", the method further includes determining whether the video resources transmitted by each video channel are the same by the following steps:
[0028] For any two video channels among the video channels, in the communication direction of transmitting video resources from the video channel to the video aggregation platform, respectively obtain the first front-end device that is in communication connection with the front-end device corresponding to each video channel;
[0029] If the first front-end devices that are communicatively connected to the front-end devices corresponding to the two video channels are the same, it is determined that the video resources transmitted by the two video channels are the same.
[0030] In a second aspect, the present invention provides a video resource processing system, the system is applied to a video convergence platform, the video convergence platform is connected to a plurality of front-end devices, each front-end device provides video resources to the video convergence platform through its corresponding video channel, the system comprises:
[0031] A video channel grouping module, which is configured to group all video channels according to the video resources transmitted by each video channel, wherein the video resources transmitted by the video channels in the same video channel group are the same, and the video resources transmitted by the video channels in different video channel groups are different;
[0032] A virtual channel generation module, configured to generate virtual channels corresponding to each video channel group according to the video channels in each video channel group;
[0033] The video resource processing module is configured to respond to a resource processing instruction for the current video channel and perform resource processing using a virtual channel corresponding to the video channel group where the current video channel is located.
[0034] In a third aspect, a control device is provided, which includes a processor and a storage device, wherein the storage device is suitable for storing multiple program codes, and the program codes are suitable for being loaded and run by the processor to execute the video resource processing method described in any one of the technical solutions of the above-mentioned video resource processing method.
[0035] In a fourth aspect, a computer-readable storage medium is provided, wherein a plurality of program codes are stored therein, wherein the program codes are suitable for being loaded and run by a processor to execute the video resource processing method described in any one of the technical solutions of the above-mentioned video resource processing method.
[0036] The above one or more technical solutions of the present invention have at least one or more of the following beneficial effects:
[0037] In the technical solution of the present invention, all video channels are grouped according to the video resources transmitted by each video channel, video channels transmitting the same video resources are divided into the same video channel group, video channels transmitting different video resources are divided into different video channel groups, and virtual channels corresponding to each video channel group are generated according to the video channels in each video channel group, and resource processing is performed using the virtual channel corresponding to the video channel group where the current video channel is located according to the resource processing instruction of the current video channel. Through the above configuration, the present invention can merge repeated video resources in the video aggregation platform through virtual channels, avoid the video aggregation platform repeatedly executing resource processing instructions when responding to resource processing instructions for the same video resource, resulting in repeated occupation of storage space, wasting network bandwidth, and the problem that the concurrent output capacity of the front-end device reaches the upper limit, and can realize flexible acquisition of video resources, and different front-end devices providing the same video resources can also back up each other, increasing the robustness of the video aggregation platform. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] The disclosure of the present invention will become more easily understood with reference to the accompanying drawings. It is easy for those skilled in the art to understand that these drawings are only for illustrative purposes and are not intended to limit the scope of protection of the present invention. Among them:
[0039] Figure 1is a schematic flow chart of main steps of a video resource processing method according to an embodiment of the present invention;
[0040] Figure 2 is a schematic flow chart of main steps of establishing a virtual channel according to an implementation of an embodiment of the present invention;
[0041] Figure 3 is a schematic flow chart of main steps of obtaining a real-time video stream according to an implementation of an embodiment of the present invention;
[0042] Figure 4 It is a schematic diagram of the main steps of recording a video resource according to an implementation of an embodiment of the present invention;
[0043] Figure 5 It is a schematic flow chart of main steps for obtaining video recording information of a video resource according to an implementation of an embodiment of the present invention;
[0044] Figure 6 It is a main structural block diagram of a video resource processing system according to an embodiment of the present invention. DETAILED DESCRIPTION
[0045] Some embodiments of the present invention are described below with reference to the accompanying drawings. It should be understood by those skilled in the art that these embodiments are only used to explain the technical principles of the present invention and are not intended to limit the protection scope of the present invention.
[0046] In the description of the present invention, "module" and "processor" may include hardware, software or a combination of the two. A module may include hardware circuits, various suitable sensors, communication ports, and memories, and may also include software parts, such as program codes, or a combination of software and hardware. The processor may be a central processing unit, a microprocessor, an image processor, a digital signal processor, or any other suitable processor. The processor has data and / or signal processing functions. The processor may be implemented in software, hardware, or a combination of the two. Non-temporary computer-readable storage media include any suitable medium that can store program codes, such as a magnetic disk, a hard disk, an optical disk, a flash memory, a read-only memory, a random access memory, and the like. The term "A and / or B" means all possible combinations of A and B, such as only A, only B, or A and B. The term "at least one A or B" or "at least one of A and B" has a similar meaning to "A and / or B", and may include only A, only B, or A and B. The singular terms "one" and "the" may also include plural forms.
[0047] See attached Figure 1 , Figure 1 FIG. 1 is a flow chart showing the main steps of a method for processing video resources according to an embodiment of the present invention. Figure 1 As shown, the video resource processing method in the embodiment of the present invention is applied to a video aggregation platform. The video aggregation platform can be connected to multiple front-end devices, and each front-end device can provide video resources to the video aggregation platform through its corresponding video channel. The video resource processing method mainly includes the following steps S101-step S103.
[0048] Step S101: grouping all video channels according to the video resources transmitted by each video channel, wherein the video resources transmitted by video channels in the same video channel group are the same, and the video resources transmitted by video channels in different video channel groups are different.
[0049] In this embodiment, the video resource processing method can be applied to a video convergence platform. The video convergence platform can be connected to multiple front-end devices, and different front-end devices can provide video resources to the video convergence platform through their corresponding video channels. Video channels can be grouped according to the video resources transmitted by each video channel, that is, video channels that transmit the same video resources are divided into the same video channel group, and video channels that transmit different video resources are divided into different video channel groups. Among them, video resources refer to video streams provided by front-end devices. Video convergence platform refers to a management platform for centralized management of video resources and distribution of video streams. Video channel refers to the communication channel between the front-end device and the video convergence platform. The front-end device can transmit video resources to the video convergence platform through this communication channel, and can also receive instructions issued by the video convergence platform through this communication channel, such as instructions to obtain video resources.
[0050] In one implementation, the front-end device may be a video acquisition device, such as an IPC (Internet Protocol Camera); it may be a video recording device, such as an NVR (Network Video Recorder) / DVR (Digital Video Recorder); it may also be a subordinate platform of a video aggregation platform, wherein the subordinate platform may also be a video aggregation platform.
[0051] In one implementation, the video channels transmitting the same video resource may be obtained in a manually specified manner, that is, by manually determining whether the video channels transmit the same video resource.
[0052] In one implementation, the video channel that transmits the same video resource can be automatically identified through the IP (Internet Protocol Address) port, that is, the IP port of the front-end device to which the video resource in the video channel ultimately points is identified, and based on the IP port of the front-end device, the video resources corresponding to the same IP port of the front-end device are determined as the same video resources, and the video channel that transmits the same video resource is further obtained.
[0053] In one implementation, it is possible to determine whether the video resources transmitted by the video channels are the same by using a video acquisition device that acquires the video resources. That is, if the video resources transmitted by the video channels are all from the same video acquisition device, it can be considered that the video resources transmitted by the video channels are the same; if the video resources transmitted by the video channels are from different video acquisition devices, it can be considered that the video resources transmitted by the video channels are different.
[0054] In one implementation, the video resource may include a device identification of a corresponding video acquisition device, and whether the video resources transmitted by the video channels are the same may be determined based on the device identification of the video acquisition device included in the video resource.
[0055] Step S102: Generate virtual channels corresponding to each video channel group according to the video channels in each video channel group.
[0056] In this embodiment, virtual channels corresponding to each video channel group can be generated according to the video channels in each video channel group, that is, video channels transmitting the same video resource can share one virtual channel.
[0057] In one implementation, the unique identifier of the virtual channel may be used to mark the virtual channel, and all video channels in the video channel group corresponding to the virtual channel may be associated through the unique identifier.
[0058] Step S103: In response to the resource processing instruction for the current video channel, resource processing is performed using the virtual channel corresponding to the video channel group where the current video channel is located.
[0059] In this embodiment, after receiving the resource processing instruction of the current video channel, the corresponding resource processing operation can be performed using the virtual channel corresponding to the video channel group where the current video channel is located.
[0060] In one implementation, the original resource processing instruction for the current video channel may be converted into a resource processing instruction for the virtual channel corresponding to the unique identifier according to the unique identifier of the virtual channel included in the current video channel, so as to perform a resource processing operation.
[0061] Based on the above steps S101-S103, the present invention groups all video channels according to the video resources transmitted by each video channel, divides the video channels transmitting the same video resources into the same video channel group, divides the video channels transmitting different video resources into different video channel groups, and generates virtual channels corresponding to each video channel group according to the video channels in each video channel group, and performs resource processing using the virtual channel corresponding to the video channel group where the current video channel is located according to the resource processing instruction of the current video channel. Through the above configuration, the present invention can merge repeated video resources in the video aggregation platform through virtual channels, avoid the video aggregation platform repeatedly executing resource processing instructions when responding to resource processing instructions for the same video resource, resulting in repeated occupation of storage space, wasting network bandwidth, and the problem that the concurrent output capacity of the front-end device reaches the upper limit, and can realize flexible acquisition of video resources, and different front-end devices providing the same video resources can also back up each other, increasing the robustness of the video aggregation platform.
[0062] The step S103 is further described below.
[0063] In one implementation of the embodiment of the present invention, the resource processing instruction may be an instruction for obtaining a real-time video stream of a video resource, and step S103 may further include steps S10301 to S10303:
[0064] Step S10301: Determine whether other video channels in the virtual channel are transmitting real-time video streams; if so, jump to step S10302; if not, jump to step S10303;
[0065] Step S10302: directly obtain the real-time video stream being transmitted by other video channels;
[0066] Step S10303: Acquire a real-time video stream through any video channel in the virtual channel.
[0067] In this embodiment, the resource processing instruction can be an instruction for obtaining a real-time video stream of a video resource. According to the instruction for obtaining a real-time video stream of a video resource, it can be determined whether other video channels in the corresponding virtual channel are transmitting real-time video streams. If other video channels are transmitting real-time video streams, the real-time video streams being transmitted by other video channels can be directly obtained; if no video channel in the virtual channel is transmitting real-time video streams, the real-time video stream can be obtained through any video channel in the virtual channel. Through the above configuration, when obtaining a real-time video stream, it is possible to first determine whether other video channels in the virtual channel are transmitting real-time video streams. If so, the real-time video stream being transmitted can be directly obtained, thereby avoiding the waste of network bandwidth caused by repeatedly obtaining the same real-time video stream, reducing the distribution capacity of the video aggregation platform, and the front-end device reaching the output capacity limit due to the simultaneous acquisition of the real-time video stream of the same front-end device from multiple video channels, further resulting in the failure of the subsequent task of obtaining the real-time video stream of the front-end device.
[0068] In one implementation of the embodiment of the present invention, after step S10303, step S103 may further include the following steps S10304-S10305:
[0069] Step S10304: determine whether the real-time video stream is successfully acquired through any video channel; if so, complete the resource processing instruction of the current video channel; if not, jump to step S10305;
[0070] Step S10305: Continue to obtain the real-time video stream through the next video channel in the virtual channel until the real-time video stream is successfully obtained or the real-time video stream is not successfully obtained through all video channels in the virtual channel.
[0071] In this embodiment, after executing step S10303, it can be determined whether the real-time video stream is successfully obtained through any video channel. If so, the resource processing instruction of the current video channel is completed; if not, the real-time video stream can be continuously obtained through the next video channel in the virtual channel until the real-time video stream is successfully obtained, or the real-time video stream is not obtained through all video channels in the virtual channel. Through the above configuration, each video channel in the virtual channel can back up each other, and the front-end device can be flexibly selected to obtain the real-time video stream, which increases the robustness of the video aggregation platform.
[0072] In one implementation of the embodiment of the present invention, the resource processing instruction may be an instruction for obtaining video recording information of a video resource, and step S103 may further include steps S10306 and S10307:
[0073] Step S10306: Determine whether the front-end device corresponding to the video channel in the virtual channel has stored the video information. If yes, jump to step S10307;
[0074] Step S10307: Obtain the video information stored in the front-end device.
[0075] In this embodiment, the resource processing instruction can be an instruction to obtain the video recording information of the video resource. According to the instruction to obtain the video recording information of the video resource, it can be determined whether the front-end device corresponding to each video channel in the virtual channel corresponding to the video group where the current video channel is located has stored the corresponding video recording information. If so, the video recording information can be directly obtained from the front-end device that stores the corresponding video recording information. Through the above configuration, the video recording information of the video resource does not need to be stored repeatedly, saving the video storage space of the video aggregation platform and the front-end device.
[0076] In one implementation of the embodiment of the present invention, the resource processing instruction may be an instruction to record the video resource, and step S103 may further include steps S10308 to S10310:
[0077] Step S10308: Determine whether other video channels in the virtual channel are recording video resources; if so, jump to step S10309; if not, jump to step S10310.
[0078] Step S10309: no longer recording the video resource transmitted by the current video channel according to the resource processing instruction;
[0079] Step S10310: Record the video resource transmitted by the current video channel according to the resource processing instruction.
[0080] In this embodiment, the resource processing instruction can be an instruction to record a video resource. According to the instruction to record a video resource, it can be determined whether other video channels in the virtual channel are recording the video. If so, the video resource transmitted by the current video channel can be stopped from being recorded; if not, according to the instruction to record a video resource, the video resource transmitted by the current video channel can be recorded. Through the above configuration, when receiving an instruction to record a video resource, only one video channel in the virtual channel needs to be recorded, which avoids the situation where the same video resource is recorded repeatedly, saves video storage space, and also reduces the pressure on the front-end device that executes the instruction to record the video resource.
[0081] In one implementation of the embodiment of the present invention, in addition to the above steps S101 to S103, after step S102, the present invention may further include the following steps S104 to S105:
[0082] Step S104: Generate a unique identifier for each virtual channel respectively;
[0083] Step S105: Associating each video channel in each video channel group with a unique identifier of a virtual channel corresponding to each video channel group.
[0084] In this embodiment, after generating the virtual channels corresponding to each video channel, the unique identifiers of the virtual channels can be generated respectively, and each video channel in each video channel group is associated with the unique identifiers of the virtual channels corresponding to each video channel group. That is, the unique identifiers can be used to determine which video channels are associated with the virtual channels corresponding to the unique identifiers.
[0085] In an implementation manner of the embodiment of the present invention, before step S101, the present invention may further include the following steps S106 and S107, and through steps S106 and S107, it is determined whether the video resources transmitted by each video channel are the same:
[0086] Step S106: for any two video channels in the video channel, in the communication direction of transmitting the video resource from the video channel to the video aggregation platform, respectively obtain the first front-end device that is in communication connection with the front-end device corresponding to each video channel;
[0087] Step S107: If the first front-end devices that are connected to the front-end devices corresponding to the two video channels are the same, it is determined that the video resources transmitted by the two video channels are the same.
[0088] In this embodiment, it is possible to determine whether the first front-end devices connected to the two video channels are the same based on the first front-end device that each video channel connects to in the direction of transmitting video resources from the video channel to the video convergence platform. If they are the same, it can be determined that the video resources transmitted by the two video channels are the same. For example, IPC1 is connected to NVR1 and the video convergence platform respectively, and NVR1 is also connected to the video convergence platform. Then, two video channels are formed on the video convergence platform: one video channel is a channel for transmitting video resources from IPC1 to the video convergence platform, and the first front-end device that communicates and connects with the front-end device IPC1 corresponding to this video channel is the front-end device IPC1 corresponding to this channel itself; the other channel is a channel for transmitting video resources from NVR1 to the video convergence platform, and the first front-end device that communicates and connects with the front-end device NVR1 corresponding to this video channel is IPC1. It is possible to determine whether the video resources transmitted by the two video channels are the same based on whether the first front-end devices that communicate and connect to the two video channels in the communication direction of transmitting video resources from the video channels to the video convergence platform are the same.
[0089] In one embodiment, please refer to the attached Figure 2 , Figure 2 FIG. 1 is a flow chart of the main steps of establishing a virtual channel according to an implementation method of an embodiment of the present invention. Figure 2 As shown in the figure, the main steps of establishing a virtual channel include:
[0090] Step S201: Select a repeated video channel.
[0091] In this embodiment, the method described in step S201 is similar to the method described in the aforementioned step S101, and for the sake of simplicity, it will not be repeated here.
[0092] Step S202: Establish a virtual channel.
[0093] In an implementation manner, the method described in step S202 is similar to the method described in the aforementioned step S102, and for the sake of simplicity of description, it is not repeated here.
[0094] In one embodiment, see the attached Figure 3 , Figure 3 FIG. 1 is a flow chart of the main steps of obtaining a real-time video stream according to an implementation of an embodiment of the present invention. Figure 3 As shown, the step of acquiring the real-time video stream (step S203) may include:
[0095] Step S2031: receiving an instruction to obtain a real-time video stream.
[0096] In this implementation, an instruction to obtain a real-time video stream of a video resource may be received.
[0097] Step S2032: Determine whether a real-time video stream is being transmitted in the virtual channel; if so, end; if not, jump to step S2033.
[0098] In this embodiment, it can be determined whether the real-time video stream is being transmitted in the virtual channel. If so, the instruction to obtain the real-time video stream is not executed, and the step of obtaining the real-time video stream is ended. If not, the process jumps to step S2033.
[0099] Step S2033: Select a video channel.
[0100] In this implementation, a video channel in the virtual channel may be selected to obtain a real-time video stream.
[0101] Step S2034: Determine whether the real-time video stream is obtained successfully; if so, end; if not, jump to step S2033.
[0102] In this embodiment, it can be determined whether the real-time video stream is successfully obtained through the video channel selected in step S2033. If so, the step of obtaining the real-time video stream can be ended. If not, the process can continue to jump to step S2033 and select the next video channel in the virtual channel to obtain the real-time video stream.
[0103] In one embodiment, see the attached Figure 4 , Figure 4 FIG. 1 is a flow chart of the main steps of recording a video resource according to an implementation of an embodiment of the present invention. Figure 4 As shown, the step of recording the video resource (step S204) may include:
[0104] Step S2041: determine whether the video channel has a unique identifier of a virtual channel; if so, jump to step S2042; if not, jump to step S2043.
[0105] In this embodiment, it can be determined whether the video channel has a unique identifier of the virtual channel, that is, whether the video channel is associated with the virtual channel through the unique identifier of the virtual channel. If so, jump to step S2042; if not, jump to step S2043.
[0106] Step S2042: Select the virtual channel corresponding to the unique identifier, and jump to step S2043.
[0107] In this embodiment, if the video channel is associated with a virtual channel, the virtual channel corresponding to the unique identifier may be selected according to the unique identifier, and the process jumps to step S2043.
[0108] Step S2043: Video recording.
[0109] In this embodiment, if the video channel is associated with a virtual channel, the video resources of the virtual channel can be recorded according to the method described in the aforementioned steps S10308 to S10310; if the video channel is not associated with a virtual channel, the video resources of the video channel can be directly recorded.
[0110] In one embodiment, see the attached Figure 5 , Figure 5 FIG. 1 is a flow chart of the main steps of obtaining video recording information of a video resource according to an implementation of an embodiment of the present invention. Figure 5 As shown, the step of obtaining the video recording information of the video resource (step S205) may include:
[0111] Step S2051: receiving an instruction to obtain video recording information of a video resource;
[0112] Step S2052: Determine whether the video channel has a unique identifier of a virtual channel; if so, jump to step S2053; if not, jump to step S2054;
[0113] In this embodiment, when an instruction to obtain recording information of a video resource is received, it can be determined whether the corresponding video channel has a unique identifier of the virtual channel, that is, whether the video channel is associated with the virtual channel through the unique identifier of the virtual channel. If so, jump to step S2053; if not, jump to step S2054.
[0114] Step S2053: Select the virtual channel corresponding to the unique identifier, and jump to step S2054.
[0115] In this embodiment, if the video channel is associated with a virtual channel, the virtual channel corresponding to the unique identifier may be selected according to the unique identifier, and the process jumps to step S2054.
[0116] Step S2054: Open the recorded video stream.
[0117] In this embodiment, if the video channel is associated with a virtual channel, an instruction for obtaining the video recording information of the video resource can be executed on the virtual channel according to the method described in the aforementioned steps S10306-S10307; if the video channel is not associated with a virtual channel, an instruction for obtaining the video recording information of the video resource can be directly executed on the video channel.
[0118] It should be pointed out that although the various steps in the above embodiments are described in a specific order, those skilled in the art can understand that in order to achieve the effects of the present invention, different steps do not have to be performed in such an order. They can be performed simultaneously (in parallel) or in other orders. These changes are within the scope of protection of the present invention.
[0119] Furthermore, the present invention also provides a video resource processing system.
[0120] See attached Figure 6 , Figure 6 FIG. 1 is a main structural block diagram of a video resource processing system according to an embodiment of the present invention. Figure 6 As shown, the video resource processing system in the embodiment of the present invention can be applied to a video convergence platform, and the video convergence platform can be connected to multiple front-end devices, and each front-end device can provide video resources to the video convergence platform through the video channels corresponding to each of them. The video resource processing system may include a video channel grouping module, a virtual channel generation module and a video resource processing module. In this embodiment, the video channel grouping module can be configured to group all video channels according to the video resources transmitted by each video channel, wherein the video resources transmitted by the video channels in the same video channel group are the same, and the video resources transmitted by the video channels in different video channel groups are different. The virtual channel generation module can be configured to generate virtual channels corresponding to each video channel group according to the video channels in each video channel group. The video resource processing module can be configured to respond to the resource processing instruction for the current video channel, and use the virtual channel corresponding to the video channel group where the current video channel is located to perform resource processing.
[0121] The video resource processing system is used to execute Figure 1 The video resource processing method embodiment shown in the figure has similar technical principles, technical problems solved and technical effects produced. Technical personnel in this technical field can clearly understand that for the convenience and conciseness of description, the specific working process and related instructions of the video resource processing system can refer to the contents described in the embodiment of the video resource processing method, which will not be repeated here.
[0122] It is understood by those skilled in the art that the present invention implements all or part of the processes in the method of the above embodiment, and can also be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a computer-readable storage medium, and the computer program can implement the steps of the above-mentioned various method embodiments when executed by the processor. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable storage medium may include: any entity or device, medium, U disk, mobile hard disk, disk, optical disk, computer memory, read-only memory, random access memory, electric carrier signal, telecommunication signal and software distribution medium that can carry the computer program code. It should be noted that the content contained in the computer-readable storage medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable storage media do not include electric carrier signals and telecommunication signals.
[0123] Furthermore, the present invention also provides a control device. In one embodiment of the control device according to the present invention, the control device includes a processor and a storage device. The storage device can be configured to store a program for executing the video resource processing method of the above method embodiment, and the processor can be configured to execute the program in the storage device, which includes but is not limited to the program for executing the video resource processing method of the above method embodiment. For ease of explanation, only the parts related to the embodiment of the present invention are shown. For specific technical details not disclosed, please refer to the method part of the embodiment of the present invention. The control device can be a control device device formed by various electronic devices.
[0124] Furthermore, the present invention also provides a computer-readable storage medium. In a computer-readable storage medium embodiment according to the present invention, the computer-readable storage medium can be configured to store a program for executing the video resource processing method of the above-mentioned method embodiment, and the program can be loaded and run by the processor to implement the above-mentioned video resource processing method. For ease of explanation, only the parts related to the embodiment of the present invention are shown. For specific technical details not disclosed, please refer to the method part of the embodiment of the present invention. The computer-readable storage medium can be a storage device formed by various electronic devices. Optionally, the computer-readable storage medium in the embodiment of the present invention is a non-temporary computer-readable storage medium.
[0125] Further, it should be understood that since the setting of each module is only for illustrating the functional units of the device of the present invention, the physical devices corresponding to these modules may be the processor itself, or a part of the software in the processor, a part of the hardware, or a part of the combination of software and hardware. Therefore, the number of each module in the figure is only schematic.
[0126] Those skilled in the art will appreciate that the modules in the device can be adaptively split or merged. Such splitting or merging of specific modules will not cause the technical solution to deviate from the principle of the present invention, and therefore, the technical solutions after splitting or merging will fall within the protection scope of the present invention.
[0127] So far, the technical solutions of the present invention have been described in conjunction with the preferred embodiments shown in the accompanying drawings. However, it is easy for those skilled in the art to understand that the protection scope of the present invention is obviously not limited to these specific embodiments. Without departing from the principle of the present invention, those skilled in the art can make equivalent changes or substitutions to the relevant technical features, and the technical solutions after these changes or substitutions will fall within the protection scope of the present invention.
Claims
1. A video resource processing method, characterized in that: The method is applied to a video convergence platform, the video convergence platform is connected to a plurality of front-end devices, each front-end device provides video resources to the video convergence platform through a corresponding video channel, and the method comprises: Grouping all video channels according to the video resources transmitted by each video channel, wherein the video resources transmitted by the video channels in the same video channel group are the same, and the video resources transmitted by the video channels in different video channel groups are different; Generate virtual channels corresponding to each video channel group according to the video channels in each video channel group; In response to a resource processing instruction for the current video channel, performing resource processing using a virtual channel corresponding to a video channel group where the current video channel is located; The resource processing instruction is an instruction for obtaining a real-time video stream of the video resource, and the step of "using the virtual channel corresponding to the video channel group where the current video channel is located to perform resource processing" specifically includes: Determine whether other video channels in the virtual channel are transmitting the real-time video stream; If yes, directly obtain the real-time video stream being transmitted by the other video channel; If not, obtaining the real-time video stream through any video channel in the virtual channel; The resource processing instruction is an instruction for obtaining the video recording information of the video resource, and the step of "using the virtual channel corresponding to the video channel group where the current video channel is located to perform resource processing" specifically includes: Determine whether the front-end device corresponding to the video channel in the virtual channel has stored the video information; If yes, directly obtain the video information stored in the front-end device; The resource processing instruction is an instruction to record the video resource, and the step of "using the virtual channel corresponding to the video channel group where the current video channel is located to perform resource processing" specifically includes: Determine whether other video channels in the virtual channel are recording the video resource; If so, the video resource transmitted by the current video channel is no longer recorded according to the resource processing instruction; If not, the video resource transmitted by the current video channel is recorded according to the resource processing instruction.
2. The video resource processing method according to claim 1, characterized in that: After the step of "obtaining the real-time video stream through any one video channel in the virtual channels", the method further comprises: Determine whether the real-time video stream is successfully acquired through any one of the video channels; If not, continue to acquire the real-time video stream through the next video channel in the virtual channel until the real-time video stream is successfully acquired or the real-time video stream is not successfully acquired through all video channels in the virtual channel.
3. The video resource processing method according to claim 1, characterized in that: After the step of "generating virtual channels corresponding to each video channel group according to the video channels in each video channel group", the method further includes: Generate a unique identifier for each virtual channel respectively; Each video channel in each video channel group is associated with a unique identifier of a virtual channel corresponding to each video channel group.
4. The video resource processing method according to claim 1, characterized in that: Before the step of "grouping all video channels according to the video resources transmitted by each video channel", the method further comprises determining whether the video resources transmitted by each video channel are the same by the following steps: For any two video channels among the video channels, in the communication direction of transmitting video resources from the video channel to the video aggregation platform, respectively obtain the first front-end device that is in communication connection with the front-end device corresponding to each video channel; If the first front-end devices that are communicatively connected to the front-end devices corresponding to the two video channels are the same, it is determined that the video resources transmitted by the two video channels are the same.
5. A video resource processing system, characterized in that: The system is applied to a video convergence platform, the video convergence platform is connected to a plurality of front-end devices, each front-end device provides video resources to the video convergence platform through its corresponding video channel, and the system includes: A video channel grouping module, which is configured to group all video channels according to the video resources transmitted by each video channel, wherein the video resources transmitted by the video channels in the same video channel group are the same, and the video resources transmitted by the video channels in different video channel groups are different; A virtual channel generation module, configured to generate virtual channels corresponding to each video channel group according to the video channels in each video channel group; A video resource processing module, which is configured to respond to a resource processing instruction for a current video channel and perform resource processing using a virtual channel corresponding to a video channel group where the current video channel is located; The resource processing instruction is an instruction for obtaining a real-time video stream of the video resource, and the step of "using the virtual channel corresponding to the video channel group where the current video channel is located to perform resource processing" specifically includes: Determine whether other video channels in the virtual channel are transmitting the real-time video stream; If yes, directly obtain the real-time video stream being transmitted by the other video channel; If not, obtaining the real-time video stream through any video channel in the virtual channel; The resource processing instruction is an instruction for obtaining the video recording information of the video resource, and the step of "using the virtual channel corresponding to the video channel group where the current video channel is located to perform resource processing" specifically includes: Determine whether the front-end device corresponding to the video channel in the virtual channel has stored the video information; If yes, directly obtain the video information stored in the front-end device; The resource processing instruction is an instruction to record the video resource, and the step of "using the virtual channel corresponding to the video channel group where the current video channel is located to perform resource processing" specifically includes: Determine whether other video channels in the virtual channel are recording the video resource; If so, the video resource transmitted by the current video channel is no longer recorded according to the resource processing instruction; If not, the video resource transmitted by the current video channel is recorded according to the resource processing instruction.
6. A control device, comprising a processor and a storage device, wherein the storage device is suitable for storing a plurality of program codes, characterized in that: The program code is suitable for being loaded and run by the processor to execute the video resource processing method according to any one of claims 1 to 4.
7. A computer-readable storage medium storing a plurality of program codes, characterized in that: The program code is suitable for being loaded and run by a processor to execute the video resource processing method according to any one of claims 1 to 4.
