Data caching processing method, cloud server and network device
By calculating the inter-frame relationship between key frames and non-key frames and dynamically adjusting the cache size, the latency and integrity issues of the caching mechanism in cloud-based services are solved, enabling real-time response and complete transmission, and improving the user experience.
Patent Information
- Application Number
- CN202210094618.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-01-26
- Publication Date
- 2026-01-20
- Estimated Expiration
- 2042-01-26
AI Technical Summary
In existing technologies, the caching mechanisms of cloud-based services are unable to guarantee both latency and data transmission integrity, leading to problems such as display disorder and stuttering.
By calculating the inter-frame relationship between key frames and non-key frames, the cache size and depth of the terminal device are dynamically adjusted. The inter-frame relationship information calculated by cloud servers or network devices is used as cache configuration information to optimize the caching mechanism.
It reduces network latency, enables real-time response of cached data transmission, ensures complete frame transmission, and improves user experience.
Smart Images

Figure CN116546096B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of cloud-based wireless transmission, specifically to a data caching method, a cloud server, and network equipment. Background Technology
[0002] A new wave of data mining, data storage, data processing, and analysis technologies is emerging, making it easier, more convenient, and faster for users to handle massive amounts of data. For example, cloud processing technology is ubiquitous in network services, providing users with dynamic, scalable, and frequently virtualized resources via the internet.
[0003] Cloud-based extended reality (Cloud XR) and cloud gaming, which are latency-sensitive cloud-based services, are typical examples of "zero" caching, requiring the cloud streaming content transmitted over the network to be decoded and displayed immediately upon arrival at the terminal. However, due to the current uncertainties in network transmission and the limited processing capabilities of both the cloud and the terminal, it is difficult to achieve true "zero" caching for this type of service. Without caching, display issues such as out-of-order delivery and display errors may occur. Therefore, the terminal needs to implement a jitter caching mechanism to address these uncertainties in network transmission.
[0004] There are two existing jitter buffering mechanisms: fixed-value and dynamically adaptive. Fixed-value jitter buffers are pre-configured by the manufacturer with a fixed size or depth. Dynamically adaptive jitter buffers, on the other hand, can be configured by the network management system in software to dynamically adjust their size or depth during actual application implementation.
[0005] In practice, a long cache duration leads to an excessively large cache size, increasing latency and user experience. Conversely, a short cache duration means insufficient cached data, resulting in stuttering or screen tearing. Therefore, designing a reasonable caching mechanism that ensures both low latency and as complete data transmission as possible is a crucial technical challenge that needs to be addressed. Summary of the Invention
[0006] The embodiments of the present invention provide a data caching processing method, a cloud server, and a network device to solve the problem of large latency in the prior art, which makes it difficult to achieve real-time response of cached data transmission.
[0007] To solve the above-mentioned technical problems, the present invention is implemented as follows:
[0008] In a first aspect, embodiments of the present invention provide a data caching processing method applied to a cloud server, comprising: receiving service request information selected by a user and sent via a network device, and network configuration parameters determined by the network device; determining the service configuration parameters by selecting an encoding algorithm and an encoding strategy based on the service request information and the network configuration parameters; dividing the cloud-encoded image frames into key frames and non-key frames, and calculating the inter-frame relationship between the key frames and the non-key frames based on the service configuration parameters; and sending the calculated inter-frame relationship information as configuration information for configuring caching to a terminal device via the network device.
[0009] Optionally, the inter-frame relationship includes the inter-frame gap time occupied by the key frame and the number of affected image frames.
[0010] Optionally, the keyframe is the first frame within the image group and is encoded independently, while the non-keyframes are all other frames after the first frame within the image group.
[0011] Optionally, the configuration information is used by the terminal device to configure the size or depth of the jitter buffer.
[0012] Optionally, the cloud server calculates the frame interval time T occupied by the key frame and the non-key frame using the following formula. o ,
[0013]
[0014] Among them, T I The key represents the transmission duration of the key frame, FR represents the frame rate transmitted by the cloud server, n represents the ratio of key frames to non-key frames, and D represents the transmission duration of the key frame. p BW represents the average size of non-keyframes, and BW represents bandwidth. The cloud server calculates the number of affected image frames N1 using the following formula.
[0015]
[0016] Here, Ta represents the remaining time for a non-keyframe to be transmitted within a single frame display cycle.
[0017] Secondly, embodiments of the present invention provide a data caching processing method applied to a network device, comprising: receiving service request information sent from a terminal device and then sending the service request information to a cloud server; receiving service configuration parameters determined according to the service request information from the cloud server, the service configuration parameters including resolution, bitrate, frame rate, and encoding parameters; dividing image frames into key frames and non-key frames, calculating the inter-frame relationship between the key frames and the non-key frames according to the service request information and the service configuration parameters; and sending the calculated inter-frame relationship information as configuration information for configuring caching to the terminal device.
[0018] Optionally, the inter-frame relationship includes the inter-frame gap time occupied by the key frame and the number of affected image frames.
[0019] Optionally, the keyframe is the first frame within the image group and is encoded independently, while the non-keyframes are all other frames after the first frame within the image group.
[0020] Optionally, the configuration information is used by the terminal device to configure the size or depth of the jitter buffer.
[0021] Optionally, the cloud server calculates the frame interval time T occupied by the key frame and the non-key frame using the following formula. o ,
[0022]
[0023] Among them, T I The key represents the transmission duration of the key frame, FR represents the frame rate transmitted by the cloud server, n represents the ratio of key frames to non-key frames, and D represents the transmission duration of the key frame. p BW represents the average size of non-keyframes, and BW represents bandwidth. The cloud server calculates the number of affected image frames N1 using the following formula.
[0024]
[0025] Here, Ta represents the remaining time for a non-keyframe to be transmitted within a single frame display cycle.
[0026] Thirdly, embodiments of the present invention provide a cloud server, comprising: a data acquisition unit, configured to acquire service request information selected by a user and sent via a network device, and network configuration parameters determined by the network device; a data processing unit, configured to determine the service configuration parameters by selecting an encoding algorithm and encoding strategy based on the service request information and the network configuration parameters, and to divide the cloud-encoded image frames into key frames and non-key frames, and to calculate the inter-frame relationship between the key frames and the non-key frames based on the service configuration parameters; and a data transmission unit, configured to send the calculated inter-frame relationship information as configuration information for configuring a cache to a terminal device via the network device.
[0027] Optionally, the inter-frame relationship includes the inter-frame gap time occupied by the key frame and the number of affected image frames.
[0028] Optionally, the keyframe is the first frame within the image group and is encoded independently, while the non-keyframes are all other frames after the first frame within the image group.
[0029] Fourthly, embodiments of the present invention provide a network device, comprising: a data acquisition unit, configured to receive service request information sent from a terminal device and service configuration parameters determined by a cloud server, the service configuration parameters including resolution, bitrate, frame rate, and encoding parameters; a data processing unit, configured to divide image frames into key frames and non-key frames, calculate the inter-frame relationship between the key frames and the non-key frames based on the service request information and the service configuration parameters; and send the calculated inter-frame relationship information as configuration information for configuring a cache to the terminal device.
[0030] Optionally, the inter-frame relationship includes the inter-frame gap time occupied by the key frame and the number of affected image frames.
[0031] Optionally, the keyframe is the first frame within the image group and is encoded independently, while the non-keyframes are all other frames after the first frame within the image group.
[0032] Fifthly, embodiments of the present invention provide a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the methods described in the first and second aspects.
[0033] The above-described technical solution of the present invention has at least the following beneficial effects:
[0034] By calculating the inter-frame relationship between key frames and non-key frames, cache configuration information is obtained. Based on the cache configuration information, the corresponding cache size and depth are reserved in the terminal device, which reduces the latency of statistical network indicators, realizes real-time response of cached transmission data, ensures the complete transmission of frames, and improves the user experience of services. Attached Figure Description
[0035] Various other advantages and benefits will become apparent to those skilled in the art upon reading the following detailed description of preferred embodiments. The accompanying drawings are for illustrative purposes only and are not intended to limit the invention. Furthermore, the same reference numerals denote the same parts throughout the drawings. In the drawings:
[0036] Figure 1 This is an overall flowchart of the data caching method according to an embodiment of the present invention.
[0037] Figure 2 This is a flowchart illustrating the data caching process performed by the cloud processor in this embodiment of the invention.
[0038] Figure 3 This is a structural diagram of the data caching system according to an embodiment of the present invention.
[0039] Figure 4 This is an overall flowchart of a data caching method according to another embodiment of the present invention.
[0040] Figure 5 This is a flowchart of a data caching method performed by a network device according to another embodiment of the present invention.
[0041] Figure 6 This is a structural diagram of a data caching system according to another embodiment of the present invention. Detailed Implementation
[0042] Exemplary embodiments of the invention will now be described in more detail with reference to the accompanying drawings. While exemplary embodiments of the invention are shown in the drawings, it should be understood that the invention may be implemented in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this invention will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art.
[0043] The following description provides examples and is not intended to limit the scope, applicability, or configuration set forth in the claims. Changes may be made to the function and arrangement of the elements discussed without departing from the spirit and scope of this disclosure. Various procedures or components may be appropriately omitted, substituted, or added to the examples. For example, the described methods may be performed in a different order than described, and various steps may be added, omitted, or combined. Furthermore, features described with reference to certain examples may be combined in other examples.
[0044] The following describes embodiments of the present invention.
[0045] Figure 1 This is an overall flowchart of the data caching method according to an embodiment of the present invention.
[0046] like Figure 1 As shown, in step S1, terminal 1 sends a service request to network device 2.
[0047] Terminal 1 can be a mobile phone, tablet, XR terminal, etc., and network device 2 refers to the device in the wireless network, which can be the base station of the gNodeB node, without specific limitations. The service request type sent by the terminal can be cloud XR, cloud gaming, or other applications, and the service request content can be service request information such as resolution, bitrate, and frame rate selected by the user on the terminal device.
[0048] In step S2, network device 2 determines network configuration parameters.
[0049] Network configuration parameters here mainly refer to configuring the air interface bandwidth of the requested service. The air interface bandwidth configuration directly affects the cache depth and size. The air interface bandwidth parameter can be determined by the network device, and the bandwidth parameter value can be variable or fixed.
[0050] In step S3, the cloud server 3 determines the service configuration parameters. Based on the service request information sent by the network device 2, including information such as resolution, bit rate, and frame rate, and the determined network configuration parameters, it selects the downlink transmission video stream encoding algorithm. The encoding algorithm can be different algorithms, including H.264, H.265, VP9, etc. In addition, the encoding strategy can be selected, such as using fixed bit rate encoding, closed GOP encoding, etc.
[0051] In step S4, cloud server 3 calculates the inter-frame relationship of the image frames in the video stream encoded in the cloud. The inter-frame relationship includes the time that key frames occupy between non-key frames and the number of affected image frames.
[0052] For cloud gaming, the downlink transmission content is video stream information, consisting of many consecutive GOPs (Groups of Pictures). The first frame within a GOP is a keyframe (I-frame) and consists of only one frame. In cloud gaming and cloud XR scenarios, all other frames following the keyframe (I-frame) are non-keyframes (P-frames). The keyframe (I-frame) carries the most information, requires more transmission bandwidth, and has the greatest impact on jitter and latency.
[0053] The current mainstream encoding method for cloud-based virtual reality, cloud gaming, and other services is still fixed encoding, so the bitrate is a fixed value. In actual operation, each frame is displayed with a fixed frame period. However, due to the existence of keyframes (I-frames), the inter-frame interval of subsequent adjacent P-frames within the same GOP is caused by the keyframes (I-frames).
[0054] Based on information such as the bitrate BR, frame rate FR, GOP length L, the ratio of key frames to non-key frames n, and the ratio of GOP length to frame rate a transmitted from the cloud server, the average size of non-key frame P-frames can be calculated. Specifically, the calculation can be performed as follows:
[0055]
[0056] Calculate the actual P-frame transmission time Tp based on the network bandwidth configuration:
[0057]
[0058] In practical applications, the set frame rate is displayed within 1 second, meaning one frame is displayed every 1000 / FR milliseconds. For example, a 60fps application requires one frame to be displayed every 16.67ms. Therefore, the display interval between adjacent P-frames is 1000 / FR milliseconds. The remaining time Ta for a non-critical P-frame to be transmitted within one frame display cycle is:
[0059]
[0060] Based on the I-frame to P-frame size ratio, the transmission time of an I-frame should be n times the transmission time of a P-frame:
[0061]
[0062] The inter-frame interval To occupied by an I-frame from adjacent P-frames is calculated as follows:
[0063]
[0064] I-frames affect subsequent P-frames, causing timing disruptions in non-critical frames. The total number of frames affected is:
[0065]
[0066] Therefore, in step S4, the inter-frame relationship information was calculated using the above calculation method.
[0067] In step S5, network device 2 sends application layer messages as cache configuration information to terminal 1 based on the inter-frame relationship sent by the cloud server. Terminal 1 then configures the depth or size of the jitter cache for the corresponding duration according to the cache configuration information.
[0068] The terminal application layer configures the buffer based on the inter-frame interval of adjacent P-frames occupied by the I-frame and the number of subsequent P-frames affected by the I-frame. The terminal buffers a corresponding length of buffer size or depth based on the duration of adjacent P-frames occupied by the I-frame. When terminal 1 receives image or video data packets, it determines and adjusts the buffer size based on the received packet delay information.
[0069] In step S6, image or video data packets are cached according to the changed buffer size. This can adjust the buffer for data packets and image frames, reduce the dropping of data packets due to large latency jitter, and ensure timely data response.
[0070] Terminal 1 receives cache configuration information calculated by cloud processor 3 (including the transmission time of non-key frames occupied by key frames, the number of affected frames, etc.). Terminal 1 can count the number of image frames transmitted to terminal 1. When the number of affected frames is reached, the cache size is reduced, but the adjustment method is not limited here. Terminal 1 can also adjust the cache according to the cache configuration information of the next moment (related to the I-frame interval). If the cache configuration duration is reduced in the next cache configuration information, the cache is adjusted according to the reduction amount.
[0071] In this embodiment, the inter-frame relationship is calculated by cloud processor 1; therefore, using Figure 2 A flowchart illustrating the data caching performed by the cloud processor in this embodiment.
[0072] In step S101, the cloud processor receives service request information sent by the network device and network configuration parameters determined by the network device.
[0073] In step S102, the cloud server determines the service configuration parameters. It can select the encoding algorithm and encoding strategy based on the service request information sent by the network device, including information such as resolution, bit rate, and frame rate, as well as the network configuration parameters.
[0074] In step S103, the cloud server divides the image frames encoded in the cloud into key frames and non-key frames, and calculates the inter-frame relationship between the key frames and the non-key frames according to the service configuration parameters. The specific calculation method is the same as step S4 above, for example, calculating the inter-frame gap time occupied by the key frames and the number of image frames affected.
[0075] In step S104, the cloud server sends the inter-frame relationship information to the terminal as cache configuration information.
[0076] Figure 3 This is a structural diagram of a data caching system that implements the above data caching methods.
[0077] like Figure 3As shown, a data acquisition unit 31, a data processing unit 32, and a data sending unit 33 are configured on the cloud server 3 side.
[0078] The data acquisition unit 31 obtains the service request information reported by the terminal 1 and the network configuration parameters determined by the network device 2, and sends them to the data processing unit 32.
[0079] The data processing unit 32 calculates the average size of the P-frame, the transmission duration of the P-frame, the transmission duration of the I-frame, and the inter-frame interval time in which the I-frame occupies the duration of the P-frame as buffer configuration information.
[0080] The data sending unit 33 sends the cache configuration information to the network device 2, and then further sends it to the terminal 1.
[0081] According to this embodiment, since the inter-frame relationship information between key frames and non-key frames is used as cache configuration information, the corresponding cache size and depth can be dynamically reserved in the terminal device, which reduces the latency of statistical network indicators, realizes real-time response of cached transmission data, ensures complete frame transmission, and improves the user experience of services.
[0082] Next, another embodiment of the present invention will be described.
[0083] In the above embodiments, the inter-frame relationship information is calculated by the cloud server, while in this embodiment, the inter-frame relationship information is calculated by the network device.
[0084] Figure 4 This is an overall flowchart of a data caching method according to another embodiment of the present invention.
[0085] In step S1a, terminal 1a sends a service request to network device 2a. The type and content of the service request are the same as in step S1, and the request is sent to cloud server 3a.
[0086] In step S2a, cloud server 3a determines the service configuration parameters based on the service request information and transmits the configured service configuration parameters (including resolution, bitrate, frame rate, encoding parameters, etc.) to network device 2a. The encoding parameters include information such as the encoding algorithm, GOP type, and GOP length.
[0087] In step S3a, network device 2a determines network configuration parameters based on the service request information and service configuration parameters. The network configuration parameters here mainly refer to configuring the requested service air interface bandwidth, which directly affects the cache depth and size. The air interface bandwidth parameter can be determined by the network device, specifically through resource configuration implemented at the RRC layer. The bandwidth parameter value can be variable or fixed.
[0088] In step S4a, network device 2a calculates the inter-frame relationship information between key frames and non-key frames. The specific method for calculating the inter-frame relationship is described in step S4. Network device 2a then transmits the calculated inter-frame relationship results to terminal 1a as cache configuration information.
[0089] When multiple terminals request cloud XR or cloud gaming services from the cloud server, the cloud server can transmit multiple different configuration parameters to the network device. One network device then sends the cached configuration information to the multiple terminal devices, in principle prioritizing the configuration information with the longer latency.
[0090] In step S5a, terminal 1a obtains cache configuration information and determines the depth or size of the jitter cache for the corresponding duration based on the cache configuration information.
[0091] In step S6a, image or video data packets are cached according to the changed buffer size, and the buffer is adjusted for data packets and image frames to reduce the dropping of data packets due to large latency jitter.
[0092] In this embodiment, the inter-frame relationship is calculated by the network device; therefore, using Figure 5 A flowchart illustrating a data caching method performed by a network device according to another embodiment of the present invention.
[0093] In step S201, the network device receives service request information sent from the terminal and sends it to the cloud server, whereby the cloud server determines the service configuration parameters.
[0094] In step S202, the network device receives service configuration parameters (including resolution, bit rate, frame rate, encoding parameters, etc.) from the cloud server.
[0095] In step S203, network configuration parameters are determined based on service request information and service configuration parameters, and the inter-frame relationship between key frames and non-key frames is calculated and used as cache configuration information.
[0096] In step S204, the cache configuration information is sent to the terminal, and the terminal device makes corresponding cache adjustments.
[0097] Figure 6 This is a structural diagram of a data caching system for implementing this other embodiment of the data caching method.
[0098] like Figure 6 As shown, a data acquisition unit 21, a data processing unit 22, and a data transmission unit 23 are configured on the network device 2a side.
[0099] The data acquisition unit 21 obtains the service request information reported by the terminal 1a and the service configuration parameters determined by the cloud server 3a, and sends them to the data processing unit 22.
[0100] The data processing unit 22 determines the network configuration parameters based on the service request information and service configuration parameters, and calculates the average size of P frames, the transmission duration of P frames, the transmission duration of I frames, the inter-frame interval time in which I frames occupy the duration of P frames, etc., as cache configuration information.
[0101] The data sending unit 23 sends the cache configuration information to the terminal 1a, and the terminal 1a makes the corresponding cache adjustments.
[0102] According to the process of the other embodiment described above, the same effect can be achieved by calculating the inter-frame relationship information as cache configuration information on the network device side instead of the cloud server side.
[0103] This application embodiment also provides a readable storage medium storing a program or instructions that, when executed by a processor, implement the above-described functionality. Figure 1 or Figure 4 The various processes of the method embodiments shown can achieve the same technical effect, and will not be described again here to avoid repetition.
[0104] The processor mentioned above is the processor in the terminal described in the above embodiments. The readable storage medium includes computer-readable storage media, such as computer read-only memory (ROM), random access memory (RAM), magnetic disk, or optical disk.
[0105] The steps of the methods or algorithms described in this application can be implemented in hardware or by executing software instructions on a processor. The software instructions can consist of corresponding software modules, which can be stored in RAM, flash memory, ROM, EPROM, EEPROM, registers, hard disk, portable hard disk, read-only optical disk, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor, enabling the processor to read information from and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and storage medium can be housed in an ASIC. Alternatively, the ASIC can be housed in a core network interface device. Of course, the processor and storage medium can also exist as discrete components in the core network interface device.
[0106] Those skilled in the art will recognize that, in one or more of the examples above, the functions described in this application can be implemented using hardware, software, firmware, or any combination thereof. When implemented in software, these functions can be stored in a computer-readable medium or transmitted as one or more instructions or code on a computer-readable medium. Computer-readable media include computer storage media and communication media, wherein communication media include any medium that facilitates the transfer of a computer program from one place to another. Storage media can be any available medium accessible to a general-purpose or special-purpose computer.
[0107] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of this application. It should be understood that the above description is only a specific embodiment of this application and is not intended to limit the scope of protection of this application. Any modifications, equivalent substitutions, improvements, etc., made on the basis of the technical solution of this application should be included within the scope of protection of this application.
[0108] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, embodiments of this application can take the form of entirely hardware embodiments, entirely software embodiments, or embodiments combining software and hardware aspects. Furthermore, embodiments of this application can take the form of computer program products implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0109] This application describes embodiments of methods, apparatus (systems), and computer program products according to embodiments of this application with reference to flowchart illustrations and / or block diagrams. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0110] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1The function specified in one or more boxes.
[0111] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0112] Obviously, those skilled in the art can make various modifications and variations to the embodiments of this application without departing from the spirit and scope of this application. Therefore, if these modifications and variations to the embodiments of this application fall within the scope of the claims of this application and their equivalents, this application also intends to include these modifications and variations.
Claims
1. A data caching processing method, applied to a cloud server, characterized in that, include: Receive service request information selected by the user and sent via the network device, as well as network configuration parameters determined by the network device; The service configuration parameters are determined by selecting an encoding algorithm and encoding strategy based on the service request information and the network configuration parameters. The image frames encoded in the cloud are divided into key frames and non-key frames, and the inter-frame relationship between the key frames and the non-key frames is calculated according to the service configuration parameters. as well as The calculated inter-frame relationship information is used as configuration information for configuring the cache and sent to the terminal device via the network device; The inter-frame relationship includes the inter-frame gap time occupied by the key frame and the number of affected image frames.
2. The method according to claim 1, characterized in that, The keyframe is the first frame within the image group and is encoded independently. The non-keyframes are all the frames following the first frame in the image group.
3. The method according to claim 1, characterized in that, The configuration information is used by the terminal device to configure the size or depth of the jitter cache.
4. The method according to claim 1, characterized in that, The cloud server calculates the frame interval T occupied by the key frame and the non-key frame using the following formula. o , Among them, T I The key represents the transmission duration of the key frame, FR represents the frame rate transmitted by the cloud server, n represents the ratio of key frames to non-key frames, and D represents the transmission duration of the key frame. p BW represents the average size of non-keyframes, and BW represents the bandwidth. The cloud server calculates the number N1 of the affected image frames using the following formula. Here, Ta represents the remaining time for a non-keyframe to be transmitted within a single frame display cycle.
5. A data caching processing method, applied to a network device, characterized in that, include: Receive service request information sent from the terminal device, and then send the service request information to the cloud server; Receive service configuration parameters determined based on the service request information from the cloud server. These service configuration parameters include resolution, bitrate, frame rate, and encoding parameters. The image frames are divided into key frames and non-key frames, and the inter-frame relationship between the key frames and the non-key frames is calculated based on the service request information and the service configuration parameters. as well as The calculated inter-frame relationship information is used as configuration information for configuring the cache and sent to the terminal device; The inter-frame relationship includes the inter-frame gap time occupied by the key frame and the number of affected image frames.
6. The method according to claim 5, characterized in that, The keyframe is the first frame within the image group and is encoded independently. The non-keyframes are all the frames following the first frame in the image group.
7. The method according to claim 5, characterized in that, The configuration information is used by the terminal device to configure the size or depth of the jitter cache.
8. The method according to claim 5, characterized in that, The network device calculates the interframe interval T occupied by the key frame and the non-key frame using the following formula. o , Among them, T I The key represents the transmission duration of the key frame, FR represents the frame rate transmitted by the cloud server, n represents the ratio of key frames to non-key frames, and D represents the transmission duration of the key frame. p BW represents the average size of non-keyframes, and BW represents the bandwidth. The network device calculates the number N1 of the affected image frames using the following formula. Here, Ta represents the remaining time for a non-keyframe to be transmitted within a single frame display cycle.
9. A cloud server, characterized in that, include: A data acquisition unit is used to acquire service request information selected by the user and sent via a network device, as well as network configuration parameters determined by the network device. The data processing unit is used to select encoding algorithms and encoding strategies based on the service request information and the network configuration parameters to determine the service configuration parameters, and to divide the image frames encoded in the cloud into key frames and non-key frames, and to calculate the inter-frame relationship between the key frames and the non-key frames based on the service configuration parameters. as well as A data transmission unit is used to send the calculated inter-frame relationship information as configuration information for configuring the cache to the terminal device via a network device; The inter-frame relationship includes the inter-frame gap time occupied by the key frame and the number of affected image frames.
10. The cloud server according to claim 9, characterized in that, The keyframe is the first frame within the image group and is encoded independently. The non-keyframes are all the frames following the first frame in the image group.
11. A network device, characterized in that, include: The data acquisition unit is used to receive service request information sent from the terminal device and service configuration parameters determined by the cloud server. The service configuration parameters include resolution, bit rate, frame rate, and encoding parameters. A data processing unit is used to divide image frames into key frames and non-key frames, and to calculate the inter-frame relationship between the key frames and the non-key frames based on the service request information and the service configuration parameters. as well as The calculated inter-frame relationship information is used as configuration information for configuring the cache and sent to the terminal device; The inter-frame relationship includes the inter-frame gap time occupied by the key frame and the number of affected image frames.
12. The network device according to claim 11, characterized in that, The keyframe is the first frame within the image group and is encoded independently. The non-keyframes are all the frames following the first frame in the image group.
13. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the method as described in any one of claims 1 to 8.
Citation Information
Patent Citations
Real-time live TS stream de-jitter processing method and system
CN108810656A
Real-time communication transmission method and device and real-time communication processing method and device
CN112040232A