Video reconstruction method and system for adaptive coding cache in heterogeneous network

By using hierarchable video encoding and centralized encoding cache algorithms in heterogeneous networks, combining random linear encoding and exclusive OR encoding, adaptively adjusting video transmission, the problem of channel bottleneck user effect is solved, the transmission traffic is reduced, and the transmission traffic is improved System performance.

CN119172561APending Publication Date: 2024-12-20SUN YAT SEN UNIVERSITY SHENZHEN +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411195501.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-29
Publication Date
2024-12-20

AI Technical Summary

Technical Problem

In heterogeneous networks, the channel bottleneck user effect caused by different channel conditions makes the system's transmission performance limited by the worst channel users, resulting in increased transmission traffic and decreased performance.

Method used

By sending test signals to obtain user status information, perform layered video encoding processing and centralized encoding cache algorithm, combine random linear encoding and exclusive OR encoding, adaptively adjust video transmission, reduce transmission traffic, and improve system performance.

Benefits of technology

It effectively reduces the transmission traffic of the communication link, improves the transmission performance of the system, adapts to different channel conditions, ensures the average user experience quality, and reduces network burden.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119172561A_ABST
    Figure CN119172561A_ABST
Patent Text Reader

Abstract

The invention discloses a video reconstruction method and system for adaptive coding caching in a heterogeneous network, and the method comprises the steps: transmitting a test signal, and obtaining the state information of a user; according to the state information, performing hierarchical video coding processing on a video source file to obtain a plurality of layer files; segmenting each layer file to obtain a plurality of sub-files; according to a centralized coding caching algorithm, caching the plurality of sub-files to obtain a cached file; according to the state information, performing random linear coding and XOR coding on the video source file to obtain a plurality of target coding data packets; and reconstructing a video according to the cache file and the target coded data packet to obtain a target video. The method can reduce the transmission flow of the communication link, improves the transmission performance of the system, and can be widely applied to the technical field of communication.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of communication technology, and in particular to a method and system for video reconstruction using adaptive coding buffering in a heterogeneous network. Background Art

[0002] In real-world communication networks, different users experience varying channel conditions due to varying network conditions. In multicast scenarios, system transmission performance is limited by the user with the worst channel conditions, often referred to as the "channel bottleneck user effect." Even if most users have good channel conditions, if even one user experiences significantly poor channel quality, system performance can be significantly compromised. Summary of the Invention

[0003] In view of this, the main purpose of the embodiments of the present invention is to provide a video reconstruction method and system for adaptive coding caching in a heterogeneous network, in order to solve at least one problem of the prior art. The present invention can reduce the transmission traffic of the communication link and improve the transmission performance of the system.

[0004] To achieve the above object, an embodiment of the present invention provides a method for video reconstruction using adaptive coding cache in a heterogeneous network, the method comprising the following steps:

[0005] Send a test signal to obtain user status information;

[0006] According to the state information, the video source file is subjected to layered video encoding processing to obtain a plurality of layer files;

[0007] Splitting each layer file to obtain a plurality of sub-files;

[0008] caching the plurality of sub-files according to a centralized coding cache algorithm to obtain a cache file;

[0009] According to the state information, the video source file is subjected to random linear encoding and XOR encoding to obtain a plurality of target encoding data packets;

[0010] The video is reconstructed according to the cache file and the target coded data packet to obtain the target video.

[0011] In some embodiments, the sending of a test signal to obtain user status information includes the following steps:

[0012] Sending the test signal to obtain the number of users, channel conditions, and average experience quality requirements;

[0013] The status information includes the number of users, the channel status, and the average experience quality requirement.

[0014] In some embodiments, a method for video reconstruction in a heterogeneous network with adaptive coding caching further includes the following steps:

[0015] Obtaining an average distortion requirement of each user according to the channel condition and the average experience quality requirement;

[0016] According to the average distortion requirement, a video source file is obtained.

[0017] In some embodiments, performing random linear encoding and XOR encoding on the video source file according to the state information to obtain a plurality of target encoded data packets includes the following steps:

[0018] According to the average distortion requirement and the channel condition in the state information, randomly linearly encode the video source file to obtain a plurality of initial encoded data packets;

[0019] The initial coded data packet is XOR-encoded to generate a plurality of target coded data packets.

[0020] In some embodiments, reconstructing the video according to the cache file and the target coded data packet to obtain the target video includes the following steps:

[0021] According to the cache file, decoding operation is performed on the target encoded data packet to obtain the target requested file;

[0022] The video is reconstructed according to the cache file and the target request file to obtain the target video.

[0023] In some embodiments, decoding the target encoded data packet according to the cache file to obtain the target requested file includes the following steps:

[0024] Performing XOR decoding on a plurality of target coded data packets through the cache file to obtain a plurality of initial coded data packets;

[0025] Random linear decoding is performed on a plurality of the initially encoded data packets to obtain a plurality of the target request files.

[0026] To achieve the above object, another aspect of an embodiment of the present invention provides a video reconstruction system for adaptive coding cache in a heterogeneous network, the system comprising:

[0027] The first module is used to send a test signal to obtain user status information;

[0028] The second module is configured to perform layered video encoding processing on the video source file according to the state information to obtain a plurality of layer files;

[0029] The third module is used to split each layer file into several sub-files;

[0030] The fourth module is used to cache the plurality of sub-files according to a centralized coding cache algorithm to obtain a cache file;

[0031] A fifth module is configured to perform random linear encoding and XOR encoding on the video source file according to the state information to obtain a plurality of target encoding data packets;

[0032] The sixth module is used to reconstruct the video according to the cache file and the target coding data packet to obtain the target video.

[0033] To achieve the above-mentioned purpose, another aspect of an embodiment of the present invention provides an electronic device, which includes a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, it implements the video reconstruction method of adaptive coding cache in a heterogeneous network described above.

[0034] To achieve the above-mentioned purpose, another aspect of an embodiment of the present invention provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, it implements the video reconstruction method of adaptive coding cache in a heterogeneous network described above.

[0035] To achieve the above objectives, another aspect of an embodiment of the present invention provides a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device can read the computer instructions from the computer-readable storage medium and execute the computer instructions, causing the computer device to perform the aforementioned method for video reconstruction using adaptive coding caching in a heterogeneous network.

[0036] The embodiments of the present invention include at least the following beneficial effects: The present invention provides a video reconstruction method and system with adaptive coding caching in a heterogeneous network, which obtains user status information by sending a test signal; based on the status information, performs layered video coding processing on the video source file to obtain several layer files; each of the layer files is divided to obtain several sub-files; based on a centralized coding caching algorithm, the several sub-files are cached to obtain cache files; based on the status information, random linear coding and XOR coding are performed on the video source file to obtain several target coding data packets; based on the cache files and the target coding data packets, the video is reconstructed to obtain the target video. The present invention achieves efficient transmission through adaptive means for different status information, which can reduce the transmission traffic of the communication link and improve the transmission performance of the system. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0038] Figure 1 is a schematic diagram of the overall architecture of the system provided by an embodiment of the present invention;

[0039] Figure 2 This is a flow chart of a video reconstruction method for adaptive coding cache in a heterogeneous network provided by an embodiment of the present invention;

[0040] Figure 3 This is a flowchart of the working steps of the encoder of the central server provided by an embodiment of the present invention;

[0041] Figure 4 Schematic diagram of a data packet transmission process according to an embodiment of the present invention;

[0042] Figure 5 This is a flowchart of the working steps of the client decoder provided by an embodiment of the present invention;

[0043] Figure 6 It is a schematic diagram of the overall step process provided by an embodiment of the present invention;

[0044] Figure 7 It is a schematic diagram of the hardware structure of the electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0045] In order to make the objectives, technical solutions and advantages of the present invention more clearly understood, the present invention is further described in detail below with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are merely for the purpose of explaining the present invention and are not intended to limit the present invention. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the embodiments of the present invention. They are merely examples of devices and methods consistent with some aspects of the embodiments of the present invention as detailed in the appended claims.

[0046] It should be noted that although the functional modules are divided in the system schematic and the logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than the module division in the system or the order in the flowchart. The terms "first / S100" and "second / S200" in the specification and claims and the above-mentioned figures may be used herein to describe various concepts, but unless otherwise specified, these concepts are not limited by these terms. These terms are only used to distinguish one concept from another. For example, without departing from the scope of the embodiments of the present invention, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, the words "if" and "if" as used herein may be interpreted as "at the time of" or "when" or "in response to a determination".

[0047] The terms "at least one", "plurality", "each", "any", etc. used in the present invention include at least one, two or more, multiple, two or more, each refers to each of the corresponding multiple, and any refers to any one of the multiple.

[0048] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which the present invention pertains. The terms used herein are for the purpose of describing embodiments of the present invention only and are not intended to limit the present invention.

[0049] In the field of network communications, data transmission performance has always been a focus of attention. However, in real-world communication networks, different users experience varying channel conditions due to varying network conditions. In multicast scenarios, system transmission performance is limited by the user with the worst channel conditions, commonly known as the "channel bottleneck user effect." Even if most users have good channel conditions, if even one user experiences significantly poor channel quality, system performance can be significantly degraded. As a multicast technology, codecache is also subject to the channel bottleneck user effect.

[0050] Furthermore, in heterogeneous erasure broadcast channels, users may receive different numbers of packets. Therefore, system performance is limited by the worst-case channel conditions of each user. Furthermore, when users have inconsistent video quality requirements, the number of packets transmitted to each user may also vary, reducing multicast opportunities.

[0051] In view of this, the embodiment of the present invention provides an optional overall system architecture, which can implement a video reconstruction method of adaptive coding cache in a heterogeneous network according to the embodiment of the present invention, such as Figure 1 As shown, the overall architecture of the system consists of a central server with encoding and transmission functions, and K clients with decoding, caching, and receiving functions. The central server's database contains N files of equal length, corresponding to N video clips. To meet the distortion requirements of different users, server files need to be compressed and encoded. This allows the server to perform layered video encoding, encoding each file into L layers. The first layer, called the base layer, provides the lowest-quality video playback. The other layers, called enhancement layers, provide higher-quality video files while maintaining the base layer. The more enhancement layers a user receives, the higher the video playback clarity. Furthermore, K clients (i.e., users) connect to the central server via a shared link and receive data packets transmitted by the server. The server broadcasts data packets to the clients, and the clients receive them probabilistically. The probability of successful packet reception may vary from client to client. Each client decodes the received data packets, combines them with its own cached content, and reconstructs the requested video, thus enabling video playback. During the preprocessing phase, the clients have access to all files in the database and cache a portion of the content. In the data transmission phase, the signal transmitted by the server will be divided into several packets of equal size for transmission. These packets will be broadcasted in turn through the shared channel, through the heterogeneous packet erasure channel, where the channel packet loss rate corresponding to user k is δ k When the server broadcasts a data packet, user k receives it with probability 1-δ k Receive the data packet.

[0052] like Figure 2 As shown, an embodiment of the present invention provides a method for video reconstruction using adaptive coding cache in a heterogeneous network. The method may include but is not limited to steps S100 to S600:

[0053] Step S100: Send a test signal to obtain user status information;

[0054] Step S200, performing layered video encoding processing on the video source file according to the state information to obtain a plurality of layer files;

[0055] Step S300, splitting each layer file into several sub-files;

[0056] Step S400: caching the plurality of sub-files according to a centralized coding cache algorithm to obtain a cache file;

[0057] Step S500, performing random linear encoding and XOR encoding on the video source file according to the state information to obtain a plurality of target encoding data packets;

[0058] Step S600: reconstruct the video according to the cache file and the target coded data packet to obtain the target video.

[0059] In step S100 of some embodiments, the central server sends a test signal to detect the number of users, channel conditions that the users may experience, and the average quality of experience requirements of the user set.

[0060] In some embodiments, before the data transmission phase begins, the central server first determines the allowable distortion rate of each user's requested video based on the average quality of experience requirements and the channel conditions of each user, so that the allowable distortion rate of the client's requested video is adaptive to the channel conditions. In addition, the central server determines the content to be transmitted based on the client's requested file, the client's allowable distortion rate, and the client's cached content, relying on a centralized coding cache algorithm. During the subsequent transmission process, the central server divides the determined transmission content into several equal-sized data packets, and determines the target user set for each data packet through the centralized coding cache algorithm, and sends each data packet to the target user via a broadcast channel. The target user either successfully receives the data packet or a packet is lost. By using XOR coding to construct multicast opportunities in the subsequent transmission process, random linear coding is introduced to solve the problem of possible packet loss.

[0061] In step S200 of some embodiments, based on the client's status information, the central server performs layered video encoding on the video source file, encoding each video file into several layers of files. The size and compression ratio of each layer of files can be calculated and determined based on the channel conditions and the quality of experience requirements.

[0062] In step S300 of some embodiments, the central server further divides each layer file into a number of sub-files of equal size.

[0063] In step S400 of some embodiments, the user may obtain a cache file by communicating with a central server and caching a portion of sub-files according to a centralized coding cache algorithm.

[0064] In some embodiments, step S500 may include but is not limited to steps S510 to S520:

[0065] Step S510: performing random linear encoding on the video source file according to the average distortion requirement and the channel condition in the state information to obtain a plurality of initial encoded data packets;

[0066] Step S520: XOR-encode the initial coded data packet to generate a plurality of target coded data packets.

[0067] In some embodiments, in steps S510 to S520, the central server performs random linear encoding and XOR encoding on the video content according to the user's request, and sends the encoded data packets to the client via multicast transmission technology. Figure 3 As shown in the figure, the central server performs random linear encoding on each of the t sub-files requested by the client in the video source file, generating n RLNC encoded data packets for each sub-file. The central server then performs XOR on the t RLNC encoded data packets in sequence, generating n Xor-RLNC encoded data packets.

[0068] In some embodiments, step S600 may include but is not limited to steps S610 to S620:

[0069] Step S610: decoding the target coded data packet according to the cache file to obtain a target requested file;

[0070] Step S620: Reconstruct the video according to the cache file and the target request file to obtain the target video.

[0071] In some embodiments, step S610 may include but is not limited to steps S611 to S612:

[0072] Step S611, performing XOR decoding on a plurality of target coded data packets using the cache file to obtain a plurality of initial coded data packets;

[0073] Step S612: Perform random linear decoding on a plurality of the initially encoded data packets to obtain a plurality of the target request files.

[0074] In step S610 of some embodiments, the client receives data packets sent from the server according to probability, and uses the cache file to decode the successfully received target coded data packets. After decoding is completed, it sends a confirmation character to the central server to confirm the transmission status. Among them, the data packets sent by the server will pass through the packet erasure channel, and some of the data packets may be lost. For example, Figure 4As shown in the figure, for the n Xor-RLNC encoded data packets sent by the server, due to the packet erasure channel, the client can only receive m Xor-RLNC encoded data packets (m < n). The client decodes the successfully received Xor-RLNC encoded data packets using the cached file and reconstructs the requested video by combining the cached content in the subsequent process.

[0075] In step S620 of some embodiments, the client reconstructs the requested video based on the decoded content, that is, the initially encoded data packets obtained by decoding, in combination with the cached file, to obtain a distorted version of the requested video, and the client plays this video.

[0076] In some embodiments, the decoding method is as Figure 5 shown. First, use the cached file to perform XOR decoding on the m Xor-RLNC encoded data packets to obtain m RLNC encoded data packets, then perform random linear decoding to recover the initial m data packets and merge them, so as to obtain the sub-file requested by the client; then merge the obtained sub-file requested by the client with the client's cached file to further reconstruct the requested video content.

[0077] Under the premise of considering heterogeneous networks, the embodiments of the present invention propose an adaptive mechanism for selecting the clarity version of the requested video according to the user's channel conditions, make full use of the multicast opportunities constructed by the coded caching technology and the scalable video coding technology, use random linear coding to provide reliable transmission, and combine the existing encoding and decoding technologies. Under the premise of ensuring the average quality of experience of users, the traffic size of video transmission during the network peak period is greatly reduced, providing an effective solution to the channel bottleneck user effect in the video distribution system and greatly reducing the communication burden.

[0078] Exemplarily, as Figure 6 shown, the overall step process of the system is as follows:

[0079] Step 1: Enter the preprocessing stage. The central server sends a test signal to the client to detect the status information of the client, where the status information includes the number of clients, channel conditions, average quality of experience requirements, etc.

[0080] Step 2: The client sends a connection request to the server. The server determines whether all clients have been connected to the server. When it is confirmed that all clients have been connected, it starts to preprocess the video source file in the database. First, perform scalable video coding on the video source file and encode each video file into several layer files according to the status information of the client. Then perform file segmentation, and according to the centralized coded caching algorithm, divide each layer file into several sub-files of equal size.

[0081] Step 3: The client communicates with the server and obtains the pre-allocated cache file according to the centralized encoding cache algorithm, and the preprocessing phase ends.

[0082] Step 4: Entering the data transmission phase, the server adjusts the quality of the client's requested file based on the client's channel conditions, encouraging users with good channels to request high-quality files and users with poor channels to request low-quality files. This allows the client's quality request to adapt to its channel conditions. After determining the requested quality based on the average quality of experience (QoE), the client sends a file request to the server.

[0083] Step 5: The server performs random linear encoding and XOR encoding on the video content according to the user's request to form several encoded data packets, and sends the encoded data packets to the client through multicast transmission technology.

[0084] Step 6: The client decodes the successfully received Xor-RLNC encoded data packet using the cached content and reconstructs the requested video in combination with the cached file.

[0085] Taking three clients connected to a central server as an example, the specific implementation steps of an embodiment of the present invention are described. The three clients are respectively denoted as U1, U2, and U3. The channel packet loss rate of U1 is 0.5, the channel packet loss rate of U2 is 0.25, and the channel packet loss rate of U3 is 0. Each client has a cache space of F bits. It is required to ensure that the average distortion of all clients does not exceed 0.25. The server database contains three files A, B, and C of F bits in size. By way of example, an optional specific implementation step of an embodiment of the present invention is as follows:

[0086] Entering the preprocessing stage, the server sends a test signal. After receiving the detection signal, each client responds to the central server with a connection request and provides control information. The server obtains the status of each client from the control information, thereby detecting the number of users K = 3, the channel conditions experienced by each user (δ1, δ2, δ3) = (0.5, 0.25, 0), and the average experience quality distortion requirement of the user set Δ ≤ 0.25. After receiving the detection signal, the user responds to the central server with a connection request. After the server confirms that all clients are connected, it first performs layered video encoding on each file and encodes it into three layer files. For example, file A is encoded into (A 1 ,A 2 ,A 3 ) three layers. The size of each layer is determined by the channel packet loss rate and average distortion requirements. For example, in this example, the compression rates of the three layers are 0.5, 0.75, and 1 respectively. Furthermore, each layer file is divided into three non-overlapping parts (determined by the number of users and the size of the cache space). For example, A 1 Divided into Three copies are stored in the corresponding client cache according to the sub-file index, i.e. U1 cache U2 Cache U3 Cache ...and perform the same operation for other layer files. The final cache contents of the client are: U1: U2: U3:

[0087] Entering the data transmission phase, the quality of the files requested by each client is first adaptively adjusted according to the client's channel conditions, using the allowable distortion rate as a measure. The allowable distortion rate depends on the channel conditions and the average allowable distortion rate of all clients. The files requested by users with poor channels have higher distortion rates, and the files requested by users with good signals have lower distortion rates. In this example, the allowable distortion rates are set to U1:0.5, U2:0.25, U3:0, that is, the file distortion rate requested by user 1 is 0.5, the file distortion rate requested by user 2 is 0.25, and the file distortion rate requested by user 3 is 0. After determining the allowable distortion rate, the client sends a file request to the server. Suppose U1 requests file A, U2 requests file B, and U3 requests file C. After receiving the file request, the server begins to use encoding to construct multicast opportunities. According to the calculation formula of the parameter t in the encoding cache scheme, we have (K is the number of clients, M is the cache size, and N is the number of files), so in this example, t = 1. The parameter t represents the number of multicast opportunities that can be constructed using the codecache during the data transmission phase, meaning that each transmission can guarantee service to t clients.

[0088] To ensure that the client successfully decodes the requested file, the server encodes the sub-files that each client needs to transmit. First, XOR encoding is performed. According to the encoding cache algorithm, the multicast signals that can be successfully constructed are: Under ideal channels, all three signals have a multicast opportunity of size 2. However, due to packet erasure, the sub-files need to be further encoded in advance to ensure that the data packets successfully reach the client, so random linear encoding is used. As an example. To ensure Successfully reached client 2, first Perform random linear encoding, assuming It is divided into 4 equal-sized data packets for transmission, denoted as P1, P2, and P3. After random linear encoding, the resulting encoded data packets may be P1, P2, P3, and P1⊕P2⊕P3, a total of four data packets. For these four encoded data packets, the client can recover P1, P2, and P3 by receiving any three of them. For example, if client 2 successfully receives P1, P2, and P1⊕P2⊕P3, it can use P1 and P2 to decode P1⊕P2⊕P3 and recover P3, thus obtaining P1, P2, and P3. Sub-file after random linear encoding Recorded as This ensures that the client successfully decodes Therefore, in this example, the signal constructed by the proposed method is These signals will arrive at the corresponding client in the form of data packets through the packet erasure channel. Taking client 2 as an example, the client's decoding process is as follows: Client 2 will try to receive Subfile Contains three data packets, which are randomly linearly encoded. Contains four RLNC coded data packets, It also contains four RLNC coded data packets of equal size, so the four coded data packets are XORed one by one to obtain four Xor-RLNC coded data packets, that is, Since the packet loss rate of the channel of client 2 is 0.25, only three of the four Xor-RLNC encoded packets can be successfully received. Next, the three Xor-RLNC encoded packets are decoded using the cached content, because client 2 has cached the sub-file So it can be decoded Then, three of the four RLNC coded data packets are randomly linearly decoded to obtain the initial three sub-files. and merge them into sub-files Similarly, client 2 can also receive the signal from Get sub-files At this point, client 2 has the subfile and the sub-files originally stored in the cache Merge these sub-files to get layer file B 1 +B 2 , so that the video can be reconstructed, and the distortion rate of the reconstructed video is 0.25. According to the above steps, client 1 can obtain layer file A 1 , reconstruct a video with a distortion rate of 0.5, and client 2 can obtain layer file C1 +C 2 +C 3 , reconstructing a video with a distortion rate of 0. This example shows that the greater the user's channel packet loss rate, the higher the distortion rate of the reconstructed video. Therefore, this is a mechanism that adaptively controls the quality of the requested video according to the channel conditions.

[0089] An embodiment of the present invention further provides a video reconstruction device for adaptive coding cache in a heterogeneous network, comprising:

[0090] (1) The encoder deployed on the central server has the following functions:

[0091] In the preprocessing stage, the video source files are subjected to layered video encoding, and each video file is encoded into K layer files. The size and compression rate of each layer are calculated and determined based on the channel conditions and experience quality requirements.

[0092] During the data transmission phase, random linear encoding is applied to each client's requested data packets to prevent packet loss. When a client loses a packet, the random linear encoding feature can be used to recover the lost data packets.

[0093] During the data transmission phase, the data packets requested by each client are XOR-encoded to construct multicast opportunities between different user requests.

[0094] (2) The communication device deployed on the central server has the following functions:

[0095] The pre-processing stage sends a test signal to the client to detect the number of users, the channel conditions that may be experienced, and the average quality of experience requirements of the user set.

[0096] The pre-processing stage sends the video content that needs to be pre-cached to the client.

[0097] In the data transmission phase, the encoded signal is sent to the corresponding client according to the target user set.

[0098] (3) The communication device deployed on the client side has the following functions:

[0099] In the pre-processing stage, the system communicates with the central server, receives the test signal sent by the server, and obtains a pre-cached video file.

[0100] During the data transmission phase, the encoded data packets sent by the server are received probabilistically.

[0101] (4) The decoder deployed on the client has the following functions:

[0102] In the data transmission phase, the successfully received coded data packets are XOR-decoded, and the received coded data packets are XOR-decoded using the cached contents to decode random linear coded data packets.

[0103] During the data transmission phase, random linear decoding is performed on the random linear coded data packets, and the characteristics of random linear coding are used to recover the data packets lost during the transmission process to obtain the original layer file data packets.

[0104] During the data transmission phase, the layer file data packets are subjected to layered video decoding, and the decoded content is combined with the files in the cache space to reconstruct the requested video and obtain a distorted version of the requested video.

[0105] An embodiment of the present invention further provides a video reconstruction system for adaptive coding cache in a heterogeneous network, which can implement the above-mentioned video reconstruction method for adaptive coding cache in a heterogeneous network. The system includes:

[0106] The first module is used to send a test signal to obtain user status information;

[0107] The second module is configured to perform layered video encoding processing on the video source file according to the state information to obtain a plurality of layer files;

[0108] The third module is used to split each layer file into several sub-files;

[0109] The fourth module is used to cache the plurality of sub-files according to a centralized coding cache algorithm to obtain a cache file;

[0110] A fifth module is configured to perform random linear encoding and XOR encoding on the video source file according to the state information to obtain a plurality of target encoding data packets;

[0111] The sixth module is used to reconstruct the video according to the cache file and the target coding data packet to obtain the target video.

[0112] It can be understood that the contents of the above method embodiments are all applicable to the present system embodiments, the functions specifically implemented by the present system embodiments are the same as those of the above method embodiments, and the beneficial effects achieved are also the same as those achieved by the above method embodiments.

[0113] An embodiment of the present invention further provides an electronic device comprising a processor and a memory, wherein the memory stores a computer program, and when the processor executes the computer program, it implements the aforementioned method for video reconstruction using adaptive coding caching in a heterogeneous network. The electronic device can be any intelligent terminal, including a tablet computer and an in-vehicle computer.

[0114] It can be understood that the contents of the above method embodiments are applicable to the present device embodiments, the functions specifically implemented by the present device embodiments are the same as those of the above method embodiments, and the beneficial effects achieved are also the same as those achieved by the above method embodiments.

[0115] refer to Figure 7 , Figure 7 The hardware structure of an electronic device according to another embodiment is shown. The electronic device includes:

[0116] The processor 701 may be implemented using a general-purpose CPU (Central Processing Unit), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, and is configured to execute relevant programs to implement the technical solutions provided by the embodiments of the present invention.

[0117] The memory 702 can be implemented in the form of a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). The memory 702 can store an operating system and other application programs. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program code is stored in the memory 702 and is called by the processor 701 to execute the video reconstruction method of adaptive coding cache in a heterogeneous network according to the embodiment of the present invention.

[0118] Input / output interface 703, used to implement information input and output;

[0119] Communication interface 704, used to implement communication interaction between this device and other devices, which can be achieved through wired means (such as USB, network cable, etc.) or wireless means (such as mobile network, Wi-Fi, Bluetooth, etc.);

[0120] Bus 705 , which transmits information between various components of the device (e.g., processor 701 , memory 702 , input / output interface 703 , and communication interface 704 );

[0121] The processor 701 , the memory 702 , the input / output interface 703 and the communication interface 704 are connected to each other in communication within the device via a bus 705 .

[0122] An embodiment of the present invention further provides a computer-readable storage medium storing a computer program. When the computer program is executed by a processor, the computer program implements the above-mentioned method for video reconstruction using adaptive coding cache in a heterogeneous network.

[0123] It can be understood that the contents of the above method embodiments are all applicable to the present storage medium embodiment, the functions specifically implemented by the present storage medium embodiment are the same as those of the above method embodiments, and the beneficial effects achieved are also the same as those achieved by the above method embodiments.

[0124] An embodiment of the present invention further provides a computer program product or computer program, comprising computer instructions stored in a computer-readable storage medium. A processor of a computer device can read the computer instructions from the computer-readable storage medium and execute the computer instructions, causing the computer device to perform the aforementioned method for video reconstruction using adaptive coding caching in a heterogeneous network.

[0125] In summary, the video reconstruction method and system for adaptive coding cache in a heterogeneous network according to the embodiments of the present invention have the following advantages:

[0126] 1. Compared to traditional non-coding caching technologies, the embodiments of the present invention can significantly reduce bandwidth resources as the number of users increases, and their advantages are particularly prominent in large-scale user environments. The amount of data transmitted by the embodiments of the present invention depends on the average channel quality of the user group. Compared with previous coding caching research, it performs better in heterogeneous error channels, reduces the transmission traffic of shared links, and overcomes the bottleneck problem of transmission rate being limited by the worst channel.

[0127] 2. The embodiments of the present invention comprehensively consider the impact of heterogeneous channels and heterogeneous user quality requirements, and optimize the transmission rate to ensure the average user experience quality. The network conditions and optimization targets are closer to actual needs, and the processing method of the coding cache in heterogeneous channels is optimized and improved. It provides an effective solution to the bottleneck problem of heterogeneous channels and provides a theoretical reference for the deployment of cache-assisted video distribution systems in actual complex networks.

[0128] 3. The embodiment of the present invention jointly optimizes various steps, including the preprocessing of video files, the decision on user cache content, and the construction method of server transmission content. It also automatically adjusts the quality of user-requested files according to different channel conditions, achieves efficient transmission through adaptive means, minimizes the transmission traffic of the communication link, and effectively improves the transmission performance of the system.

[0129] 4. The embodiment of the present invention optimizes the storage and transmission process of video content through coding caching technology, thereby constructing multicast opportunities between users with different video requests, and providing multicast services to multiple users simultaneously through shared links, reducing the amount of transmitted data.

[0130] 5. The embodiments of the present invention utilize scalable video coding, allowing users to dynamically adjust the quality of received video based on their network bandwidth. This flexibility creates multicast opportunities for users with varying quality requirements during video transmission, enabling more efficient video transmission and a better user experience.

[0131] 6. The embodiment of the present invention is based on a centralized coding cache solution, adopts layered video coding technology, and introduces an adaptive mechanism to solve the bottleneck problem of channel heterogeneity, so as to achieve a single transmission to meet the communication needs of multiple users, effectively reduce the network transmission load, and improve the user experience quality.

[0132] In some optional embodiments, the function / operation mentioned in the block diagram may not occur in the order mentioned in the operation diagram. For example, depending on the function / operation involved, the two boxes shown in succession can actually be executed substantially simultaneously or the boxes can sometimes be executed in reverse order. In addition, the embodiment presented and described in the flow chart of the present invention is provided in an exemplary manner for the purpose of providing a more comprehensive understanding of the technology. The disclosed method is not limited to the operation and logic flow presented herein. Optional embodiments are contemplated in which the order of the various operations is changed and the sub-operations described as a part of a larger operation are performed independently.

[0133] Furthermore, although the present invention is described in the context of functional modules, it should be understood that, unless otherwise indicated, one or more of the functions and / or features described may be integrated into a single physical device and / or software module, or one or more functions and / or features may be implemented in separate physical devices or software modules. It will also be understood that a detailed discussion of the actual implementation of each module is not necessary for understanding the present invention. More specifically, given the properties, functions, and internal relationships of the various functional modules in the devices disclosed herein, the actual implementation of the module will be understood within the ordinary skill of an engineer. Therefore, a person skilled in the art using ordinary skill will be able to implement the present invention set forth in the claims without undue experimentation. It will also be understood that the specific concepts disclosed are merely illustrative and are not intended to limit the scope of the present invention, which is determined by the full scope of the appended claims and their equivalents.

[0134] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0135] The logic and / or steps represented in the flowcharts or otherwise described herein, for example, can be considered as an ordered list of executable instructions for implementing the logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (e.g., a computer-based system, a system including a processor, or other system that can fetch and execute instructions from an instruction execution system, apparatus, or device). For purposes of this specification, a "computer-readable medium" can be any device that can contain, store, communicate, propagate, or transport a program for use by, or in conjunction with, an instruction execution system, apparatus, or device.

[0136] More specific examples (a non-exhaustive list) of computer-readable media include the following: an electrical connection with one or more wires (electronic devices), a portable computer disk cartridge (magnetic devices), a random access memory (RAM), a read-only memory (ROM), an erasable and programmable read-only memory (EPROM or flash memory), a fiber optic device, and a portable compact disc read-only memory (CDROM). In addition, the computer-readable medium may even be paper or other suitable medium on which the program is printed, since the program may be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, deciphering, or processing in another suitable manner as necessary, and then stored in a computer memory.

[0137] It should be understood that various parts of the present invention can be implemented using hardware, software, firmware, or a combination thereof. In the above-described embodiments, multiple steps or methods can be implemented using software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented using hardware, as in another embodiment, any one of the following technologies known in the art or a combination thereof can be used: a discrete logic circuit having a logic gate circuit for implementing a logic function on a data signal, an application-specific integrated circuit having a suitable combination of logic gate circuits, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.

[0138] Throughout this specification, reference to terms such as "one embodiment," "some embodiments," "examples," "specific examples," or "some examples" means that a specific feature, structure, material, or characteristic described in conjunction with that embodiment or example is included in at least one embodiment or example of the present invention. In this specification, schematic representations of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples.

[0139] While embodiments of the present invention have been shown and described, it will be appreciated by those skilled in the art that various changes, modifications, substitutions, and variations may be made to the embodiments without departing from the principles and spirit of the invention, and that the scope of the invention is defined by the claims and their equivalents.

[0140] The above is a specific description of the preferred implementation of the present invention, but the present invention is not limited to the embodiments. Those skilled in the art can make various equivalent modifications or substitutions without violating the spirit of the present invention. These equivalent modifications or substitutions are all included in the scope defined by the claims of the present invention.

Claims

1. A video reconstruction method with adaptive coding cache in heterogeneous networks, It is characterized in that The following steps are involved: Send a test signal to obtain the user's status information; According to the state information, performing layered video encoding processing on the video source file to obtain a plurality of layer files; Splitting each of the layer files to obtain a plurality of sub-files; According to a centralized coding cache algorithm, cache the plurality of sub-files to obtain a cache file; According to the state information, the video source file is randomly linearly encoded and XOR-encoded to obtain a plurality of target encoding data packets; The video is reconstructed according to the cache file and the target coded data packet to obtain the target video.

2. The video reconstruction method of the adaptive coding cache in a heterogeneous network according to claim 1, It is characterized in that The sending of the test signal to obtain the user's status information includes the following steps: Sending the test signal to obtain the number of users, channel conditions, and average experience quality requirements; The state information includes the number of users, the channel status and the average experience quality requirement.

3. The video reconstruction method of adaptive coding cache in a heterogeneous network according to claim 2, It is characterized in that The following steps are also included: Acquire an average distortion requirement of each user according to the channel condition and the average experience quality requirement; According to the average distortion requirement, a video source file is obtained.

4. The video reconstruction method of adaptive coding cache in a heterogeneous network according to claim 3, It is characterized in that The step of performing random linear encoding and XOR encoding on the video source file according to the state information to obtain a plurality of target encoding data packets comprises the following steps: According to the average distortion requirement and the channel condition in the state information, the video source file is randomly linearly encoded to obtain a plurality of initial encoding data packets; The initial coded data packet is XOR-encoded to generate a plurality of target coded data packets.

5. The video reconstruction method of adaptive coding cache in a heterogeneous network according to claim 1, It is characterized in that The process of reconstructing the video according to the cache file and the target coded data packet to obtain the target video comprises the following steps: According to the cache file, decoding operation is performed on the target encoded data packet to obtain a target requested file; The video is reconstructed according to the cache file and the target request file to obtain the target video.

6. The video reconstruction method of adaptive coding cache in a heterogeneous network according to claim 5, It is characterized in that The step of decoding the target coded data packet according to the cache file to obtain the target requested file comprises the following steps: Through the cache file, XOR decoding is performed on a plurality of the target coded data packets to obtain a plurality of initial coded data packets; Random linear decoding is performed on a plurality of the initially encoded data packets to obtain a plurality of the target request files.

7. A video reconstruction system with adaptive coding cache in heterogeneous networks, It is characterized in that include: The first module is used to send a test signal to obtain user status information; The second module is used to perform hierarchical video encoding processing on the video source file according to the state information to obtain a plurality of layer files; The third module is used to split each layer file to obtain a plurality of sub-files; The fourth module is used to cache the plurality of sub-files according to a centralized coding cache algorithm to obtain a cache file; A fifth module is used to perform random linear encoding and XOR encoding on the video source file according to the state information to obtain a plurality of target encoding data packets; The sixth module is used to reconstruct the video according to the cache file and the target coded data packet to obtain the target video.

8. An electronic device, It is characterized in that including a processor and a memory; The memory is used to store programs; The processor executes the program to implement the method according to any one of claims 1 to 6.

9. A computer-readable storage medium, It is characterized in that The storage medium stores a program, and the program is executed by a processor to implement the method according to any one of claims 1 to 6.

10. A computer program product comprising a computer program, It is characterized in that When the computer program is executed by a processor, the method according to any one of claims 1 to 6 is implemented.