Data correction method, device, computer equipment and computer readable storage medium
By detecting the transmission capacity of transmission nodes and determining the correction method in the multi-channel video image processing system, the problem of front-stage video data errors affecting the display of subsequent-stage nodes is solved, and efficient data correction and stable multi-channel transmission are achieved.
Patent Information
- Application Number
- CN202111368541.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-18
- Publication Date
- 2025-01-21
- Estimated Expiration
- 2041-11-18
AI Technical Summary
In a multi-channel video image processing system, when an error occurs in the video data at the current level, it will affect the display of all other nodes subordinate to the current level node, resulting in discontinuous display, incomplete image, overlapping and other problems.
By receiving the transmission correction instructions issued by the transmission nodes, the transmission capabilities of each transmission node in each channel are detected, the transmission correction method is determined based on the capability detection results, and the data is corrected through the target channel and the target transmission node.
It effectively avoids display problems caused by video data errors at certain levels of transmission nodes, improves the efficiency and effect of data correction, and ensures the stability of multi-channel transmission.
Smart Images

Figure CN114257847B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of data transmission, and in particular to a data correction method, device, computer equipment and computer-readable storage medium. Background Art
[0002] At present, in the process of driving display terminals such as liquid crystal and organic light emitting diodes for multi-channel display through video image processing systems, especially video image processing systems involving DisplayPort (DP, digital video interface standard) with VESA (Video Electronics Standards Association), MIPI (Mobile Industry Processor Interface, mobile industry processor interface standard), and HDMI (High Definition Multimedia Interface, high-definition multimedia interface standard), when the nodes in each channel detect that there is an error in the current frame data, problems such as discontinuity, incomplete image, overlap, and tearing will occur during display. In particular, when there are multiple channels in the video image processing system and a complex network topology structure with multiple levels of nodes in each channel, if there is an error in the video data of the previous level, it will affect the display of all other nodes subordinate to the current level node. Summary of the invention
[0003] Based on this, it is necessary to provide a data correction method, a data correction device, a computer device, a computer-readable storage medium and a computer program product to address the above problems.
[0004] A data correction method is used to correct errors that occur when transmitting data through multiple channels, each of which includes a plurality of transmission nodes; the data correction method includes:
[0005] receiving a transmission correction instruction issued by the transmission node, wherein the transmission correction instruction is generated when the transmission node determines that the received video data is erroneous;
[0006] Detecting the transmission capability of each of the transmission nodes in each of the channels, and generating a capability detection result;
[0007] A transmission correction method is determined according to the capability detection result, and data correction is performed according to the transmission correction method.
[0008] In one of the embodiments, the transmission correction instruction includes the identifier of each transmission node on the channel where the transmission node to be corrected is located.
[0009] In one of the embodiments, when the transmission node detects that the number of errors in the received video data reaches a preset threshold, it determines that the video data is erroneous.
[0010] In one of the embodiments, when the transmission node determines that the received video data is erroneous, the transmission node calls the cached data in the memory and displays it.
[0011] In one embodiment, the step of determining the transmission correction method according to the capability detection result includes:
[0012] Determining a target channel and a target transmission node suitable for correcting the data according to the transmission capability of each transmission node in each channel;
[0013] The data is modified through the target channel and the target transmission node in the target channel.
[0014] In one of the embodiments, the target channel includes the channel where the transmission node to be corrected is located, and the target transmission node includes other single or multiple transmission nodes in the channel where the transmission node to be corrected is located;
[0015] Alternatively, the target channel includes a channel other than the channel where the transmission node to be corrected is located, and the target transmission node includes a single or multiple transmission nodes in the channel other than the channel where the transmission node to be corrected is located.
[0016] A data correction device is used to correct errors that occur when transmitting data through multiple channels, each of which includes a plurality of transmission nodes; the data correction device includes:
[0017] A receiving module, used for receiving a transmission correction instruction issued by the transmission node, wherein the transmission correction instruction is generated when the transmission node determines that the received video data is erroneous;
[0018] A detection module, used to detect the transmission capability of each transmission node in each channel and generate a capability detection result;
[0019] The correction module is used to determine a transmission correction method according to the capability detection result, and perform data correction according to the transmission correction method.
[0020] A computer device comprises a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the above-mentioned data correction method when executing the computer program.
[0021] A computer-readable storage medium stores a computer program, which implements the steps of the above-mentioned data correction method when executed by a processor.
[0022] A computer program product comprises a computer program, which implements the steps of the above-mentioned data correction method when executed by a processor.
[0023] In the above data correction method, when an error occurs in the data received by a transmission node at a certain level, the video source end does not directly retransmit the video data to the transmission node, but detects the current transmission capacity of each transmission node in each channel, determines the transmission node with a surplus transmission capacity, and determines the transmission correction method accordingly, and then completes the data transmission correction. In this way, the transmission node with a surplus transmission capacity can be combined to assist in the transmission correction of the video data, so that the transmission node with erroneous video data can obtain the correct video data, avoiding the problem of discontinuity, incomplete image, overlap, etc. caused by video data errors at a certain level of transmission nodes. At the same time, compared with directly retransmitting video data, this embodiment can be combined with other nodes to assist in completing data transmission, effectively improving the correction efficiency and ensuring the correction effect. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] Figure 1 is a structural schematic diagram of a video image processing system in a specific example;
[0025] Figure 2 A schematic diagram of a data transmission network topology in a specific example;
[0026] Figure 3 A flowchart of a data correction method provided in one embodiment of the present application;
[0027] Figure 4 A flowchart of a data correction device provided by an embodiment of the present application;
[0028] Figure 5 A schematic diagram of the structure of a computer device provided in one embodiment of the present application. DETAILED DESCRIPTION
[0029] In order to facilitate the understanding of the present invention, the present invention will be described more fully below with reference to the relevant drawings. The preferred embodiments of the present invention are given in the drawings. However, the present invention can be implemented in many different forms and is not limited to the embodiments described herein. On the contrary, the purpose of providing these embodiments is to understand the disclosure of the present invention more thoroughly and comprehensively.
[0030] In the present invention, unless otherwise clearly specified and limited, the terms "installed", "connected", "connected", "fixed" and the like should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium, it can be the internal connection of two elements or the interaction relationship between two elements, unless otherwise clearly defined. For ordinary technicians in this field, the specific meanings of the above terms in the present invention can be understood according to specific circumstances.
[0031] The terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined as "first" and "second" may explicitly or implicitly include at least one of the features. In the description of the present invention, the meaning of "plurality" is at least two, such as two, three, etc., unless otherwise clearly and specifically defined.
[0032] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art of the present invention. The terms used herein in the specification of the present invention are only for the purpose of describing specific embodiments and are not intended to limit the present invention. The term "and / or" used herein includes any and all combinations of one or more related listed items.
[0033] As described in the background technology, in the application scenario of driving the display terminal for multi-channel display through the video image processing system, when the nodes in each channel detect that there is an error in the current frame data, problems such as discontinuity, incomplete image, overlap, and tearing will occur during display. In particular, when there are multiple channels in the video image processing system and a complex network topology structure with multiple levels of nodes in each channel, if there is an error in the video data of the previous level, it will affect the display of all other nodes subordinate to the current level node. If the same frame of video data is repeatedly transmitted to solve this problem, the transmission efficiency of the channel will be significantly reduced, and a large amount of video data will be stored at the node where the data error occurs, causing an excessive effective load and causing instability of the video transmission link on the channel.
[0034] In order to solve the above problems, the present application provides a data correction method, a data correction device, a computer device, a computer-readable storage medium and a computer program product.
[0035] First, let me introduce the video image processing system involved in this application:
[0036] Reference Figure 1,The video image processing system includes an embedded control module, an FPGA module, an external storage module, a fast storage module, a peripheral module, a video interface physical layer implementation module and a video transmission link.
[0037] Specifically, the embedded control module can use any embedded chip and system, and is mainly responsible for initiating signaling interaction, such as reading / writing registers, enabling / disabling video display modules, peripheral control, and video display module parameter settings; the FPGA module is mainly responsible for the specific implementation of storage control, peripheral control, video interface IP core implementation, and other implementation parts that require a large amount of data processing and low round-trip latency; the external storage module is mainly responsible for the storage of the original data stream of the video image that needs to be displayed in the video image processing system. This part uses storage media such as NandFlash and SSD, but is not limited to this; the fast storage module is used in the implementation process of the FPGA module that requires a large amount of data processing and low round-trip latency. In order to reduce the latency, the module delays storage. This module uses fast and low-latency physical devices, such as DDR3, but is not limited to this; the peripheral modules include GPIO (General-purpose input / output), UART (Universal Asynchronous Receiver / Transmitter), USB (Universal Serial Bus, Universal Serial Bus), network port, etc., but not limited to this; the video interface physical layer implementation module is mainly responsible for driving the physical layer implementation required by the display module, such as DisplayPort's TX / RX (Transmitter / Receiver)-PHY, MIPI's DPHY, etc., but not limited to this.
[0038] Among them, the FPGA module includes a bus interaction module, an MCU (Microcontroller Unit) video stream preprocessing module, a video data stream transmission control module, a clock control module, an embedded soft core control module, a bus controller module, an internal storage controller module, a peripheral control module, a display clock generator module, a video timing controller module, a video pattern processing module and a video interface IP core module.
[0039] Among them, the bus interaction module is mainly responsible for the selection and decision-making of all other modules connected to this module; the MCU video stream preprocessing module is mainly responsible for preprocessing and converting the video data stream input from the external storage module according to the format and parameter type set by the system, so as to facilitate the subsequent processing; the video data stream transmission control module is mainly responsible for the timing and parameter control of the data stream after data stream preprocessing and conversion; the clock control module is mainly responsible for the generation and control of the global clock in the video image processing system; the embedded soft core control module is the control core of the FPGA module, which is mainly responsible for the timing control, parameter configuration, physical process realization and other core functions of all modules inside the FPGA module. This part of the implementation can be used, such as Xilinx MicroBlaze, etc., but not limited to this; the bus controller module is mainly responsible for the control of all modules connected to the bus interaction module, but not limited to this; the video pattern processing module is mainly responsible for adapting to the mode conversion and timing control of the video image data stream corresponding to the video interface IP core module, but not limited to this; the internal storage controller module is mainly responsible for the control of the fast storage module, including the writing / reading of data streams, frame control, etc., but not limited to this; the peripheral control module is mainly responsible for controlling all peripheral modules, including the enabling / disabling of peripherals, working mode control, etc., but not limited to this; the display clock generator module is mainly responsible for the timing control of all modules with the video interface IP core module and the video interface physical layer implementation module, but not limited to this; the video timing controller module is mainly responsible for the processing of data conversion and timing control when the data input from the video pattern processing module is transmitted to the video interface IP core module, but not limited to this.
[0040] Among them, the video transmission link (ie, channel) includes a video source (ie, video sending source) and various transmission nodes (including embedded physical repeaters, cables with source IDs, detachable physical repeaters, and video receiving ends, etc.), but is not limited to this.
[0041] Figure 2 This is an example of the data transmission network topology of the video image processing system. The figure includes a video source end, which is equivalent to a centralized control node, and also includes 5 video nodes and 11 video devices, among which there are several transmission channels, namely: video source → video node 1 → video device 1 / 2 / 3, video source → video device 3, video source → video node 2 → video device 4 / 5, video source → video device 6, video source → video node 3 → video device 6 / 7 / 8 / 9 / 10, video source → video node 4 → video node 5 → video device 11. The process of multi-channel data transmission is that the video source end sends video data to each transmission channel, and transmits the video data to each video device through each transmission channel to realize video display.
[0042] In one embodiment, a data correction method is provided, which can be applied to the above-mentioned video image processing system, and can also be applied to other forms of multi-channel transmission and display systems. In this embodiment, only the above-mentioned video image processing system is used for illustration. The video image processing system includes a video source end, which transmits video data through several channels, and each channel includes several transmission nodes.
[0043] Reference Figure 3 The data correction method provided in this embodiment includes the following steps:
[0044] Step S200: receiving a transmission correction instruction sent by a transmission node, where the transmission correction instruction is generated when the transmission node determines that the received video data is erroneous.
[0045] First, the video source sends video data to each channel, which is then transmitted in sequence through the transmission nodes at each level in each channel. If a transmission node at a certain level determines that the received video data is erroneous, it generates a transmission correction instruction and sends the transmission correction instruction to the video source to request the video source to correct the erroneous video data at the transmission node.
[0046] Step S400: Detect the transmission capability of each transmission node in each channel and generate a capability detection result.
[0047] When the video source receives the transmission correction instruction sent by the transmission node, it does not directly retransmit the video data to the transmission node, but formulates a correction plan based on the actual status of each channel. In this embodiment, the current transmission capacity of each transmission node in each channel is first detected to obtain the capacity detection result, so as to formulate a correction strategy based on the actual transmission capacity of each transmission node.
[0048] Step S600: determine a transmission correction method according to the capability detection result, and perform data correction according to the transmission correction method.
[0049] When the video source determines the transmission capacity of each transmission node in each channel, it can determine the transmission correction method according to the capacity detection result, and then perform data correction according to the transmission correction method. Specifically, the transmission nodes with relatively abundant current transmission capacity can be determined according to the capacity detection result, and these transmission nodes with excess transmission capacity can be selected to assist in completing the transmission of video data, so that the transmission nodes with erroneous video data can receive the correct video data.
[0050] In the above data correction method, when an error occurs in the data received by a transmission node at a certain level, the video source end does not directly retransmit the video data to the transmission node, but detects the current transmission capacity of each transmission node in each channel, determines the transmission node with a surplus transmission capacity, and determines the transmission correction method accordingly, and then completes the data transmission correction. In this way, the transmission node with a surplus transmission capacity can be combined to assist in the transmission correction of the video data, so that the transmission node with erroneous video data can obtain the correct video data, avoiding the problem of discontinuity, incomplete image, overlap, etc. caused by video data errors at a certain level of transmission nodes. At the same time, compared with directly retransmitting video data, this embodiment can be combined with other nodes to assist in completing data transmission, effectively improving the correction efficiency and ensuring the correction effect.
[0051] In one embodiment, the transmission correction instruction includes the identifiers of each transmission node on the channel where the transmission node to be corrected is located. When the transmission node detects that the received video data is wrong, the identifier of the current transmission node and the identifiers of all transmission nodes on the channel can be carried in the transmission correction instruction and sent to the video source end, so that when correcting, the video data can be transmitted according to the path corresponding to the identifier.
[0052] Specifically, the transmission correction instruction may include a node flag bit, and the identifier of the current transmission node and the identifiers of all transmission nodes on the channel may be written into the node flag bit. The video source end only needs to read the content in the node flag bit from the transmission correction instruction to determine the transmission node where the error occurs, so as to facilitate transmitting the video data to the corresponding transmission node after determining the correction method.
[0053] In addition, the transmission correction instruction may also include a correction request flag, which is used to mark the data transmission correction request initiated by the transmission node where the video data error occurs to the video source end. When the video source end obtains the transmission correction instruction, it can read the correction request flag therein and then execute the subsequent correction steps.
[0054] In one of the embodiments, when the transmission node detects that the number of errors in the received video data reaches a preset threshold, it determines that the video data is erroneous.
[0055] Specifically, the transmission node can detect the received video data in real time. If the number of consecutive video data errors detected reaches a preset threshold, it is determined that the video data received by the current transmission node is erroneous. In practical applications, a counter can be set to count the number of errors detected. The setting of the preset threshold can avoid misjudgment of video data due to false detection and improve the accuracy of detection. The preset threshold can reduce the number of times the transmission correction instruction is initiated, thereby reducing the occupied effective bandwidth and payload.
[0056] In one of the embodiments, when the transmission node determines that the received video data is incorrect, the transmission node calls the cached data in the memory and displays it. When the transmission node determines that the received video data is incorrect, it needs to request the video source to correct the data transmission, but before the new video data is transmitted, the transmission node still needs to display it. In order to avoid display errors, the transmission node can read the stored data from the local memory for display and maintain the current display state until the video source completes the data transmission correction and the transmission node receives the correct video data. Specifically, the video data displayed in the previous frame can be read from the local memory to meet the overall display effect as much as possible.
[0057] In step S400, i.e., detecting the transmission capacity of each transmission node in each channel and generating the capacity detection result, the video source end can generate a transmission capacity detection request and send it to the transmission node of each channel. After receiving the corresponding transmission capacity detection request, the transmission node of each channel feeds back its own transmission capacity to the video source end, thereby the video source end can obtain the transmission capacity of each transmission node in each channel and generate the capacity detection result.
[0058] In this embodiment, the video source end can obtain the transmission capacity of other transmission nodes on the channel where the transmission node of the erroneous video data is located, so that the data correction can be assisted by other transmission nodes on the channel later, and can also obtain the transmission capacity of each transmission node on other channels, so that the data correction can be assisted by transmission nodes on other channels later.
[0059] In one embodiment, step S600, i.e., the step of determining the transmission correction method according to the capability detection result, includes:
[0060] Step S610: Determine a target channel and a target transmission node suitable for correcting the data according to the transmission capability of each transmission node in each channel.
[0061] Step S620: modify the data through the target channel and the target transmission node in the target channel.
[0062] The present application aims to complete the correction of data transmission with the assistance of other transmission nodes. First, it is necessary to determine which transmission nodes can be used to assist in the correction, that is, according to the transmission capacity of each transmission node in each channel, determine the channel (i.e., the target channel) and transmission node (i.e., the target transmission node) that can be used to correct the data, and then assist in the correction of the data based on the determined target channel and the target transmission node in the target channel.
[0063] The target channel may include the channel where the transmission node to be corrected is located, and the target transmission node may include other single or multiple transmission nodes in the channel where the transmission node to be corrected is located.
[0064] The target channel may also include a channel other than the channel where the transmission node to be corrected is located, and the target transmission node may also include a single or multiple transmission nodes in the channel other than the channel where the transmission node to be corrected is located.
[0065] Here are some corrections for different situations:
[0066]
[0067]
[0068] It should be noted that the selection priority of the above correction methods is from high to low as mode 1-mode 2-mode 3-mode 4-mode 5, that is, if there are available transmission nodes in the channel where the transmission node to be corrected for data transmission is located, the transmission nodes in the current channel are preferred. On this basis, when a single transmission node can complete the correction, a single transmission node is preferred. If a single transmission node cannot complete the correction, multiple transmission nodes are selected. If there are no available transmission nodes in the channel where the transmission node to be corrected for data transmission is located, transmission nodes in other channels are selected. If a single transmission node in other channels can complete the correction, a single transmission node is preferred. If a single transmission node cannot complete the correction, multiple transmission nodes are selected. The setting of the above priorities takes into account that when the video source end schedules the transmission node for data transmission correction, there will be multiple instruction transmissions, which will increase the scheduling complexity of the video source end, and then cause instability in the multi-channel data transmission correction process. Therefore, in order to ensure that the correction can be achieved, the scheduling can be avoided as much as possible and the stability can be guaranteed, and the number of channels and the number of transmission nodes are controlled as much as possible. In addition, when none of modes 1-4 can complete the data transmission correction, the video data is retransmitted.
[0069] After step S610, that is, determining a target channel and a target transmission node suitable for correcting data according to the transmission capability of each transmission node in each channel, the method may further include: allocating resources for data transmission correction to the target transmission node.
[0070] The allocated resources may include frame rates that are not fully used. For example, if the maximum frame rate is 120 Hz and the used frame rate is 60 Hz, the remaining 60 Hz may be used for data transmission correction. The allocated resources may also include Dummy Video (used for dummy data filling) and Fill Video (filling data, used for filling when data is insufficient) in the standard frame structure as resources for data transmission correction. Of course, the allocated resources may also include other types, which are not listed here one by one.
[0071] In this embodiment, the information interaction between the video source end and the transmission node can be carried out in the form of read-write fields. For example, it can include a node flag, a node correction request flag, a detection threshold flag, a node transmission capability detection flag, and a correction method selection flag, wherein the transmission node can read the preset threshold from the detection threshold flag when detecting video data, and then determine whether the video data is wrong; when it is detected that the received video data is wrong, the identifier of the current transmission node and the identifiers of other transmission nodes in the channel where the current transmission node is located can be written into the node flag, which is convenient for the video source end to read, and the state of the node correction request flag can be set to the correction state; when the video source end needs to detect the transmission capability of each transmission node, the capability detection request can be written into the node transmission capability detection flag, which is convenient for the transmission node to read the request and feedback its own transmission capability; when the video source end determines the transmission correction method according to the capability detection result, the determined correction method can be written into the correction method selection flag. The above information interaction method improves the interaction efficiency and interaction accuracy.
[0072] The above-mentioned flag bit can be added to the standard frame structure to obtain a modified frame structure, and the information interaction process between the video source end and each transmission node can be carried out through the transmission of the modified frame.
[0073] Specifically, the standard frame structure includes BS (Blanking Start), VB-ID (VerticalBlanking Identifier), Mvid (timer value of video data), Naud (timer value of audio data), Dummy Video (used for dummy data filling), BE (Blanking End), pixel data (used for sending video data), FS (Fill Start), Fill Video (filling data, used for filling when data is insufficient), and FE (Fill End). Node flags, node correction request flags, detection threshold flags, node transmission capability detection flags, and correction method selection flags are added at the preset positions of the above standard frame structure.
[0074] Among them, the node flag, node correction request flag, detection threshold flag, and correction method selection flag play an identification role and do not involve a long round-trip delay. Therefore, in the correction frame structure, the setting positions of these flags can be adjacent. As for the node transmission capability detection flag, since it is necessary to go through transmission and feedback and other links that require a lot of round-trip delay when initiating the capability detection, the transmission capability detection flag needs to be set to the capability detection initiation and capability detection end positions in the correction frame structure. The initiation position is used for the video source end to initiate the capability detection, and the end position is used for the video source end to receive feedback information to confirm whether all transmission nodes have completed the capability monitoring. For complex link topology structures, the round-trip delay that may be required for the capability detection process is relatively large. The positions of the capability detection initiation and end can be dynamically adjusted according to the complexity of the link topology structure to adapt to link topologies of different structures to correctly complete the capability detection.
[0075] The following is a specific example to illustrate the entire data correction method:
[0076] Step 01: The node flag of the video source end initializing the multi-channel data transmission correction command is the video source end, that is, no multi-channel data transmission correction is required;
[0077] Step 02: The video source terminal initializes the node correction request flag of the multi-channel data transmission correction command to the normal transmission state of the video data;
[0078] Step 03: The video source terminal initializes the detection threshold flag of the multi-channel data transmission correction command to a preset initial value;
[0079] Step 04: The node transmission capability detection flag of the video source end initializing the multi-channel data transmission correction command is invalid, that is, no data transmission capability detection is required;
[0080] Step 05: The video source terminal initializes the correction method of the multi-channel data transmission correction command to select the flag bit as the normal transmission state of the video data;
[0081] Step 06: The video source sends video data to the node through a multi-channel video transmission link;
[0082] Step 07: The current node receives and detects the current frame video data. If it is transmitted correctly, go to step 08, otherwise go to step 09;
[0083] Step 08: The current node uses the local memory to cache the current frame video data, performs normal video image processing and display, and then goes to step 06;
[0084] Step 09: The current node uses the video data cached in the local memory to display;
[0085] Step 10: Count the image data detection error counter of the current node and determine whether the value of the counter exceeds the initial value preset by the detection threshold flag. If it does not exceed the preset initial value, go to step 06; otherwise, go to step 11;
[0086] Step 11: The current node sets the node correction request flag to the data transmission correction state;
[0087] Step 12: The current node sets the node flag;
[0088] Step 13: The current node sends a multi-channel data transmission correction command to the video source end through the current multi-channel video transmission link;
[0089] Step 14: After the current multi-channel video transmission link of the current node receives the multi-channel data transmission correction command, the node flag is set and the current node is written into the node flag;
[0090] Step 15: The video source receives the multi-channel data transmission correction command of the current node, and corrects the node transmission capability detection flag to initiate a transmission capability detection request;
[0091] Step 16: The video source sends a multi-channel data transmission correction command on all channels and initiates a transmission capability detection request;
[0092] Step 17: Each node feeds back its own transmission capability to the video source;
[0093] Step 18: The video source selects a correction method according to the transmission capability feedback result, and corrects the correction method selection flag;
[0094] Step 19: The video source allocates nodes and resources used for data transmission correction for the selected correction method;
[0095] Step 20: The video source detects the usage of the current correction method. If there are still correction methods available, go to step 09; otherwise, go to step 01.
[0096] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.
[0097] Based on the same inventive concept, the embodiment of the present application also provides a data correction device for implementing the data correction method involved above. The implementation scheme for solving the problem provided by the data correction device is similar to the implementation scheme recorded in the above method, so the specific limitations in one or more data correction device embodiments provided below can refer to the limitations on the data correction method above, and will not be repeated here.
[0098] The data correction device provided in this embodiment is used to correct errors that occur when transmitting data through multiple channels, each of which includes a plurality of transmission nodes. Figure 4 The data correction device includes a receiving module 200, a detection module 400 and a correction module 600. Wherein:
[0099] The receiving module 200 is used to receive a transmission correction instruction sent by a transmission node, where the transmission correction instruction is generated when the transmission node determines that the received video data is erroneous;
[0100] The detection module 400 is used to detect the transmission capability of each transmission node in each channel and generate a capability detection result;
[0101] The correction module 600 is used to determine a transmission correction method according to the capability detection result, and perform data correction according to the transmission correction method.
[0102] In the above data correction device, when an error occurs in the data received by a transmission node at a certain level, the video source end does not directly retransmit the video data to the transmission node, but detects the current transmission capacity of each transmission node in each channel, determines the transmission node with a surplus transmission capacity, and determines the transmission correction method accordingly, and then completes the transmission correction of the data. In this way, the transmission node with a surplus transmission capacity can be combined to assist in the transmission correction of the video data, so that the transmission node with erroneous video data can obtain the correct video data, avoiding the problem of discontinuity, incomplete image, overlap, etc. caused by video data errors at a certain level of transmission nodes. At the same time, compared with directly retransmitting video data, this embodiment can be combined with other nodes to assist in completing data transmission, effectively improving the correction efficiency and ensuring the correction effect.
[0103] In one embodiment, the transmission correction instruction includes the identifier of each transmission node on the channel where the transmission node to be corrected is located.
[0104] In one of the embodiments, when the transmission node detects that the number of errors in the received video data reaches a preset threshold, it determines that the video data is erroneous.
[0105] In one of the embodiments, when the transmission node determines that the received video data is erroneous, the transmission node calls the cached data in the memory and displays it.
[0106] In one embodiment, the correction module is used to determine a target channel and a target transmission node suitable for correcting data according to the transmission capability of each transmission node in each channel; and correct the data through the target channel and the target transmission node in the target channel.
[0107] In one of the embodiments, the target channel includes the channel where the transmission node to be corrected is located, and the target transmission node includes other single or multiple transmission nodes in the channel where the transmission node to be corrected is located;
[0108] Alternatively, the target channel includes a channel other than the channel where the transmission node to be corrected is located, and the target transmission node includes a single or multiple transmission nodes in the channel other than the channel where the transmission node to be corrected is located.
[0109] Each module in the above data correction device can be implemented in whole or in part by software, hardware or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute the operations corresponding to each module.
[0110] Figure 5 This is a schematic diagram of the structure of a computer device provided in an embodiment of the present application. The computer device may be a server, and its internal structure diagram may be as follows: Figure 5 As shown. The computer device includes a processor, a memory and a network interface connected through a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store various types of data involved in the data correction method. The network interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a data correction method is implemented.
[0111] Those skilled in the art will understand that Figure 5 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0112] In one embodiment, a computer device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and the processor implements the steps in the above-mentioned method embodiments when executing the computer program.
[0113] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments are implemented.
[0114] In one embodiment, a computer program product is provided, including a computer program, which implements the steps in the above method embodiments when executed by a processor.
[0115] Those of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory or optical memory, etc. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM).
[0116] The technical features of the above-described embodiments may be arbitrarily combined. To make the description concise, not all possible combinations of the technical features in the above-described embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0117] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be construed as limiting the scope of the patent. It should be noted that, for a person of ordinary skill in the art, several modifications and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.
Claims
1. A data correction method, characterized in that: The method is used to correct errors that occur when video data sent by a video source is transmitted through multiple channels, each of which includes a plurality of transmission nodes; the data correction method is applied to the video source, and includes: receiving a transmission correction instruction issued by the transmission node, wherein the transmission correction instruction is generated when the transmission node determines that the received video data is erroneous; Detecting the transmission capability of each of the transmission nodes in each of the channels, and generating a capability detection result; Determine a transmission correction method according to the capability detection result, and perform data correction according to the transmission correction method; the determination of the transmission correction method according to the capability detection result, and the performance of data correction according to the transmission correction method, include: determining a target channel and a target transmission node suitable for correcting the data according to the transmission capability of each transmission node in each channel; if there are available transmission nodes in the channel where the transmission node to be corrected for data transmission is located or in a channel other than the channel where the transmission node to be corrected for data transmission is located, and a single transmission node among the available transmission nodes can complete the correction, adopt the single transmission node among the available transmission nodes as the target transmission node, and adopt the channel where the target transmission node is located as the target channel to complete the correction; If a single transmission node cannot complete the correction, multiple transmission nodes among the available transmission nodes are selected as the target transmission nodes, and the channel where the target transmission nodes are located is used as the target channel to complete the correction; The target channel includes the channel where the transmission node to be corrected is located, and the target transmission node includes other single or multiple transmission nodes in the channel where the transmission node to be corrected is located; or, the target channel includes channels other than the channel where the transmission node to be corrected is located, and the target transmission node includes other single or multiple transmission nodes in the channel other than the channel where the transmission node to be corrected is located; The information interaction process between the video source and each of the transmission nodes is carried out by transmitting a correction frame, and the correction frame is obtained by adding a node flag, a node correction request flag, a detection threshold flag, a node transmission capability detection flag, and a correction method selection flag at a preset position of a standard frame structure; The node flag is used to write the identifier of the current transmission node and the identifiers of all transmission nodes on the channel where the current transmission node is located. The node correction request flag is used to mark the data transmission correction request initiated by the transmission node where a video data error occurs to the video source end. The detection threshold flag is used to determine whether the video data is incorrect. The node transmission capability detection flag is used to write the capability detection request sent by the video source end to each of the transmission nodes. The correction method selection flag is used to write the transmission correction method determined by the video source end.
2. The data correction method according to claim 1, characterized in that: The transmission correction instruction includes the identifier of each transmission node on the channel where the transmission node to be corrected is located.
3. The data correction method according to claim 1, characterized in that: When the transmission node detects that the number of errors in the received video data reaches a preset threshold, it determines that the video data is erroneous.
4. The data correction method according to claim 1, characterized in that: When the transmission node determines that the received video data is erroneous, the transmission node calls the cached data in the memory and displays it.
5. A data correction device, characterized in that: Used to correct errors that occur when video data sent by a video source is transmitted through multiple channels, each of which includes a number of transmission nodes; the data correction device is applied to the video source, and includes: A receiving module, used for receiving a transmission correction instruction issued by the transmission node, wherein the transmission correction instruction is generated when the transmission node determines that the received video data is erroneous; A detection module, used to detect the transmission capability of each transmission node in each channel and generate a capability detection result; A correction module, used to determine a transmission correction method according to the capability detection result, and perform data correction according to the transmission correction method; The correction module is further used to determine a target channel and a target transmission node suitable for correcting the data according to the transmission capacity of each transmission node in each channel; if there is an available transmission node in the channel where the transmission node to be corrected for data transmission is located or in a channel other than the channel where the transmission node to be corrected for data transmission is located and a single transmission node among the available transmission nodes can complete the correction, a single transmission node among the available transmission nodes is used as the target transmission node, and the channel where the target transmission node is located is used as the target channel to complete the correction; if a single transmission node cannot complete the correction, multiple transmission nodes among the available transmission nodes are selected as the target transmission nodes, and the channel where the target transmission node is located is used as the target channel to complete the correction; The target channel includes the channel where the transmission node to be corrected is located, and the target transmission node includes other single or multiple transmission nodes in the channel where the transmission node to be corrected is located; or, the target channel includes channels other than the channel where the transmission node to be corrected is located, and the target transmission node includes other single or multiple transmission nodes in the channel other than the channel where the transmission node to be corrected is located; The information interaction process between the video source and each of the transmission nodes is carried out by transmitting a correction frame, and the correction frame is obtained by adding a node flag, a node correction request flag, a detection threshold flag, a node transmission capability detection flag, and a correction method selection flag at a preset position of a standard frame structure; The node flag is used to write the identifier of the current transmission node and the identifiers of all transmission nodes on the channel where the current transmission node is located. The node correction request flag is used to mark the data transmission correction request initiated by the transmission node where a video data error occurs to the video source end. The detection threshold flag is used to determine whether the video data is incorrect. The node transmission capability detection flag is used to write the capability detection request sent by the video source end to each of the transmission nodes. The correction method selection flag is used to write the transmission correction method determined by the video source end.
6. The data correction device according to claim 5, characterized in that: The transmission correction instruction includes the identifier of each transmission node on the channel where the transmission node to be corrected is located.
7. The data correction device according to claim 5, characterized in that: When the transmission node detects that the number of errors in the received video data reaches a preset threshold, it determines that the video data is erroneous.
8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the data correction method according to any one of claims 1 to 4 are implemented.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the data correction method according to any one of claims 1 to 4 are implemented.
10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the data correction method according to any one of claims 1 to 4 are implemented.
Citation Information
Patent Citations
Data transmission method for MAC layer based on cooperative communication between neighbor nodes in Internet of vehicles
CN108616952A