A cloud game time delay measurement method, device, cloud game server and system
Patent Information
- Application Number
- CN202310952607.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-07-31
- Publication Date
- 2026-10-30
- Estimated Expiration
- 2043-07-31
AI Technical Summary
[0003]上述测量方案要求在云游戏时延测量时,客户端和服务器端两侧的操作是建立在比较高精度的时间同步基础之上的,然而,在实际生产中,难以确保大量的客户端设备和服务器之间通过简单的授时机制就能够实现高精度的时间同步,并且通过截图或高速拍摄的方式进行画面截取比对来计算云游戏时延的方式,操作较为复杂,测量效率较低,通常仅适用于低频的抽样测量,难以支撑云游戏时延指标的常规监控,因此,当前业界云游戏时延监控中,主要采用网络中的RTT(Round-Trip Time)时延指标来描述云游戏时延情况
[0016]与现有技术相比,本发明实施例提供了一种云游戏的时延测量方法、装置、计算机可读存储介质、云游戏服务器及系统,云游戏服务器端在云游戏运行过程中,当接收到云游戏客户端发送的时延测量请求时,先获取本地视频流中产生的最新一帧游戏画面的第一帧标识数据,其中,本地视频流中的每一帧游戏画面均配置有对应的帧标识数据,并解析获取时延测量请求中携带的云游戏客户端维护的预设时间段内的RTT时延数据和云游戏客户端的当前视频流中的最新一帧游戏画面的第二帧标识数据;再根据第一帧标识数据和第二帧标识数据获取云游戏服务器端与云游戏客户端之间的帧差异数据;再根据RTT时延数据、帧差异数据和云游戏的FPS参数获取云游戏的时延数据。本发明实施例利用帧标识数据获得云游戏服务器端与云游戏客户端之间的帧差异数据,在云游戏RTT时延数据的基础上,通过RTT时延数据和帧差异数据完成云游戏时延数据的测量,能够简化时延测量方案,提高时延测量效率,并且提高时延测量结果的准确性。
Smart Images

Figure CN117041101B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of gaming technology, and in particular to a method, apparatus, computer-readable storage medium, cloud gaming server, and system for measuring latency in cloud gaming. Background Technology
[0002] Cloud gaming works by having users perform game actions on a cloud gaming client. These actions are transmitted over the network to the cloud gaming server. The resulting changes in the game screen are rendered on the server and converted into a video stream, which is then transmitted back to the cloud gaming client. Current technologies primarily measure latency between the cloud gaming client and server based on time synchronization. This involves capturing screenshots or high-speed camera footage of the images displayed on the cloud gaming client and the virtual machine on the server. The time difference between these two images is then calculated by comparing their timestamps; this difference represents the cloud gaming latency at the time of measurement.
[0003] The aforementioned measurement scheme requires that the operations on both the client and server sides be based on relatively high-precision time synchronization when measuring cloud gaming latency. However, in actual production, it is difficult to ensure that a large number of client devices and servers can achieve high-precision time synchronization through a simple time synchronization mechanism. Furthermore, the method of calculating cloud gaming latency by capturing and comparing images through screenshots or high-speed photography is relatively complex and inefficient. It is usually only suitable for low-frequency sampling measurements and cannot support routine monitoring of cloud gaming latency indicators. Therefore, the current industry mainly uses the RTT (Round-Trip Time) latency indicator in the network to describe cloud gaming latency in cloud gaming latency monitoring.
[0004] However, when cloud gaming runs on the server side, the server typically introduces some video processing steps such as local rendering, game screen video conversion, and video compression encoding. These steps also generate a certain amount of latency, affecting the user experience of cloud gaming. When existing technologies use RTT latency to describe cloud gaming latency, they only consider the network latency between the client and the server, without considering the latency introduced by the server-side video processing steps. This results in a significant difference between the obtained RTT latency metric and the cloud gaming latency perceived by the user. Summary of the Invention
[0005] The purpose of this invention is to provide a method, apparatus, computer-readable storage medium, cloud gaming server, and system for measuring latency in cloud gaming, which can simplify latency measurement schemes, improve latency measurement efficiency, and improve the accuracy of latency measurement results.
[0006] To achieve the above objectives, embodiments of the present invention provide a latency measurement method for cloud gaming, the method being executed by a cloud gaming server, the method comprising: During cloud gaming operation, when a latency measurement request is received from the cloud gaming client, the first frame identifier data of the latest game frame generated in the local video stream is obtained; wherein, each game frame in the local video stream is configured with corresponding frame identifier data; The system parses and obtains the RTT latency data within a preset time period maintained by the cloud gaming client and the second frame identifier data of the latest game frame in the current video stream of the cloud gaming client, which are carried in the latency measurement request. Based on the first frame identification data and the second frame identification data, obtain the frame difference data between the cloud gaming server and the cloud gaming client; The latency data of cloud gaming is obtained based on the RTT latency data, the frame difference data, and the FPS parameters of cloud gaming.
[0007] Furthermore, the frame identifier data is a numerical identifier, which monotonically increases sequentially with the game frame order in the local video stream, with an increment step of [value missing]. k , k >0; Therefore, obtaining the frame difference data between the cloud gaming server and the cloud gaming client based on the first frame identification data and the second frame identification data specifically includes: According to the formula Calculate the frame difference data Δ between the cloud gaming server and the cloud gaming client. F ;in, F sid This indicates the identification data of the first frame. F cid This indicates the identification data of the second frame.
[0008] Furthermore, obtaining the cloud gaming latency data based on the RTT latency data, the frame difference data, and the cloud gaming FPS parameters specifically includes: Based on the frame difference data and the FPS parameters of the cloud game, calculate the frame latency data between the cloud game server and the cloud game client; The latency data of cloud gaming is calculated based on the RTT latency data and the frame latency data.
[0009] Furthermore, the step of calculating the frame latency data between the cloud gaming server and the cloud gaming client based on the frame difference data and the FPS parameters of the cloud gaming specifically includes: According to the formula Calculate and obtain frame latency data between the cloud gaming server and the cloud gaming client. T f ; where Δ F This represents the frame difference data. N This indicates the FPS parameter. N >0.
[0010] Furthermore, the RTT latency data includes at least two sets of network latency data within the preset time period; Therefore, the step of calculating the latency data of cloud gaming based on the RTT latency data and the frame latency data specifically includes: The average RTT latency is calculated based on at least two sets of network latency data in the RTT latency data. According to the formula Calculate and obtain latency data for cloud gaming T cg ;in, This represents the average RTT delay.
[0011] Furthermore, the cloud gaming client periodically initiates RTT probe requests to the cloud gaming server. For each RTT probe request, based on the initiation time of the RTT probe request and the reception time of the RTT request response returned by the cloud gaming server, a set of network latency data corresponding to one RTT probe request is calculated. The client also maintains the RTT latency data within the preset time period based on the total number of RTT probe requests initiated within the preset time period. The RTT latency data includes at least two sets of network latency data.
[0012] To achieve the above objectives, embodiments of the present invention also provide a latency measurement device for cloud gaming. The device is installed on a cloud gaming server and is used to implement the latency measurement method for cloud gaming described in any of the above embodiments. The device includes: The local data acquisition module is used to acquire the first frame identifier data of the latest game frame generated in the local video stream when a latency measurement request is received from the cloud gaming client during cloud gaming operation; wherein, each game frame in the local video stream is configured with corresponding frame identifier data. The client data acquisition module is used to parse and acquire the RTT latency data within a preset time period maintained by the cloud gaming client and the second frame identifier data of the latest frame of the game screen in the current video stream of the cloud gaming client carried in the latency measurement request. The frame difference data acquisition module is used to acquire frame difference data between the cloud gaming server and the cloud gaming client based on the first frame identification data and the second frame identification data. The cloud gaming latency acquisition module is used to acquire cloud gaming latency data based on the RTT latency data, the frame difference data, and the cloud gaming FPS parameters.
[0013] This invention also provides a computer-readable storage medium, which includes a stored computer program; wherein, when the computer program is executed, it controls the device where the computer-readable storage medium is located to perform the latency measurement method for cloud gaming described above.
[0014] This invention also provides a cloud gaming server, including a processor, a memory, and a computer program stored in the memory and configured to be executed by the processor. When the processor executes the computer program, it implements the cloud gaming latency measurement method described in any of the preceding embodiments.
[0015] This invention also provides a latency measurement system for cloud gaming, the system comprising a cloud gaming client and a cloud gaming server; wherein, The cloud gaming client is used to initiate a latency measurement request to the cloud gaming server during the operation of the cloud game; The cloud gaming server is configured to, upon receiving the latency measurement request, implement the latency measurement method for cloud gaming described above according to the latency measurement request.
[0016] Compared with the prior art, the embodiments of the present invention provide a method, apparatus, computer-readable storage medium, cloud gaming server, and system for measuring latency in cloud gaming. During cloud gaming operation, when the cloud gaming server receives a latency measurement request from the cloud gaming client, it first obtains the first frame identifier data of the latest game frame generated in the local video stream. Each game frame in the local video stream is configured with corresponding frame identifier data. The server then parses and obtains the RTT latency data within a preset time period maintained by the cloud gaming client and the second frame identifier data of the latest game frame in the current video stream of the cloud gaming client, carried in the latency measurement request. Next, it obtains the frame difference data between the cloud gaming server and the cloud gaming client based on the first and second frame identifier data. Finally, it obtains the latency data of the cloud gaming based on the RTT latency data, the frame difference data, and the FPS parameters of the cloud gaming. This invention utilizes frame identification data to obtain frame difference data between the cloud gaming server and the cloud gaming client. Based on the cloud gaming RTT latency data, the cloud gaming latency data is measured using both RTT latency data and frame difference data. This simplifies the latency measurement scheme, improves latency measurement efficiency, and enhances the accuracy of latency measurement results. Attached Figure Description
[0017] Figure 1 This is a flowchart of a preferred embodiment of a cloud gaming latency measurement method provided by the present invention; Figure 2 This is a structural block diagram of a preferred embodiment of a cloud gaming latency measurement device provided by the present invention; Figure 3 This is a structural block diagram of a preferred embodiment of a cloud gaming server provided by the present invention. Detailed Implementation
[0018] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0019] This invention provides a method for measuring latency in cloud gaming, see [link to relevant documentation]. Figure 1 The diagram shown is a flowchart of a preferred embodiment of a cloud gaming latency measurement method provided by the present invention. The method is executed by a cloud gaming server and includes steps S11 to S14: Step S11: During the operation of cloud gaming, when a latency measurement request is received from the cloud gaming client, the first frame identifier data of the latest game frame generated in the local video stream is obtained; wherein, each game frame in the local video stream is configured with corresponding frame identifier data. Step S12: Parse and obtain the RTT latency data within the preset time period maintained by the cloud gaming client and the second frame identifier data of the latest frame of the game screen in the current video stream of the cloud gaming client carried in the latency measurement request; Step S13: Obtain frame difference data between the cloud gaming server and the cloud gaming client based on the first frame identification data and the second frame identification data; Step S14: Obtain the latency data of cloud gaming based on the RTT latency data, the frame difference data, and the FPS parameters of cloud gaming.
[0020] It should be noted that cloud gaming works by having the user perform game operations on the cloud gaming client. These operations are transmitted to the cloud gaming server via the network. The changes in the game screen caused by these operations are rendered on the cloud gaming server and converted into a video stream, which is then transmitted to the cloud gaming client via the network. In this embodiment of the invention, the cloud gaming server adds a unique frame identifier (e.g., a frame ID identifier bit) to each frame of the game screen in the output video stream and transmits the video stream with the frame identifier data to the cloud gaming client. Furthermore, a frame ID reporting mechanism is added to the cloud gaming client, enabling the cloud gaming server to obtain the corresponding frame identifier data for each game screen frame in the video stream from the cloud gaming client.
[0021] Specifically, during cloud gaming operation, the cloud gaming client periodically sends RTT (Real-Time Tolerance) probe requests to the cloud gaming server. It obtains and maintains RTT latency data for a preset time period based on the RTT request responses returned by the cloud gaming server. The cloud gaming client also periodically sends latency measurement requests to the cloud gaming server. Each time a latency measurement request is sent, the cloud gaming client obtains the second frame identifier data corresponding to the latest frame of the game in the current video stream, as well as the RTT latency data for the currently maintained preset time period. It then reports these two pieces of data to the cloud gaming server through the latency measurement request. Upon receiving the latency measurement request from the cloud gaming client, the cloud gaming server, on the one hand, obtains the latest frame of the game generated in the local video stream on the cloud gaming server. The first frame identifier data corresponds to the screen. Each frame of the game screen in the local video stream is configured with a unique frame identifier data. On the other hand, by parsing the latency measurement request sent by the cloud gaming client, the RTT latency data within the preset time period currently maintained by the cloud gaming client and the second frame identifier data corresponding to the latest frame of the game screen in the current video stream of the cloud gaming client are obtained. Then, the cloud gaming server can calculate the frame difference data between the game screen frames of the cloud gaming server and the game screen frames of the cloud gaming client according to the obtained first frame identifier data and second frame identifier data. Based on the obtained RTT latency data, frame difference data and FPS parameters of the cloud gaming, the cloud gaming latency data is calculated accordingly.
[0022] It should be noted that the RTT probe request is initiated periodically. The RTT probe request begins to be initiated periodically when the cloud game starts, and the latency measurement request for the cloud game is also initiated periodically, and occurs after the RTT probe request begins. Furthermore, in order to ensure the smooth implementation of the embodiments of the present invention, the initiation period corresponding to the RTT probe request is shorter than the initiation period corresponding to the latency measurement request. The shorter the initiation period corresponding to the RTT probe request, the higher the accuracy of the latency measurement result. However, in practical applications, the impact of frequent RTT probes on the performance overhead of the cloud game client and the cloud game server needs to be considered.
[0023] It should be noted that the FPS parameter in cloud gaming represents the number of game frames transmitted per second. The specific value of the FPS parameter can be set by the user when starting cloud gaming, or the default value can be used directly. The FPS parameter setting can also be adjusted during the operation of cloud gaming. In this embodiment of the invention, the user-set FPS parameter generally remains unchanged within the same latency measurement period. If a change in the FPS parameter is detected, the latency measurement of the current period is abandoned, and the FPS parameter is reacquired in the next latency measurement period. Furthermore, since the FPS parameter is set by the user and stored on the cloud gaming server, the cloud gaming client can periodically obtain the FPS parameter by periodically initiating RTT probe requests to the cloud gaming server and receiving the RTT request response from the cloud gaming server.
[0024] This invention provides a cloud gaming latency measurement method that uses frame identification data to obtain frame difference data between the cloud gaming server and the cloud gaming client. Based on the cloud gaming RTT latency data, it completes the measurement of cloud gaming latency data through RTT latency data and frame difference data. Compared with the existing technology, which requires high-precision time synchronization between the cloud gaming client and the cloud gaming server and requires screen capture to calculate cloud gaming latency, this invention does not rely on high-precision time synchronization and does not require game screen capture. It simplifies the latency measurement scheme, improves latency measurement efficiency, and can be used for routine cloud gaming latency monitoring. Compared with the existing technology, which does not consider the latency introduced by the video processing stage of the cloud gaming server, the cloud gaming latency measured by this invention takes into account the latency introduced by the video processing stage of the cloud gaming server, and can more accurately quantify the latency perceived by the user during cloud gaming, thus improving the accuracy of latency measurement results.
[0025] In another preferred embodiment, the frame identifier data is a numerical identifier, which monotonically increases sequentially with the game frame order in the local video stream, with an increment step of 1. k , k >0; Therefore, obtaining the frame difference data between the cloud gaming server and the cloud gaming client based on the first frame identification data and the second frame identification data specifically includes: According to the formula Calculate the frame difference data Δ between the cloud gaming server and the cloud gaming client. F ;in, F sid This indicates the identification data of the first frame. F cid This indicates the identification data of the second frame.
[0026] Specifically, in conjunction with the above embodiments, the frame identifier data added to each frame of the game screen in the local video stream by the cloud gaming server is a numerical identifier. The numerical identifier corresponding to each frame of the game screen increases monotonically with the order of the game screen frames in the local video stream, and the increment step is [missing information]. k , k >0; correspondingly, the cloud gaming server, based on the obtained first frame identifier data F sid Second frame identification data F cid Obtain frame difference data Δ F At that time, you can directly use the formula Calculate the frame difference data Δ between the game frames on the cloud gaming server and the game frames on the cloud gaming client. F .
[0027] For example, assume the frame identifier data is a positive integer, and k =1, if the first frame identifier data F sid =3, second frame identifier data F cid =1, then the frame difference data between the game frames on the cloud gaming server and the game frames on the cloud gaming client. This means that there are 2 frames of game footage between the cloud gaming server and the cloud gaming client.
[0028] In yet another preferred embodiment, obtaining the cloud gaming latency data based on the RTT latency data, the frame difference data, and the cloud gaming FPS parameters specifically includes: Based on the frame difference data and the FPS parameters of the cloud game, calculate the frame latency data between the cloud game server and the cloud game client; The latency data of cloud gaming is calculated based on the RTT latency data and the frame latency data.
[0029] Specifically, in conjunction with the above embodiments, when the cloud gaming server obtains the latency data of the cloud game based on the obtained RTT latency data, frame difference data, and the FPS parameters of the cloud game, it can first use the obtained frame difference data Δ between the game frame rate of the cloud gaming server and the game frame rate of the cloud gaming client. F Based on the FPS parameter of cloud gaming, the frame latency data between the game frames on the cloud gaming server and the game frames on the cloud gaming client is calculated accordingly; then, based on the obtained RTT latency data and frame latency data, the latency data of cloud gaming is calculated accordingly.
[0030] As one optional embodiment, the step of calculating the frame latency data between the cloud gaming server and the cloud gaming client based on the frame difference data and the FPS parameters of the cloud gaming specifically includes: According to the formula Calculate and obtain frame latency data between the cloud gaming server and the cloud gaming client. T f ; where Δ F This represents the frame difference data. N This indicates the FPS parameter. N >0.
[0031] Specifically, in conjunction with the above embodiments, the cloud gaming server, based on the obtained frame difference data Δ F The FPS parameter of cloud gaming (denoted as...) N , indicating transmissions per second N Each game frame N >0), calculate the frame latency data between the cloud gaming server and the cloud gaming client. T f At that time, you can directly use the formula Calculate the frame latency data between the game frames on the cloud gaming server and the game frames on the cloud gaming client. T f The unit is milliseconds.
[0032] As one optional embodiment, the RTT latency data includes at least two sets of network latency data within the preset time period; Therefore, the step of calculating the latency data of cloud gaming based on the RTT latency data and the frame latency data specifically includes: The average RTT latency is calculated based on at least two sets of network latency data in the RTT latency data. According to the formula Calculate the latency data for cloud gaming T cg ;in, This represents the average RTT delay.
[0033] Specifically, in conjunction with the above embodiments, the RTT latency data maintained by the cloud gaming client within a preset time period includes at least two sets of network latency data; correspondingly, the cloud gaming server, based on the obtained RTT latency data and frame latency data... T f Calculate and obtain latency data for cloud gaming T cg In this case, the average RTT latency can be calculated based on at least two sets of network latency data included in the obtained RTT latency data. Then according to the formula Calculate the latency data for cloud gaming T cg The unit is milliseconds.
[0034] It should be noted that the RTT latency data is denoted as T net The at least two sets of network latency data contained in the RTT latency data are denoted as T rtt1 , T rtt2 … T rttm Then the average RTT delay , where m represents the number of network latency data sets contained in the RTT latency data, m≥2.
[0035] It should be noted that, considering the network latency between the cloud gaming client and the cloud gaming server, when measuring the latency data of cloud gaming, the average RTT latency can be used as a reference. The frame latency data between the game frames on the cloud gaming server and the game frames on the cloud gaming client obtained in the above embodiments. T f The correction was made, and since RTT latency represents the round-trip network latency between the cloud gaming client and the cloud gaming server, the network time for a one-way cloud gaming latency measurement request to reach the cloud gaming server is... .
[0036] In another preferred embodiment, the cloud gaming client periodically initiates RTT probe requests to the cloud gaming server. For each RTT probe request, a set of network latency data corresponding to one RTT probe request is calculated based on the initiation time of the RTT probe request and the reception time of the RTT request response returned by the cloud gaming server in response to the RTT probe request. The RTT latency data within the preset time period is maintained based on the total number of RTT probe requests initiated within the preset time period. The RTT latency data includes at least two sets of network latency data.
[0037] Specifically, in conjunction with the above embodiments, during cloud gaming operation, the cloud gaming client periodically initiates RTT probe requests to the cloud gaming server. Upon receiving each RTT probe request from the cloud gaming client, the cloud gaming server provides a simple response and returns the corresponding RTT request response. Because the response logic is simple, the processing latency of the cloud gaming server is typically small (less than 1ms). Therefore, the response processing latency of the RTT probe request can be ignored; that is, in this embodiment of the invention, the response request processing latency is not considered. Furthermore, for each initiated RTT probe request, the cloud gaming client records the initiation time of the current RTT probe request locally. T req Upon receiving the RTT request response from the cloud gaming server in response to the currently initiated RTT probe request, the receiving time of the RTT request response is recorded. T res Correspondingly, the cloud gaming client uses the recorded RTT probe request initiation time as a reference. T req and the reception time of RTT request and response T res It can calculate and obtain a set of network latency data corresponding to the currently initiated RTT probe request. T rtt = T res - T req , T rtt It can be used to display the real-time network quality of cloud gaming clients; further, in this embodiment of the invention, the cloud gaming client can maintain RTT latency data within a preset time period based on the total number of RTT probe requests initiated within the preset time period, and the RTT latency data within the preset time period includes at least two sets of network latency data. It can be understood that the number of sets of network latency data included in the RTT latency data within the preset time period is the same as the total number of RTT probe requests initiated within the preset time period.
[0038] For example, assuming the cloud gaming client initiates an RTT probe request every 10 seconds, with a preset time period of the most recent 1 minute, then within 1 minute, a total of six RTT probe requests are initiated, corresponding to six sets of network latency data. Accordingly, the cloud gaming client can maintain these six sets of network latency data from the most recent 1 minute, that is, the RTT latency data from the most recent 1 minute. T net Includes six sets of network latency data, namely T rtt1 , T rtt2 …T rtt6 .
[0039] For example, suppose a user sets up a cloud gaming client to experience cloud gaming at 30 FPS, and performs an RTT probe every 10 seconds. The RTT latency data for the most recent minute are: 18ms, 20ms, 24ms, 20ms, 22ms, and 22ms. When initiating a cloud gaming latency measurement request, the cloud gaming client reports the frame ID of the latest game frame as 100. When the cloud gaming server receives the latency measurement request, it obtains the frame ID of the latest game frame from the cloud gaming server as 102. k =1, then the latency of cloud gaming obtained in this measurement is: .
[0040] This invention also provides a latency measurement device for cloud gaming. The device is installed on the cloud gaming server and is used to implement the latency measurement method for cloud gaming described in any of the above embodiments. See [link to relevant documentation]. Figure 2 The diagram shown is a structural block diagram of a preferred embodiment of a cloud gaming latency measurement device provided by the present invention. The device includes: The local data acquisition module 11 is used to acquire the first frame identifier data of the latest game frame generated in the local video stream when a latency measurement request is received from the cloud gaming client during the operation of cloud gaming; wherein, each frame of the game frame in the local video stream is configured with corresponding frame identifier data. The client data acquisition module 12 is used to parse and acquire the RTT latency data within a preset time period maintained by the cloud gaming client and the second frame identifier data of the latest frame of the game screen in the current video stream of the cloud gaming client carried in the latency measurement request. The frame difference data acquisition module 13 is used to acquire frame difference data between the cloud gaming server and the cloud gaming client based on the first frame identification data and the second frame identification data. The cloud gaming latency acquisition module 14 is used to acquire cloud gaming latency data based on the RTT latency data, the frame difference data, and the cloud gaming FPS parameters.
[0041] Preferably, the frame identifier data is a numerical identifier, which monotonically increases with the sequence of game frame in the local video stream, and the increment step is [value missing]. k , k >0; Therefore, the frame difference data acquisition module 13 is specifically used for: According to the formula Calculate the frame difference data Δ between the cloud gaming server and the cloud gaming client.F ;in, F sid This indicates the identification data of the first frame. F cid This indicates the identification data of the second frame.
[0042] Preferably, the cloud gaming latency acquisition module 14 specifically includes: The frame latency data calculation unit is used to calculate the frame latency data between the cloud game server and the cloud game client based on the frame difference data and the FPS parameters of the cloud game. The cloud gaming latency calculation unit is used to calculate the latency data of cloud gaming based on the RTT latency data and the frame latency data.
[0043] Preferably, the frame delay data calculation unit is specifically used for: According to the formula Calculate and obtain frame latency data between the cloud gaming server and the cloud gaming client. T f ; where Δ F This represents the frame difference data. N This indicates the FPS parameter. N >0.
[0044] Preferably, the RTT latency data includes at least two sets of network latency data within the preset time period; Therefore, the cloud gaming latency calculation unit is specifically used for: The average RTT latency is calculated based on at least two sets of network latency data in the RTT latency data. According to the formula Calculate the latency data for cloud gaming T cg ;in, This represents the average RTT delay.
[0045] Preferably, the cloud gaming client periodically initiates RTT probe requests to the cloud gaming server. For each RTT probe request, based on the initiation time of the RTT probe request and the reception time of the RTT request response returned by the cloud gaming server, a set of network latency data corresponding to one RTT probe request is calculated. The client maintains the RTT latency data within the preset time period based on the total number of RTT probe requests initiated within the preset time period. The RTT latency data includes at least two sets of network latency data.
[0046] It should be noted that the cloud gaming latency measurement device provided in this embodiment of the invention can realize all the processes of the cloud gaming latency measurement method described in any of the above embodiments. The functions and technical effects of each module and unit in the device are the same as the functions and technical effects of the cloud gaming latency measurement method described in the above embodiments, and will not be repeated here.
[0047] This invention also provides a computer-readable storage medium, which includes a stored computer program; wherein, when the computer program is executed, it controls the device where the computer-readable storage medium is located to perform the cloud gaming latency measurement method described in any of the above embodiments.
[0048] This invention also provides a cloud gaming server, see [link to relevant documentation]. Figure 3 The diagram shown is a structural block diagram of a preferred embodiment of a cloud gaming server provided by the present invention. The cloud gaming server includes a processor 10, a memory 20, and a computer program stored in the memory 20 and configured to be executed by the processor 10. When the processor 10 executes the computer program, it implements the cloud gaming latency measurement method described in any of the above embodiments.
[0049] Preferably, the computer program can be divided into one or more modules / units (such as computer program 1, computer program 2, ...), and the one or more modules / units are stored in the memory 20 and executed by the processor 10 to complete the present invention. The one or more modules / units can be a series of computer program instruction segments capable of performing specific functions, and the instruction segments are used to describe the execution process of the computer program in the cloud gaming server.
[0050] The processor 10 can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor, or the processor 10 can be any conventional processor. The processor 10 is the control center of the cloud gaming server, connecting various parts of the cloud gaming server through various interfaces and lines.
[0051] The memory 20 mainly includes a program storage area and a data storage area. The program storage area can store the operating system, applications required for at least one function, etc., while the data storage area can store related data, etc. Furthermore, the memory 20 can be a high-speed random access memory, or a non-volatile memory, such as a plug-in hard drive, a smart media card (SMC), a secure digital card (SD), and a flash card, or other volatile solid-state storage devices.
[0052] It should be noted that the aforementioned cloud gaming server may include, but is not limited to, processors and memory, as will be understood by those skilled in the art. Figure 3 The structural diagram is merely an example of the cloud gaming server described above and does not constitute a limitation on the cloud gaming server. It may include more or fewer components than shown in the diagram, or combine certain components, or use different components.
[0053] This invention also provides a latency measurement system for cloud gaming, the system comprising a cloud gaming client and a cloud gaming server; wherein, The cloud gaming client is used to initiate a latency measurement request to the cloud gaming server during the operation of the cloud game; The cloud gaming server is configured to, upon receiving the latency measurement request, implement the latency measurement method for cloud gaming as described in any of the above embodiments.
[0054] It should be noted that the cloud gaming latency measurement system provided in this embodiment of the invention can realize all the processes of the cloud gaming latency measurement method described in any of the above embodiments. The functions and workflows of the cloud gaming client and cloud gaming server in the system are the same as those of the cloud gaming client and cloud gaming server involved in the cloud gaming latency measurement method described in the above embodiments, and will not be repeated here.
[0055] In summary, the cloud gaming latency measurement method, apparatus, computer-readable storage medium, cloud gaming server, and system provided by this invention utilize frame identification data to obtain frame difference data between the cloud gaming server and the cloud gaming client. Based on the cloud gaming RTT latency data, the cloud gaming latency data is measured using both RTT latency data and frame difference data. Compared to existing technologies that require high-precision time synchronization between the cloud gaming client and the cloud gaming server and require screen capture to calculate cloud gaming latency, this invention does not rely on high-precision time synchronization or require game screen capture, simplifying the latency measurement scheme and improving latency measurement efficiency. It can be used for routine cloud gaming latency monitoring. Compared to existing technologies that do not consider the latency introduced by the video processing stage on the cloud gaming server, the cloud gaming latency measured by this invention takes into account the latency introduced by the video processing stage on the cloud gaming server, enabling more accurate quantification of the latency perceived by the user during cloud gaming and improving the accuracy of latency measurement results.
[0056] The above description is only a preferred embodiment of the present invention. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the technical principles of the present invention, and these improvements and modifications should also be considered within the scope of protection of the present invention.
Claims
1. A method for measuring latency in cloud gaming, characterized in that, The method is executed by the cloud gaming server and includes: During cloud gaming operation, upon receiving a latency measurement request from the cloud gaming client, the system acquires the first frame identifier data of the latest game frame generated in the local video stream. Each game frame in the local video stream is configured with corresponding frame identifier data, which is a numerical identifier. This numerical identifier monotonically increases with the sequence of game frames in the local video stream, with an increment step of [value missing]. k , k >0; The system parses and obtains the RTT latency data within a preset time period maintained by the cloud gaming client and the second frame identifier data of the latest game frame in the current video stream of the cloud gaming client, which are carried in the latency measurement request. Based on the first frame identification data and the second frame identification data, obtain the frame difference data between the cloud gaming server and the cloud gaming client; Based on the RTT latency data, the frame difference data, and the FPS parameters of the cloud game, obtain the latency data of the cloud game; The step of obtaining cloud gaming latency data based on the RTT latency data, the frame difference data, and the cloud gaming FPS parameters specifically includes: Based on the frame difference data and the FPS parameters of the cloud game, calculate the frame latency data between the cloud game server and the cloud game client; Based on the RTT latency data and the frame latency data, the latency data of cloud gaming is calculated. The RTT latency data includes at least two sets of network latency data within the preset time period; Therefore, the step of calculating the latency data of cloud gaming based on the RTT latency data and the frame latency data specifically includes: The average RTT latency is calculated based on at least two sets of network latency data in the RTT latency data. According to the formula Calculate and obtain latency data for cloud gaming T cg ;in, T f This represents the frame delay data. This represents the average RTT delay.
2. The latency measurement method for cloud gaming as described in claim 1, characterized in that, The step of obtaining frame difference data between the cloud gaming server and the cloud gaming client based on the first frame identifier data and the second frame identifier data specifically includes: According to the formula Calculate the frame difference data Δ between the cloud gaming server and the cloud gaming client. F ;in, F sid This indicates the identification data of the first frame. F cid This indicates the identification data of the second frame.
3. The latency measurement method for cloud gaming as described in claim 1, characterized in that, The step of calculating the frame latency data between the cloud gaming server and the cloud gaming client based on the frame difference data and the FPS parameters of the cloud gaming specifically includes: According to the formula Calculate and obtain frame latency data between the cloud gaming server and the cloud gaming client. T f ; where Δ F This represents the frame difference data. N This indicates the FPS parameter. N >0.
4. The latency measurement method for cloud gaming as described in any one of claims 1 to 3, characterized in that, The cloud gaming client periodically initiates RTT probe requests to the cloud gaming server. For each RTT probe request, it calculates a set of network latency data corresponding to each RTT probe request based on the initiation time of the RTT probe request and the reception time of the RTT request response returned by the cloud gaming server. It also maintains the RTT latency data within the preset time period based on the total number of RTT probe requests initiated within the preset time period. The RTT latency data includes at least two sets of network latency data.
5. A latency measurement device for cloud gaming, characterized in that, The device is installed on the cloud gaming server side and is used to implement the latency measurement method for cloud gaming as described in any one of claims 1 to 4. The device includes: The local data acquisition module is used to acquire the first frame identifier data of the latest game frame generated in the local video stream when a latency measurement request is received from the cloud gaming client during cloud gaming operation; wherein, each game frame in the local video stream is configured with corresponding frame identifier data. The client data acquisition module is used to parse and acquire the RTT latency data within a preset time period maintained by the cloud gaming client and the second frame identifier data of the latest frame of the game screen in the current video stream of the cloud gaming client carried in the latency measurement request. The frame difference data acquisition module is used to acquire frame difference data between the cloud gaming server and the cloud gaming client based on the first frame identification data and the second frame identification data. The cloud gaming latency acquisition module is used to acquire cloud gaming latency data based on the RTT latency data, the frame difference data, and the cloud gaming FPS parameters.
6. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored computer program; wherein, when the computer program is executed, it controls the device on which the computer-readable storage medium is located to perform the latency measurement method for cloud gaming as described in any one of claims 1 to 4.
7. A cloud gaming server, characterized in that, The system includes a processor, a memory, and a computer program stored in the memory and configured to be executed by the processor, wherein the processor, when executing the computer program, implements the latency measurement method for cloud gaming as described in any one of claims 1 to 4.
8. A latency measurement system for cloud gaming, characterized in that, The system includes a cloud gaming client and a cloud gaming server; wherein... The cloud gaming client is used to initiate a latency measurement request to the cloud gaming server during the operation of the cloud game; The cloud gaming server is configured to, upon receiving the latency measurement request, implement the latency measurement method for cloud gaming as described in any one of claims 1 to 4.
Citation Information
Patent Citations
Method, device and system for detecting response delay of cloud game, terminal and server
CN111245680A
Method and system for determining cloud game video transmission time delay and electronic equipment
CN115297364A
