RU2758985C1 - Video stream matching algorithm for the cloud gaming platform loudplay - Google Patents
Video stream matching algorithm for the cloud gaming platform loudplay Download PDFInfo
- Publication number
- RU2758985C1 RU2758985C1 RU2020120491A RU2020120491A RU2758985C1 RU 2758985 C1 RU2758985 C1 RU 2758985C1 RU 2020120491 A RU2020120491 A RU 2020120491A RU 2020120491 A RU2020120491 A RU 2020120491A RU 2758985 C1 RU2758985 C1 RU 2758985C1
- Authority
- RU
- Russia
- Prior art keywords
- server
- video stream
- client
- user
- game
- Prior art date
Links
- 238000005516 engineering process Methods 0.000 claims abstract description 10
- 230000004044 response Effects 0.000 claims abstract description 9
- 238000012544 monitoring process Methods 0.000 claims abstract description 5
- 230000005540 biological transmission Effects 0.000 claims description 64
- 238000000034 method Methods 0.000 claims description 28
- 230000008569 process Effects 0.000 claims description 18
- 238000005259 measurement Methods 0.000 claims description 11
- 238000004458 analytical method Methods 0.000 claims description 10
- 230000006399 behavior Effects 0.000 claims description 10
- 238000013528 artificial neural network Methods 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 5
- 238000009877 rendering Methods 0.000 claims description 5
- 230000006870 function Effects 0.000 claims description 4
- 238000011835 investigation Methods 0.000 claims description 4
- 230000035945 sensitivity Effects 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 7
- 230000009467 reduction Effects 0.000 abstract description 2
- 230000010354 integration Effects 0.000 abstract 1
- 239000000126 substance Substances 0.000 abstract 1
- 230000001934 delay Effects 0.000 description 5
- 238000011161 development Methods 0.000 description 5
- 230000018109 developmental process Effects 0.000 description 5
- 238000013475 authorization Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000003698 anagen phase Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000012010 growth Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
- A63F13/355—Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/27—Server based end-user applications
- H04N21/274—Storing end-user multimedia data in response to end-user request, e.g. network recorder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/462—Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/65—Transmission of management data between client and server
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
Группа изобретений относится к области компьютерной техники и сетевых технологий, в частности к обработке задач в облачном сервисе.The group of inventions relates to the field of computer technology and network technologies, in particular to processing tasks in a cloud service.
В настоящее время большое количество людей сталкиваются с проблемой низкой производительности персонального компьютера при запуске новых компьютерных игр или ресурсоемких графических приложений, например для дизайна/СAD систем. Стоимость современного мощного компьютера составляет около 1000-1500$, и на многих развивающихся рынках является предметом роскоши. Апгрейд компьютера технически не всегда возможен и требует специальных знаний и наличия свободного времени.Currently, a large number of people are faced with the problem of low performance of a personal computer when launching new computer games or resource-intensive graphics applications, for example, for design / CAD systems. The cost of a modern powerful computer is around $ 1000-1500 and is a luxury item in many emerging markets. Computer upgrade is technically not always possible and requires special knowledge and free time.
Практически во всех сферах потребительской электроники борьба за производительность аппаратного обеспечения заканчивается. Это уже случилось в игровых приставках, происходит в смартфонах и в домашних компьютерах. Развитие сетей передачи данных ведет к смене модели потребления (от покупки локальной мощности на подписку на облачные ресурсы). Например, доступность передачи данных привела к активному развитию и удешевлению сервисов облачного хранения данных. Уже сейчас для потребителей не так важен большой внутренний объем памяти смартфона, так как есть облачные хранилища, куда можно загрузить свои видеозаписи и фотографии.In virtually all areas of consumer electronics, the competition for hardware performance is ending. This has already happened in game consoles, in smartphones and in home computers. The development of data transmission networks leads to a change in the consumption model (from buying local capacity to subscribing to cloud resources). For example, the availability of data transmission has led to the active development and reduction in the cost of cloud storage services. Even now, consumers do not care about the large internal memory of a smartphone, since there are cloud storage where you can upload your videos and photos.
Главная аппаратная проблема пользовательских устройств на сегодняшний день - это работа с графическими вычислениями. Раньше переносу этого процесса в облако мешали ограничения в сети передачи данных. Сегодня эти проблемы решены в фиксированных широкополосных сетях передачи данных и мобильных сетях 5G.The main hardware problem in consumer devices today is graphics computing. In the past, the transfer of this process to the cloud was hampered by restrictions in the data network. Today, these problems are solved in fixed broadband data networks and 5G mobile networks.
Также происходит регулярная модернизация серверных графических карт, происходит активное развитие технологий виртуализации графических процессоров, разработка и внедрение новых алгоритмов согласования параметров видеопотока, основанных на измерении задержек при прохождении пакетов по сети передачи данных. В сравнении со стандартными протоколами, фиксирующими потери пакетов на сети, существенно повышают качество и стабильность соединения.Also, there is a regular modernization of server graphics cards, there is an active development of technologies for virtualization of graphics processors, the development and implementation of new algorithms for coordinating the parameters of the video stream, based on measuring the delays when the packets pass through the data network. Compared to standard protocols that capture packet loss on the network, they significantly improve the quality and stability of the connection.
В настоящее время известны различные способы и системы для реализации компьютерных игр для компьютеров различной мощности. Наиболее близкими аналогами являются сервисы Playgiga (см. https://www.playgiga.com/), GeForce Now (см. https://gfn.ru/). Недостатками которых являются ограничения по количеству поддерживаемых игр и приложений.At present, various methods and systems are known for implementing computer games for computers of various capacities. The closest analogues are Playgiga services (see https://www.playgiga.com/), GeForce Now (see https://gfn.ru/). The disadvantages of which are the limitations on the number of games and applications supported.
Задачей представленной группы изобретений является устранение по меньшей мере некоторых недостатков, присущих известному уровню техники с достижением технического результата в виде обеспечения возможности одновременного уменьшения времени задержки обработки графического изображения и увеличения производительности системы, то есть осуществление удаленной обработки и визуализации изображения с низкой задержкой, в повышении эффективности распределения задач между серверами центров обработки данных, в обеспечении снижения вероятности потери пакетов на сети до 30% и увеличения битрейта (bitrate) видеопотока на 13-15%, в снижении внутренних задержек платформы и повышении качества картинки, разрешения (вплоть до 4К) и увеличении частоты кадров (FPS) до 120, в обеспечении исключения взаимовлияния клиентских сессий, что позволяет существенно увеличить количество одновременных пользователей, использующих один сервер, и позволяет гибко настраивать конфигурацию виртуального ПК для каждого пользователя, в обеспечении возможности пользователей, подключенным к сети интернет запускать любые ресурсоемкие игры или приложения на слабых персональных компьютерах, смартфонах и планшетах или других устройствах и таким образом не покупать новый или не усовершенствовать устаревший компьютер, а также в сокращении энергопотребления батареи смартфона до 30-40% по сравнению с энергопотреблением при использовании нативных приложений Андроид-смартфона.The objective of the presented group of inventions is to eliminate at least some of the disadvantages inherent in the prior art with the achievement of the technical result in the form of providing the possibility of simultaneously reducing the delay time of graphic image processing and increasing system performance, that is, the implementation of remote processing and rendering of images with low latency, in increasing efficiency of distribution of tasks between servers of data centers, in ensuring a decrease in the probability of packet loss on the network by up to 30% and an increase in the bitrate (bitrate) of a video stream by 13-15%, in reducing internal platform delays and improving picture quality, resolution (up to 4K) and increasing the frame rate (FPS) up to 120, ensuring the elimination of mutual influence of client sessions, which allows you to significantly increase the number of simultaneous users using one server, and allows you to flexibly configure the virtual PC configuration for each user tel, in ensuring the ability of users connected to the Internet to run any resource-intensive games or applications on weak personal computers, smartphones and tablets or other devices and thus not buy a new or upgrade an outdated computer, as well as reduce the power consumption of a smartphone battery to 30 40% compared to power consumption when using native Android smartphone apps.
Для достижения вышеуказанного технического результата заявлена группа изобретений, включающая:To achieve the above technical result, a group of inventions is claimed, including:
платформу виртуализации и стриминга приложений и компьютерных игр, включающую:a platform for virtualization and streaming of applications and computer games, including:
- по меньшей мере один сервер, на котором запускается компьютерная игра или приложение, принимающий управляющие команды, относящиеся к игре или приложению, передаваемые от клиента, управляемого пользователем, и в ответ выполняющий программный код игры для визуализации последовательности видеоизображений в результате выполнения игры или приложения,- at least one server running a computer game or application, receiving control commands related to a game or an application transmitted from a client controlled by a user, and in response executing the game program code to render a sequence of video images as a result of the execution of the game or application,
при этом происходит непрерывная передача видеопотока в режиме реального времени в клиентское устройство,at the same time, there is a continuous transmission of the video stream in real time to the client device,
при этом приложение или игра запускаются на сервере в среде виртуализации, которая позволяет разделить друг от друга пользовательские приложения и игры, исключив их взаимовлияние, кроме того, каждому пользователю среда виртуализации выделяет отдельный виртуальный компьютер, на котором пользователь работает с приложением или играет в игру, аналогично тому, если игра или приложение запускались бы на высокомощном персональном компьютере,at the same time, an application or a game is launched on a server in a virtualization environment, which allows user applications and games to be separated from each other, eliminating their mutual influence; in addition, the virtualization environment allocates a separate virtual computer for each user, on which the user works with the application or plays a game, the same as if a game or application would be launched on a high-performance personal computer,
- по меньшей мере один клиент, выполненный для по меньшей мере одного пользовательского устройства, представляющий собой приложение, которое принимает видеопоток, передающийся от сервера в режиме реального времени, декодирует его и отображает пользователю,- at least one client executed for at least one user device, which is an application that receives a video stream transmitted from a server in real time, decodes it and displays it to the user,
при этом клиент принимает управляющие команды от устройства ввода и передает их на сервер,in this case, the client receives control commands from the input device and transmits them to the server,
при этом клиент выполняет функции предварительного анализа состояния канала передачи данных от клиента до сервера и предварительного анализа мощности пользовательского компьютера для выдачи рекомендаций пользователю или автоматической настройки параметров видеопотока и параметров пользовательского устройства,at the same time, the client performs the functions of preliminary analysis of the state of the data transmission channel from the client to the server and preliminary analysis of the power of the user computer to issue recommendations to the user or automatically configure the video stream parameters and parameters of the user device,
при этом после проведения анализа мощности пользовательского устройства и состояния канала передачи данных от клиента до сервера, генерируется оповещение пользователя о соответствии или предупреждение о несоответствии мощности пользовательского устройства или состояния канала передачи данных от клиента до сервера минимальным требованиям по качеству,at the same time, after analyzing the power of the user device and the state of the data transmission channel from the client to the server, a user notification is generated about the compliance or the warning about the discrepancy between the power of the user device or the state of the data transmission channel from the client to the server with the minimum quality requirements,
обеспечивающему игровой процесс или процесс работы с приложением, аналогично тому, если игра или приложение запускались бы на высокомощном персональном компьютере и выводятся рекомендации по настройке пользовательского видеопотока, пользовательского устройства для повышения качества игрового процесса или работы с приложением или производится автоматическая настройка параметров видеопотока и параметров пользовательского устройства для достижения лучшего качества игрового процесса или работы с приложением,providing the gameplay or the process of working with the application, in the same way as if the game or application would be launched on a high-power personal computer and recommendations are displayed for setting up a user video stream, a user device to improve the quality of a game process or work with an application, or the video stream parameters and user settings are automatically configured. devices to achieve the best quality of the gameplay or work with the application,
при этом при автоматической настройке параметров видеопотока и параметров пользовательского устройства, изменение битрейта (bitrate) или частоты кадров видеопотока (FPS) происходит на серверной стороне без прерывания видеопотока, причем при определенном нижнем пороге битрейта (bitrate) и частоты кадров видеопотока (FPS), происходит автоматическое изменение разрешения изображения на сервере, что соответственно изменяет масштаб изображения на клиенте,at the same time, when automatically adjusting the parameters of the video stream and the parameters of the user device, the bitrate or frame rate of the video stream (FPS) is changed on the server side without interrupting the video stream, and at a certain lower threshold of the bitrate (bitrate) and frame rate of the video stream (FPS), automatic change of the image resolution on the server, which accordingly changes the image scale on the client,
при этом автоматическая настройка параметров видеопотока и параметров пользовательского устройства включает алгоритм согласования видеопотока, основывающийся на расчете кругового времени передачи видеокадра (RTTV) и замеров битрейта видеопотока передаваемого сервером (L) и получаемого клиентом (М).At the same time, automatic adjustment of the video stream parameters and the parameters of the user device includes a video stream matching algorithm based on the calculation of the circular time of transmission of the video frame (RTTV) and measurements of the bitrate of the video stream transmitted by the server (L) and received by the client (M).
Для минимизации вклада задержки видеопотока при его трансляции от сервера до клиента определяется понятие кругового времени передачи видеофрейма (RTTV), причем отсчет кругового времени передачи видеокадра (RTTV) отсчитывается с момента передачи видеокадра в энкодер на серверной стороне до момента отрисовки видеокадра на клиентской стороне и включает в себя все процессы связанные с энкодированием видеокадра, передачей видеокадра через сеть передачи данных, декодированием видеокадра на клиентской стороне и его отрисовкой,To minimize the contribution of video stream latency during its broadcast from the server to the client, the concept of the circular time of video frame transmission (RTTV) is defined, and the circular time of transmission of the video frame (RTTV) is counted from the moment the video frame is transmitted to the encoder on the server side until the moment the video frame is drawn on the client side and includes all processes associated with encoding a video frame, transmitting a video frame through a data transmission network, decoding a video frame on the client side and rendering it,
при этом на основании измерения RTTV производится адаптация параметров энкодера (bitrate, FPS) и разрешения картинки видеопотока, позволяющая на ранних стадиях выявлять перегруженность канала передачи данных или клиентского устройства и не допускать увеличения значений RTTV во время игровой сессии, при снижении или увеличении пропускной способности канала передачи данных или изменениях в производительности клиентского устройства алгоритм позволяет быстро найти значение битрейта видеопотока, которое будет равно или немного ниже значения оптимального значения пропускной способности канала передачи данных в текущих условиях. Это обеспечивает максимально возможное качество картинки при низких задержках отклика. Оптимальное значение пропускной способности канала передачи данных (OOP) обеспечивается тогда, когда значение битрейта видеопотока, транслируемого сервером является максимально возможным в текущих условиях и равно значению битрейта видеопотока, принимаемого клиентом. Причем замеры значений битрейта видопотока, передаваемого сервером и принимаемого клиентом должны производиться в один интервал времени (Схема роста значений видеопотока и 3 фазы роста).at the same time, based on the RTTV measurement, the encoder parameters (bitrate, FPS) and the resolution of the video stream image are adapted, which allows early detection of the congestion of the data transmission channel or the client device and does not allow an increase in RTTV values during a game session, with a decrease or increase in the channel bandwidth data transfer or changes in the performance of the client device, the algorithm allows you to quickly find the value of the bitrate of the video stream, which will be equal to or slightly lower than the value of the optimal value of the data transmission channel bandwidth in the current conditions. This ensures the highest possible picture quality with low response delays. The optimal value of the throughput of the data transmission channel (OOP) is provided when the value of the bitrate of the video stream broadcast by the server is the maximum possible under the current conditions and is equal to the value of the bitrate of the video stream received by the client. Moreover, the measurements of the bitrate values of the video stream transmitted by the server and received by the client should be made in one time interval (Scheme of growth of video stream values and 3 growth phases).
При этом в случае возникновения перегрузки на сети передачи данных, когда значение параметра битрейта видеопотока (L), передаваемого сервером выше, чем значение битрейта видеопотока (М), получаемого клиентом, производится расчет разницы значений видеопотоков (S),In this case, in the event of an overload on the data transmission network, when the value of the bitrate parameter of the video stream (L) transmitted by the server is higher than the value of the bitrate of the video stream (M) received by the client, the difference in the values of the video streams (S) is calculated,
алгоритм согласования видеопотока переходит в режим перегрузки при выполнении одновременно двух условий:the video stream matching algorithm goes into overload mode when two conditions are met simultaneously:
1) S>0;1) S> 0;
2) Значение RTTV за последний измеренный интервал времени больше предыдущего рассчитанного значения RTTV,2) The RTTV value for the last measured time interval is greater than the previous calculated RTTV value,
в режиме перегрузки значение битрейта, передаваемого с сервера на клиент начинает снижаться, причем во-избежание излишней чувствительности алгоритма при принятии решения о снижении значения битрейта видеопотока, передаваемого сервером, принимается во внимание история поведения видеопотока за предыдущие интервалы измерений,in overload mode, the value of the bitrate transmitted from the server to the client begins to decrease, and in order to avoid excessive sensitivity of the algorithm, when deciding to reduce the value of the bitrate of the video stream transmitted by the server, the history of the behavior of the video stream for the previous measurement intervals is taken into account,
алгоритм согласования видеопотока переходит в режим проактивного исследования и нахождения более высоких значений битрейта передаваемого с сервера видеопотока в случае стабильного состояния канала передачи данных и стабильной производительности клиентского устройства, то есть выполнения следующих условий:the video stream matching algorithm switches to the proactive investigation mode and finds higher bitrate values of the video stream transmitted from the server in the case of a stable state of the data transmission channel and stable performance of the client device, that is, the following conditions are met:
1) S=01) S = 0
2) Значение RTTV за последний измеренный интервал времени меньше или равно значению произведенного замера RTTV за предыдущий интервал времени.2) The RTTV value for the last measured time interval is less than or equal to the value of the RTTV measured for the previous time interval.
В течение нескольких интервалов времени происходит плавное повышение битрейта видеопотока, транслируемого сервером вплоть до достижения (OOP), при достижении значения OOP принимается во внимание история поведения канала передачи данных за прошедшее время, что позволяет ускорить процесс достижения OOP,Over several time intervals, the bitrate of the video stream broadcast by the server gradually increases until the OOP is reached, when the OOP value is reached, the history of the data transmission channel behavior over the past time is taken into account, which makes it possible to speed up the process of reaching OOP,
гдеwhere
OOP - Optimal Operating Point;OOP - Optimal Operating Point;
OOP = inflight = L*RTTV;OOP = inflight = L * RTTV;
Inflight - нативный параметр стека протоколов tcp/ip, показывающий количество отправленных в сеть неподтвержденных клиентом пакетов данных;Inflight - a native parameter of the tcp / ip protocol stack, showing the number of unacknowledged data packets sent to the network;
причем декодирование изображения на клиенте производится с использованием центрального процесса или с использованием графической карты или аппаратного декодера устройства пользователя,wherein the decoding of the image on the client is done using a central process or using a graphics card or hardware decoder of the user's device,
- географически распределенную систему управления серверами, модулем хранения и управления пользовательских данных, мониторингом серверов и пользовательских клиентов, статистическими данными, оплатой, администрированием, модулем интеграции с внешними партнерами, при этом географически распределенная система управления реализована посредством зарезервированной микросервисной архитектуры.- a geographically distributed server management system, a module for storing and managing user data, monitoring servers and user clients, statistical data, payment, administration, a module for integrating with external partners, while a geographically distributed management system is implemented through a reserved microservice architecture.
при этом для минимизации вклада задержки видеопотока при его трансляции от сервера до клиента определяется понятие кругового времени передачи видеофрейма (RTTV);at the same time, in order to minimize the contribution of the video stream delay during its broadcast from the server to the client, the concept of the circular time of video frame transmission (RTTV) is defined;
машинореализуемый способ виртуализации и стриминга (ресурсоемких) приложений и компьютерных игр посредством платформы виртуализации и стриминга приложений и компьютерных игр, содержащий этапы:a machine-implemented method of virtualization and streaming of (resource-intensive) applications and computer games through a platform for virtualization and streaming of applications and computer games, containing the stages:
- по меньшей мере один пользователь запускает на своем пользовательском устройстве клиентское приложение, клиентское приложение формирует изображение, которое производится на сервере виртуализации,- at least one user launches a client application on his user device, the client application generates an image that is produced on the virtualization server,
клиентское приложение проводит предварительный анализ состояния канала передачи данных от клиента до сервера, анализа мощности пользовательского компьютера для выдачи рекомендаций пользователю или автоматической настройки параметров видеопотока и параметров пользовательского устройства, при проведении анализа мощности пользовательского устройства и состояния канала передача данных от клиента до сервера,the client application conducts a preliminary analysis of the state of the data transmission channel from the client to the server, analysis of the power of the user computer to issue recommendations to the user or automatically configure the video stream parameters and parameters of the user device, when analyzing the power of the user device and the state of the channel data transfer from the client to the server,
генерируется оповещение пользователя о соответствии или предупреждение о несоответствии мощности пользовательского устройства или состояния канала передачи данных от клиента до сервера минимальным требованиям по качеству, обеспечивающему игровой процесс или процесс работы с приложением, аналогично тому, если игра или приложение запускались бы на высокомощном персональном компьютере и выводятся рекомендации по настройке видеопотока, пользовательского устройства для повышения качества игрового процесса или работы с приложением или производится автоматическая настройка параметров видеопотока и параметров пользовательского устройства для достижения лучшего качества игрового процесса или работы с приложением,a user notification is generated about compliance or a warning about a discrepancy between the power of the user device or the state of the data transmission channel from the client to the server with the minimum quality requirements that ensure the gameplay or the process of working with the application, similar to if a game or application would be launched on a high-power personal computer and displayed recommendations for setting up a video stream, a user device to improve the quality of the gameplay or work with the application, or the automatic settings of the video stream parameters and the settings of the user device are performed to achieve the best quality of the gameplay or work with the application,
далее пользователь посредством ввода управляющих команд осуществляет управление компьютерной игрой или приложением, при этом команды от клиентского приложения до сервера передаются через канал передачи данных,then the user, by entering control commands, controls the computer game or application, while the commands from the client application to the server are transmitted through the data transmission channel,
- по меньшей мере один сервер, на котором запускается компьютерная игра или приложение, принимает управляющие команды, относящиеся к игре или приложению, передаваемые от клиента, управляемого пользователем, и в ответ выполняет программный код игры для визуализации последовательности видеоизображений в результате выполнения игры или приложения и производит непрерывную передачу видеопотока в режиме реального времени в клиентское устройство,- at least one server running the computer game or application receives control commands related to the game or application transmitted from a client controlled by the user and in response executes the game program code to render a sequence of video images as a result of the execution of the game or application, and performs continuous transmission of the video stream in real time to the client device,
при этом приложение или игра запускается на сервере в среде виртуализации, которая позволяет разделить друг от друга пользовательские приложения и игры, исключив их взаимовлияние, кроме того каждому пользователю среда виртуализации выделяет отдельный виртуальный компьютер, на котором пользователь работает с приложением или играет в игру, аналогично тому, если игра или приложение запускались бы на высокомощном персональном компьютере.in this case, the application or game is launched on the server in a virtualization environment, which allows you to separate user applications and games from each other, excluding their mutual influence, in addition, the virtualization environment allocates a separate virtual computer for each user, on which the user works with the application or plays a game, similarly if the game or application were to run on a high-performance personal computer.
причем прием, декодирование и отображение видеопотока для пользователя производится на клиентском приложении;moreover, receiving, decoding and displaying the video stream for the user is performed on the client application;
автоматическая настройка параметров видеопотока - битрейта (bitrate) и частоты кадров (FPS) на протяжении всего времени стриминга видео от сервера на клиентское устройство,automatic adjustment of video stream parameters - bitrate and frame rate (FPS) throughout the entire time of streaming video from the server to the client device,
причем при определенном нижнем пороге битрейта (bitrate) и частоты кадров (FPS) видеопотока, происходит автоматическое изменение разрешения изображения на сервере, что соответственно изменяет масштаб изображения на клиенте, прием управляющих команд на клиенте от устройств ввода и их передача на сервер через сеть передачи данных,moreover, at a certain lower threshold of the bitrate (bitrate) and frame rate (FPS) of the video stream, the image resolution on the server is automatically changed, which accordingly changes the image scale on the client, receiving control commands on the client from input devices and transmitting them to the server through the data transmission network ,
причем способ содержит алгоритм согласования видеопотока, при котором отсчет кругового времени передачи видеокадра (RTTV) отсчитывается с момента передачи видеокадра в энкодер на серверной стороне до момента отрисовки видеокадра на клиентской стороне и включает в себя все процессы связанные с энкодированием видеокадра, передачей видеокадра через сеть передачи данных, декодированием видеокадра на клиентской стороне и его отрисовкой, причем на основании измерения RTTV производится адаптация параметров энкодера (bitrate, FPS) и разрешения картинки видеопотока,moreover, the method comprises a video stream matching algorithm, in which the circular time of transmission of a video frame (RTTV) is counted from the moment the video frame is transmitted to the encoder on the server side to the moment the video frame is drawn on the client side and includes all processes associated with encoding a video frame, transmitting a video frame through a transmission network data, decoding the video frame on the client side and rendering it, and based on the RTTV measurement, the encoder parameters (bitrate, FPS) and the resolution of the video stream picture are adapted,
при этом в случае возникновения перегрузки на сети передачи данных, когда значение параметра битрейта видеопотока, передаваемого сервером (L) выше, чем значение битрейта видеопотока, получаемого клиентом (М), производится расчет разницы значений видеопотоков (S),in this case, in the event of an overload on the data transmission network, when the value of the bitrate parameter of the video stream transmitted by the server (L) is higher than the value of the bitrate of the video stream received by the client (M), the difference in the values of the video streams (S) is calculated,
алгоритм согласования видеопотока переходит в режим перегрузки при выполнении одновременно двух условий:the video stream matching algorithm goes into overload mode when two conditions are met simultaneously:
1) S>0;1) S> 0;
2) Значение RTTV за последний измеренный интервал времени больше предыдущего рассчитанного значения RTTV,2) The RTTV value for the last measured time interval is greater than the previous calculated RTTV value,
в режиме перегрузки значение битрейта, передаваемого с сервера на клиент начинает снижаться, причем во избежание излишней чувствительности алгоритма при принятии решения о снижении значения битрейта видеопотока передаваемого сервером принимается во внимание история поведения видеопотока за предыдущие интервалы измерений.in overload mode, the bitrate value transmitted from the server to the client begins to decrease, and in order to avoid excessive sensitivity of the algorithm, when deciding to decrease the bitrate value of the video stream transmitted by the server, the history of the video stream behavior for the previous measurement intervals is taken into account.
Алгоритм согласования видеопотока переходит в режим проактивного исследования и нахождения более высоких значений битрейта передаваемого с сервера видеопотока в случае стабильного состояния канала передачи данных и стабильной производительности клиентского устройства, то есть выполнения следующих условий:The algorithm for matching the video stream switches to the proactive investigation mode and finds higher bitrate values for the video stream transmitted from the server in the case of a stable state of the data transmission channel and stable performance of the client device, that is, the following conditions are met:
1) S=01) S = 0
2) Значение RTTV за последний измеренный интервал времени меньше или равно значению произведенного замера RTTV за предыдущий интервал времени.2) The RTTV value for the last measured time interval is less than or equal to the value of the RTTV measured for the previous time interval.
В течение нескольких интервалов времени происходит плавное повышение битрейта видеопотока, транслируемого сервером вплоть до достижения (OOP), при достижении значения OOP принимается во внимание история поведения канала передачи данных за прошедшее время, что позволяет ускорить процесс достижения OOP,Over several time intervals, the bitrate of the video stream broadcast by the server gradually increases until the OOP is reached, when the OOP value is reached, the history of the data transmission channel behavior over the past time is taken into account, which makes it possible to speed up the process of reaching OOP,
гдеwhere
OOP - Optimal Operating Point;OOP - Optimal Operating Point;
OOP = inflight = L*RTTV;OOP = inflight = L * RTTV;
Inflight - нативный параметр стека протоколов tcp/ip, показывающий количество отправленных в сеть неподтвержденных клиентом пакетов данных.Inflight is a native parameter of the tcp / ip protocol stack, showing the number of unacknowledged data packets sent to the network by the client.
Разработанный алгоритм согласования видеопотока для платформы облачных игр Loudplay, основывающегося на протоколе пользовательских датаграмм (UDP) обеспечивает максимально возможное качество картинки при низких задержках отклика.The developed video stream matching algorithm for the Loudplay cloud gaming platform, based on the User Datagram Protocol (UDP), provides the highest possible picture quality with low response delays.
При этом пользовательское устройство представляет собой телефон, планшет, пк, телевизионную приставку с различными операционными системами. При этом устройство ввода представляет собой клавиатуру, мышку, игровые джойстики, манипуляторы, сенсорный экран. При этом захват и кодирование изображения видеоигры или приложения в транспортный видеопоток Н.264 или Н.265 производится с использованием графической карты, установленной в сервере, захват производится в памяти графической карты, кодирование производится с использованием чипа графической карты, функционалом которого является захват и упаковка изображения в транспортный видеопоток h.264 и h.265. При этом канал передачи данных от сервера к клиенту использует технологию мобильной передачи данных 4G или 5G. При этом запрос ключевого кадра (I-frame) в транспортном видеопотоке h.246 и h.265 клиентом на сервере производится только при первоначальном подключении или при возникновении больших потерь на канале передачи данных (40-60%). При этом по меньшей мере один сервер, на котором запускается компьютерная игра или приложение, принимающий управляющие команды, относящиеся к игре или приложению, передаваемые от клиента, управляемого пользователем, и в ответ выполняющий программный код игры для визуализации последовательности видеоизображений в результате выполнения игры или приложения, при этом приложение или игра запускаются на сервере в среде виртуализации, которая позволяет разделить друг от друга пользовательские приложения и игры, исключив их взаимовлияние, кроме того, каждому пользователю среда виртуализации выделяет отдельный виртуальный компьютер, на котором пользователь работает с приложением или играет в игру, аналогично тому, если игра или приложение запускались бы на высокомощном персональном компьютере, при этом по меньшей мере один сервер использован в архитектуре multi-access edge computing, при этом в архитектуре multi-access edge computing (МЕС) два или более серверов могут быть объединены с использованием системы software-defined storage (sds). При этом запускаемые приложения представляют собой ресурсоемкие приложения. При этом изменение параметров видеопотока (bitrate, fps и разрешение экрана) выполняются на основе прогноза нейросети. причем обучение нейросети производится на основе собираемых данных пользовательских сессий (производительность сервера, производительность сети передачи данных, производительность пользовательского устройства, тип игры) и субъективной оценки качества игрового процесса.In this case, the user device is a phone, tablet, pc, set-top box with various operating systems. In this case, the input device is a keyboard, mouse, game joysticks, manipulators, and a touch screen. In this case, the capture and encoding of an image of a video game or application into a transport video stream H.264 or H.265 is performed using a graphics card installed in the server, capture is performed in the memory of a graphics card, encoding is performed using a graphics card chip, the functionality of which is capture and packaging images to transport video stream h.264 and h.265. In this case, the data transmission channel from the server to the client uses 4G or 5G mobile data transmission technology. At the same time, a request for a key frame (I-frame) in the transport video stream h.246 and h.265 is made by the client on the server only at the initial connection or in the event of large losses on the data transmission channel (40-60%). At the same time, at least one server on which a computer game or application is launched, which receives control commands related to the game or application transmitted from a client controlled by the user, and in response, executes the game program code to render a sequence of video images as a result of the game or application execution. , while the application or game is launched on the server in a virtualization environment, which allows you to separate user applications and games from each other, excluding their mutual influence, in addition, the virtualization environment allocates a separate virtual computer for each user, on which the user works with the application or plays a game , similar to if a game or application would be launched on a high-power personal computer, while at least one server is used in the multi-access edge computing architecture, while in the multi-access edge computing (MEC) architecture, two or more servers can be combined using the development of the software-defined storage (sds) system. At the same time, the launched applications are resource-intensive applications. In this case, the change in the parameters of the video stream (bitrate, fps and screen resolution) is performed based on the forecast of the neural network. moreover, the neural network is trained on the basis of the collected data of user sessions (server performance, data transmission network performance, user device performance, game type) and a subjective assessment of the quality of the game process.
Заявленная платформа виртуализации и стриминга приложений и компьютерных игр отвечает следующим требованиям:The declared platform for virtualization and streaming of applications and computer games meets the following requirements:
- регистрация новых пользователей, авторизация существующих пользователей;- registration of new users, authorization of existing users;
- проверка соединения с несколькими игровыми серверами и выбор ближайшего игрового сервера;- checking the connection with several game servers and choosing the nearest game server;
- реализация демо-режима (доступ абонентов к игровой демо-сессии с ограничением по времени без предварительной оплаты);- implementation of a demo mode (subscribers access to a game demo session with a time limit without prepayment);
- возможность выбора различных конфигураций сервера и выбора соответствующего тарифа. Оплата аренды облачного сервера.- the ability to select different server configurations and select the appropriate tariff. Payment for renting a cloud server.
- проверка качества соединения пользователя на всем интервале игровой сессии и, в случае минимально допустимого значения, уведомления об этом пользователя:- checking the quality of the user's connection throughout the entire interval of the gaming session and, in the case of the minimum allowable value, notifying the user about it:
- поддержка функции адаптивного изменения параметров видеопотока, меняющего параметры видеопотока - битрейт (bitrate) и частоту кадров (FPS) трансляции в зависимости от возможностей интернет-подключения пользователя;- support of the function of adaptive change of video stream parameters, changing the parameters of the video stream - bitrate (bitrate) and frame rate (FPS) of the broadcast, depending on the capabilities of the user's Internet connection;
- возможность запуска любых приложений и игр по облачной технологии, трансляцию соответствующего видеопотока на устройство пользователя;- the ability to launch any applications and games using cloud technology, broadcasting the corresponding video stream to the user's device;
- поддержка статистики и анализа времени, проведенного пользователям в различных приложениях и играх;- support for statistics and analysis of the time spent by users in various applications and games;
- возможность гибкой модификации пользовательского интерфейса;- the possibility of flexible modification of the user interface;
- обеспечение защиты от перехвата команд с пользовательского устройства;- providing protection against interception of commands from the user device;
- хранение данных пользователя (приложения, файлы, игры);- storage of user data (applications, files, games);
- обеспечение круглосуточного мониторинга технического состояния компонентов платформы;- providing round-the-clock monitoring of the technical condition of the platform components;
- заявленная технология обеспечивает минимальную задержку, незаметную для конечного игрока;- the declared technology provides a minimum latency invisible to the end player;
- функционирование системы в режиме 24×7 и доступности не менее 99.97%.- functioning of the system in 24 × 7 mode and availability of at least 99.97%.
На фиг. 1 под следующими обозначениями представлено описание модулей платформы:FIG. 1, under the following designations, a description of the platform modules is presented:
поз. 1 - Серверная часть платформы;pos. 1 - Server part of the platform;
поз. 2 - Система виртуализации серверной части платформы;pos. 2 - System of virtualization of the server part of the platform;
поз. 3 - Гостевая операционная система/виртуальная машина;pos. 3 - Guest operating system / virtual machine;
поз. 4 - Дисковое пространство для хранения данных гостевой операционной системы;pos. 4 - Disk space for storing data of the guest operating system;
поз. 5 - Модуль, отвечающий за сбор и агрегацию статистических данных по работе платформы и продукта, а также отвечающий за мониторинг работоспособности технической части платформы и бизнес показателей продукта;pos. 5 - The module responsible for collecting and aggregating statistical data on the operation of the platform and the product, as well as responsible for monitoring the health of the technical part of the platform and business indicators of the product;
поз.6 - Модуль биллинга и управления виртуальной инфраструктурой. Хранилище профилей клиентов и аутентификационных данных;pos. 6 - Billing and virtual infrastructure management module. Store of client profiles and authentication data;
поз. 7 - Игровая витрина сервиса. Содержит описание сервиса для пользователей и вход в личный кабинет;pos. 7 - Game showcase of the service. Contains a description of the service for users and an entrance to the personal account;
поз. 8 - Модуль, отвечающий за прием платежей от пользователей;pos. 8 - Module responsible for accepting payments from users;
поз. 9 - Модуль, обеспечивающий разделение инфраструктуры от сети интернет;pos. 9 - Module providing separation of infrastructure from the Internet;
поз. 10 - Игра или приложение, запущенное на гостевой виртуальной машине;pos. 10 - A game or application running on a guest virtual machine;
поз. 11 - Модуль захвата, энкодирования и стриминга изображения;pos. 11 - Image capture, encoding and streaming module;
поз. 12 - Модуль перехвата сигналов управления, передающихся от клиентской части платформы;pos. 12 - Module for intercepting control signals transmitted from the client side of the platform;
поз. 13 - Клиентская часть платформы;pos. 13 - Client side of the platform;
поз. 14 - Пользовательское устройство (ПК, планшет, смартфон, телевизионная приставка);pos. 14 - User device (PC, tablet, smartphone, set-top box);
поз. 15 - Программное обеспечение, установленное на пользовательском устройстве, обеспечивающее авторизацию и аутентификацию клиента;pos. 15 - Software installed on the user device that provides authorization and client authentication;
поз. 16 - Программное обеспечение, установленное на пользовательском устройстве, обеспечивающее прием видеопотока со стороны платформы, а также передачу сигналов управления на серверную часть;pos. 16 - Software installed on the user device, which ensures the reception of the video stream from the platform side, as well as the transmission of control signals to the server side;
поз. 17 - Регистрация и авторизация пользователей;pos. 17 - Registration and authorization of users;
поз. 18 - Проверка параметров канала передачи данных;pos. 18 - Checking the parameters of the data transmission channel;
поз. 19 - Передача видеопотока;pos. 19 - Video stream transmission;
поз. 20 - Передача сигналов управления.pos. 20 - Transmission of control signals.
Дополнительные возможности платформы виртуализации и стриминга приложений и компьютерных игр:Additional features of the platform for virtualization and streaming of applications and computer games:
- платформа позволяет быстро развернуть публичное или частное облако для организации виртуальных рабочих мест для предприятий;- the platform allows you to quickly deploy a public or private cloud to organize virtual workplaces for enterprises;
- заявленная технология позволяет реализовать рекламную модель повышения конверсии в скачивание/покупку приложений и игр, используя технологию стриминга ресурсоемких игр и приложений в WEB-браузер ПК или смартфон;- the claimed technology allows implementing an advertising model for increasing conversion in downloading / purchasing applications and games using the technology of streaming resource-intensive games and applications to a WEB browser on a PC or smartphone;
- платформа позволяет транслировать 3D (стереоскопическое) изображение для просмотра на телевизоре или мониторе, поддерживающем функцию 3DTV, а также на 3D-очках;- the platform allows you to broadcast a 3D (stereoscopic) image for viewing on a TV or monitor that supports the 3DTV function, as well as on 3D glasses;
- установка дополнительных probe-серверов позволяет проводить анализ передаваемого изображения, сбор и хранение статистики для дальнейшей обработки и аналитики пользовательского поведения в играх;- installation of additional probe servers allows analyzing the transmitted image, collecting and storing statistics for further processing and analytics of user behavior in games;
- платформа обеспечивает сбор статистики по переданным от пользователя управляющим командам для проведения дальнейшего анализа пользовательского поведения в играх.- the platform collects statistics on the control commands transmitted from the user for further analysis of user behavior in games.
Используемая терминология.Terminology used.
Стриминг (англ. streaming) - передача изображения через сеть передачи данных.Streaming (English streaming) - transmission of images through a data network.
- предоставление набора вычислительных ресурсов или их логического объединения, абстрагированное от аппаратной реализации, и обеспечивающее при этом логическую изоляцию друг от друга вычислительных процессов, выполняемых на одном физическом ресурсе. - provision of a set of computing resources or their logical association, abstracted from the hardware implementation, while ensuring logical isolation from each other of computing processes running on one physical resource.
Примером использования виртуализации является возможность запуска нескольких операционных систем на одном компьютере: при том каждый из экземпляров таких гостевых операционных систем работает со своим набором логических ресурсов (процессорных, оперативной памяти, устройств хранения), предоставлением которых из общего пула, доступного на уровне оборудования, управляет хостовая операционная система - гипервизор. Также могут быть подвергнуты виртуализации сети передачи данных, сети хранения данных.An example of the use of virtualization is the ability to run several operating systems on one computer: while each of the instances of such guest operating systems works with its own set of logical resources (processor, RAM, storage devices), the provision of which from a common pool available at the hardware level controls the host operating system is a hypervisor. Also can be subjected to virtualization of data transmission networks, storage networks.
(от англ. bitrate) - количество бит, используемых для передачи/обработки данных в единицу времени. Битрейт принято использовать при измерении эффективной скорости передачи потока данных по каналу, то есть минимального размера канала, который сможет пропустить этот поток без задержек. (from the English bitrate) - the number of bits used for data transmission / processing per unit of time. It is customary to use the bitrate when measuring the effective transmission rate of a data stream over a channel, that is, the minimum size of a channel that can pass this stream without delays.
Claims (69)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2020120491A RU2758985C1 (en) | 2020-06-19 | 2020-06-19 | Video stream matching algorithm for the cloud gaming platform loudplay |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2020120491A RU2758985C1 (en) | 2020-06-19 | 2020-06-19 | Video stream matching algorithm for the cloud gaming platform loudplay |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2758985C1 true RU2758985C1 (en) | 2021-11-08 |
Family
ID=78466732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2020120491A RU2758985C1 (en) | 2020-06-19 | 2020-06-19 | Video stream matching algorithm for the cloud gaming platform loudplay |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2758985C1 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2785897C1 (en) * | 2021-12-28 | 2022-12-14 | Общество с ограниченной ответственностью "ЛП Технологии" | Data redundancy application algorithm for the loudplay cloud gaming platform |
CN116440501A (en) * | 2023-06-16 | 2023-07-18 | 瀚博半导体(上海)有限公司 | Self-adaptive cloud game video picture rendering method and system |
CN117812392A (en) * | 2024-01-09 | 2024-04-02 | 广州巨隆科技有限公司 | Resolution self-adaptive adjustment method, system, medium and device for visual screen |
CN119155469A (en) * | 2024-11-15 | 2024-12-17 | 北京格如灵科技有限公司 | Method, device, equipment and medium for transmitting video stream based on Unity |
CN119729053A (en) * | 2025-02-28 | 2025-03-28 | 深圳市玥芯通科技有限公司 | Picture definition improving method and system applied to cloud game operation |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120283017A1 (en) * | 2011-04-28 | 2012-11-08 | Approxy Inc. Ltd. | Adaptive Application Streaming In Cloud Gaming |
US20150251092A1 (en) * | 2014-03-07 | 2015-09-10 | Microsoft Corporation | Multi-tenancy for cloud gaming servers |
US20150258438A1 (en) * | 2014-01-09 | 2015-09-17 | Square Enix Holdings Co., Ltd. | Online game server architecture using shared rendering |
US20170354878A1 (en) * | 2016-06-13 | 2017-12-14 | Sony Interactive Entertainment America Llc | Browser-based cloud gaming |
RU2679978C1 (en) * | 2013-12-31 | 2019-02-14 | МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи | Multimode gaming server |
-
2020
- 2020-06-19 RU RU2020120491A patent/RU2758985C1/en active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120283017A1 (en) * | 2011-04-28 | 2012-11-08 | Approxy Inc. Ltd. | Adaptive Application Streaming In Cloud Gaming |
RU2679978C1 (en) * | 2013-12-31 | 2019-02-14 | МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи | Multimode gaming server |
US20150258438A1 (en) * | 2014-01-09 | 2015-09-17 | Square Enix Holdings Co., Ltd. | Online game server architecture using shared rendering |
US20150251092A1 (en) * | 2014-03-07 | 2015-09-10 | Microsoft Corporation | Multi-tenancy for cloud gaming servers |
US20170354878A1 (en) * | 2016-06-13 | 2017-12-14 | Sony Interactive Entertainment America Llc | Browser-based cloud gaming |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2785897C1 (en) * | 2021-12-28 | 2022-12-14 | Общество с ограниченной ответственностью "ЛП Технологии" | Data redundancy application algorithm for the loudplay cloud gaming platform |
CN116440501A (en) * | 2023-06-16 | 2023-07-18 | 瀚博半导体(上海)有限公司 | Self-adaptive cloud game video picture rendering method and system |
CN116440501B (en) * | 2023-06-16 | 2023-08-29 | 瀚博半导体(上海)有限公司 | Self-adaptive cloud game video picture rendering method and system |
CN117812392A (en) * | 2024-01-09 | 2024-04-02 | 广州巨隆科技有限公司 | Resolution self-adaptive adjustment method, system, medium and device for visual screen |
CN117812392B (en) * | 2024-01-09 | 2024-05-31 | 广州巨隆科技有限公司 | Resolution self-adaptive adjustment method, system, medium and device for visual screen |
CN119155469A (en) * | 2024-11-15 | 2024-12-17 | 北京格如灵科技有限公司 | Method, device, equipment and medium for transmitting video stream based on Unity |
CN119729053A (en) * | 2025-02-28 | 2025-03-28 | 深圳市玥芯通科技有限公司 | Picture definition improving method and system applied to cloud game operation |
CN119729053B (en) * | 2025-02-28 | 2025-05-13 | 深圳市玥芯通科技有限公司 | Picture definition improving method and system applied to cloud game operation |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2758985C1 (en) | Video stream matching algorithm for the cloud gaming platform loudplay | |
Kim et al. | Neural-enhanced live streaming: Improving live video ingest via online learning | |
JP7671760B2 (en) | Method and system for maintaining a smooth frame rate during transmission of streaming video content - Patents.com | |
WO2022222755A1 (en) | Service processing method and apparatus, and storage medium | |
CA2814420C (en) | Load balancing between general purpose processors and graphics processors | |
CN111882626A (en) | Image processing method, apparatus, server and medium | |
CN108848082B (en) | Data processing method, data processing device, storage medium and computer equipment | |
US20140281017A1 (en) | Jitter buffering system and method of jitter buffering | |
CN113434300B (en) | Data processing method and related device | |
CN112583898A (en) | Business process arranging method and device and readable medium | |
US20200143583A1 (en) | Cloud render service framework for low power playback devices | |
US20220226736A1 (en) | Selection of virtual server for smart cloud gaming application from multiple cloud providers based on user parameters | |
CN104378586B (en) | The method and system that vision facilities based on desktop virtualization is redirected | |
Kämäräinen et al. | Towards pervasive and mobile gaming with distributed cloud infrastructure | |
CN114598931A (en) | Streaming method, system, device and medium for multi-open cloud game | |
US9327199B2 (en) | Multi-tenancy for cloud gaming servers | |
CN112333556A (en) | Control method for monitoring video transmission bandwidth, terminal equipment and readable storage medium | |
WO2024037110A9 (en) | Data processing method and apparatus, device, and medium | |
CN109587118B (en) | Distributed multi-terminal and multi-network supporting system for Android online game | |
US11848842B2 (en) | Network storage game allocation based on artificial intelligence | |
Lan et al. | Research on technology of desktop virtualization based on SPICE protocol and its improvement solutions | |
Gharsallaoui et al. | A Comparative Study on Cloud Gaming Platforms | |
RU2785897C1 (en) | Data redundancy application algorithm for the loudplay cloud gaming platform | |
WO2023087177A1 (en) | Method and system of video coding with fast low-latency bitstream size control | |
Kim et al. | Cloud-based virtual desktop service using lightweight network display protocol |