Jeux vidéo dans le cloud l'une des principales technologies à suivre dès maintenant. Au cours des 6 prochaines années, ce marché devrait se multiplier par 10 — passant de 45 millions de dollars en 2018 à 450 millions de dollars en 2024. Des géants technologiques se sont déjà lancés sur ce marché : Google et Nvidia ont lancé des versions bêta de leurs services de jeux vidéo dans le cloud, tandis que Microsoft, EA, Ubisoft, Amazon et Verizon se préparent à entrer en scène.
Pour les joueurs, cela signifie qu'ils pourront bientôt cesser complètement de dépenser de l'argent pour mettre à jour leur matériel et exécuter des jeux puissants sur des ordinateurs peu performants. Est-ce avantageux pour les autres acteurs de l'écosystème ? Nous expliquons pourquoi le jeu vidéo dans le cloud augmentera leurs revenus et comment nous avons créé une technologie permettant d'entrer facilement sur ce marché prometteur.

Éditeurs, développeurs, fabricants de téléviseurs et opérateurs de télécommunications : pourquoi ont-ils tous besoin du jeu vidéo dans le cloud
Les éditeurs de jeux et les développeurs sont désireux de livrer leur produit au plus grand nombre de joueurs dans les plus brefs délais. Actuellement, selon nos données, 70 % des acheteurs potentiels n'atteignent pas le jeu — ils ne patientent pas pour le chargement du client et du fichier d'installation de plusieurs dizaines de gigaoctets. De plus, 60 % des utilisateurs, , ne peuvent tout simplement pas exécuter des jeux puissants (de niveau AAA) sur leurs ordinateurs avec une qualité acceptable. Le jeu vidéo dans le cloud pourrait résoudre ce problème — il ne diminuera pas les revenus des éditeurs et des développeurs, mais les aidera à accroître leur public payant.
Les fabricants de téléviseurs et de décodeurs se penchent également sur le jeu vidéo dans le cloud. À l'ère des maisons intelligentes et des assistants vocaux, ils doivent de plus en plus rivaliser pour attirer l'attention des utilisateurs, et la fonctionnalité de jeu est le principal moyen d'attirer cette attention. Avec un jeu vidéo dans le cloud intégré, leur client pourra lancer des jeux modernes directement sur le téléviseur, en payant le service au fabricant.

Un autre participant potentiellement actif de l'écosystème est les opérateurs de télécommunication. Leur manière d'augmenter leurs revenus est de proposer des services additionnels. Le gaming est justement l'un de ces services que les opérateurs commencent déjà à intégrer. Rostelecom a lancé le tarif « Jeu », Akado vend l'accès à notre service Playkey. Cela concerne non seulement les opérateurs de l'Internet à haut débit. Les opérateurs mobiles, avec la large diffusion de la 5G, peuvent également faire du cloud gaming une source de revenus supplémentaire.
Malgré des perspectives prometteuses, entrer sur le marché n'est pas si simple. Tous les services existants, y compris les produits des géants technologiques, n'ont pas encore réussi à surmonter complètement le problème de la « dernière mille ». Cela signifie qu’en raison des imperfections du réseau directement dans la maison ou l'appartement, la vitesse Internet de l'utilisateur n'est pas suffisante pour un bon fonctionnement du cloud gaming.

Regardez comment le signal WiFi s'affaiblit lorsqu'il se propage de l'routeur à travers l'appartement.
Les acteurs présents sur le marché depuis longtemps et disposant de ressources puissantes avancent progressivement vers une solution à ce problème. Mais lancer ses propres jeux cloud à partir de zéro en 2019 nécessite de dépenser beaucoup d'argent, de temps, et il se peut qu'on ne parvienne pas à créer une solution efficace. Pour aider tous les participants de l'écosystème à se développer sur un marché en forte croissance, nous avons développé une technologie qui permet de lancer rapidement et sans coût élevé son propre service de jeu cloud.
Comment nous avons développé une technologie qui permettra de lancer facilement son propre service de jeu cloud.
Playkey a commencé à développer sa technologie de cloud gaming en 2012. Le lancement commercial a eu lieu en 2014, et en 2016, 2,5 millions de joueurs avaient utilisé le service au moins une fois. Tout au long du développement, nous avons constaté un intérêt non seulement de la part des gamers, mais aussi des fabricants de décodeurs TV et des opérateurs de télécommunication. Avec NetByNet et « Er-Telecom », nous avons même lancé plusieurs projets pilotes. En 2018, nous avons décidé que notre produit pourrait avoir un avenir B2B.
Développer une intégration de jeu en cloud spécifique pour chaque entreprise, comme nous l'avons fait dans les projets pilotes, s'avère problématique. Chaque mise en œuvre de ce type prenait de trois mois à un an. Pourquoi ? Chacun a un matériel et un système d'exploitation différents : certains ont besoin d'un jeu en cloud sur une console Android, tandis que d'autres le souhaitent comme iFrame dans l'interface Web de leur espace personnel pour le streaming sur ordinateur. De plus, chacun a un design, une facturation (un monde à part !) et d'autres caractéristiques différentes. Il est devenu évident qu'il fallait soit multiplier par dix l'équipe de développement, soit créer une solution B2B standard aussi universelle que possible.
En mars 2019, nous avons lancé . Il s'agit d'un logiciel que les entreprises peuvent installer sur leurs serveurs pour obtenir un service de jeu en nuage opérationnel. À quoi cela ressemblera-t-il pour l'utilisateur ? Il verra sur le site habituel un bouton permettant de lancer le jeu dans le cloud. Lorsqu'il cliquera, le jeu se lancera sur le serveur de l'entreprise, et l'utilisateur pourra voir le flux et jouer à distance. Voici à quoi cela pourrait ressembler dans des services populaires de distribution numérique de jeux.


Lutte active pour la qualité. Et passive aussi.
Comment Remote Click surmonte les nombreux barrières techniques, nous allons vous l'expliquer maintenant. Le jeu en cloud de première génération (comme OnLive) a été détruit par la mauvaise qualité d'internet des utilisateurs. À l'époque, en 2010, la vitesse moyenne de connexion Internet aux États-Unis seulement de 4,7 Mbit/s. En 2017, elle avait déjà augmenté à 18,7 Mbit/s, et bientôt la 5G sera omniprésente, marquant le début d'une nouvelle ère. Cependant, bien que l'infrastructure soit globalement prête pour le jeu en cloud, il reste le problème déjà évoqué de la « dernière ligne ».
Un de ses aspects, que nous appelons objectif : l'utilisateur a effectivement des problèmes de réseau. Par exemple, l'opérateur ne fournit pas la vitesse maximale annoncée. Ou il utilise le WiFi 2,4 GHz, perturbé par un micro-ondes et une souris sans fil.
L'autre aspect que nous appelons subjectif : l'utilisateur n'est même pas conscient des problèmes de réseau (il ne sait pas ce qu'il ne sait pas) ! Au mieux, il est convaincu que puisque l'opérateur lui vend un forfait de 100 Mbit/s, il a bien 100 Mbit/s d'internet. Au pire, il n'a aucune idée de ce qu'est un routeur et divise l'internet en bleu et en coloré. Un cas réel d'un cas de développement.

Internet bleu et coloré.
Mais les deux parties du problème de la "dernière mille" sont résolubles. Chez Remote Click, nous utilisons pour cela des mécanismes actifs et passifs. Voici un récit détaillé sur la façon dont ils surmontent les obstacles.
Mécanismes actifs
1. Codage de canal résistant aux interférences pour les données transmises, a.k.a redondance (FEC - Forward Error Correction)
Lors de la transmission de données vidéo du serveur au client, un codage résistant aux interférences est utilisé. Grâce à cela, nous récupérons les données d'origine en cas de perte partielle due à des problèmes de réseau. Qu'est-ce qui rend notre solution efficace ?
- Vitesse. Le codage et le décodage s'effectuent très rapidement. Même sur des ordinateurs "faibles", l'opération prend moins de 1 ms pour 0,5 Mo de données. Ainsi, le codage et le décodage n'ajoutent pratiquement pas de latence lors du jeu dans le cloud. L'importance est difficile à surestimer.
- Le potentiel maximal de récupération des données. À savoir, le rapport entre le volume de données redondantes et le volume potentiellement récupérable. Dans notre cas, le rapport = 1. Supposons que nous devons transmettre 1 Mo de vidéo. Si, lors du codage, nous ajoutons 300 Ko de données supplémentaires (ce qu'on appelle de la redondance), alors pour la récupération d'1 Mo d'origine, nous n'avons besoin que de n'importe quel 1 Mo parmi les 1,3 Mo que le serveur a envoyés. En d'autres termes, nous pouvons perdre 300 Ko et récupérer les données d'origine. Comme on peut le voir, 300 / 300 = 1. C'est l'efficacité maximale possible.
- Flexibilité dans le réglage du volume de données supplémentaires lors du codage. Nous pouvons ajuster le niveau de redondance pour chaque image vidéo à transmettre sur le réseau. Par exemple, en remarquant des problèmes sur le réseau, nous pouvons augmenter ou diminuer le niveau de redondance.

Nous jouons à Doom via Playkey sur un Core i3, 4 Go de RAM, MSI GeForce GTX 750.
2. Renvoyer des données
Un moyen alternatif de lutter contre les pertes consiste à redemander des données. Par exemple, si le serveur et l'utilisateur se trouvent à Moscou, la latence lors de la transmission ne dépassera pas 5 ms. Avec une telle valeur, l'application client pourra demander et recevoir la partie de données perdue sans que l'utilisateur ne s'en aperçoive. Notre système décide lui-même quand appliquer de la redondance et quand utiliser la retransmission.
3. Configuration personnalisée de la transmission des données
Pour choisir le moyen optimal de lutte contre les pertes, notre algorithme analyse la connexion réseau de l'utilisateur et configure le système de transmission des données de manière personnalisée pour chaque cas.
Il examine :
- le type de connexion (Ethernet, WiFi, 3G, etc.);
- la bande de fréquence utilisée par le WiFi — 2,4 GHz ou 5 GHz;
- la puissance du signal WiFi.
Si l'on classe les connexions en fonction des pertes et de la latence, le plus fiable est certainement le filaire. Les pertes via Ethernet sont rares, et les latences sur le dernier kilomètre sont extrêmement improbables. Ensuite vient le WiFi 5 GHz, et seulement après, le WiFi 2,4 GHz. Les connexions mobiles sont, en général, peu fiables, attendons la 5G.

Lors de l'utilisation du WiFi, le système configure automatiquement l'adaptateur de l'utilisateur, le transférant dans le mode le plus approprié pour une utilisation dans le cloud (par exemple, désactivation de l'économie d'énergie).
4. Configuration personnalisée de l'encodage
Le streaming vidéo existe grâce aux codecs — des programmes de compression et de décompression des données vidéo. En version non compressée, une seconde de vidéo peut facilement dépasser une centaine de mégaoctets, tandis que le codec réduit cette taille d'un ordre de grandeur. Nous disposons des codecs H264 et H265.
H264 est le plus populaire. Son utilisation matérielle est prise en charge par tous les principaux fabricants de cartes graphiques depuis une dizaine d'années. H265 est un successeur audacieux et jeune. Son soutien matériel a commencé il y a environ cinq ans. L'encodage et le décodage en H265 nécessitent plus de ressources, mais la qualité de l'image compressée est nettement supérieure à celle du H264. Et sans augmentation de la taille !

Quel codec choisir et quels paramètres d'encodage définir pour un utilisateur particulier, en fonction de son matériel ? C'est une tâche non triviale qui est résolue automatiquement chez nous. Le système intelligent analyse les capacités du matériel, fixe les paramètres optimaux pour l'encodeur et choisit le décodeur côté client.
5. Compensation des pertes
Nous ne voulions pas l'admettre, mais même nous ne sommes pas parfaits. Certaines données, perdues dans les profondeurs du réseau, ne peuvent pas être récupérées et nous ne pouvons pas les renvoyer à temps. Mais même dans ce cas, il existe une solution.
Par exemple, l'ajustement du débit binaire. Notre algorithme contrôle en permanence le volume des données transmises du serveur au client. Il détecte chaque lacune et prédit même les pertes futures possibles. Sa tâche est de remarquer à temps, et idéalement de prédire, quand les pertes atteindront un niveau critique et commenceront à créer des interférences notables à l'écran pour l'utilisateur. Il ajuste alors le volume des données transmises (débit binaire).

Nous utilisons également l'invalidation des images non assemblées et le mécanisme des images de référence dans le flux vidéo. Les deux outils réduisent le nombre d'artefacts visibles. Ainsi, même en cas de perturbations sérieuses dans la transmission des données, l'image à l'écran reste acceptable et le jeu reste jouable.
6. Envoi décentralisé
L'envoi d'informations étalé dans le temps améliore également la qualité du streaming. La manière de procéder dépend de certains indicateurs de réseau, tels que la perte de données, le ping et d'autres facteurs. Notre algorithme les analyse et choisit la meilleure option. Parfois, une distribution sur quelques millisecondes réduit les pertes considérablement.
7. Réduction de la latence
Une des caractéristiques clés lorsqu'on joue dans le cloud est la latence. Moins elle est élevée, plus l'expérience de jeu est confortable. La latence peut être grossièrement divisée en deux parties :
- latence réseau ou latence de transmission des données ;
- latence système (prise de contrôle côté client, capture d'image sur le serveur, encodage de l'image, les mécanismes d'adaptation des données mentionnés ci-dessus, récupération des données côté client, décodage de l'image et son rendu).
La latence réseau dépend de l'infrastructure et il est difficile de la combattre. Si un câble a été rongé par des souris, les danses rituelles ne serviront à rien. Cependant, nous pouvons considérablement réduire la latence système et améliorer radicalement la qualité des jeux dans le cloud pour le joueur. En plus de l'encodage résistant aux perturbations et des réglages personnalisés, nous utilisons encore deux mécanismes.
- Une récupération rapide des données des dispositifs de contrôle (clavier, souris) côté client. Même sur des ordinateurs peu puissants, cela ne nécessite que 1 à 2 ms.
- Le rendu du curseur système sur le client. Le pointeur de la souris est traité non pas sur le serveur distant, mais dans le client Playkey sur l'ordinateur de l'utilisateur, c'est-à-dire sans aucun retard. Oui, cela n'affecte pas la gestion réelle dans le jeu, mais l'essentiel ici est la perception humaine.

Rendu du curseur sans délai dans Playkey sur l'exemple d'Apex Legends
Avec notre technologie, en cas de latence réseau de 0 ms et en travaillant avec un flux vidéo à 60 FPS, le retard de l'ensemble du système ne dépasse pas 35 ms.
Mécanismes passifs
D'après notre expérience, de nombreux utilisateurs ont une mauvaise compréhension de la façon dont leurs appareils se connectent à Internet. Dans des interviews avec des joueurs, il a été révélé que certains ne savent pas ce qu'est un routeur. Et c'est normal ! Vous n'êtes pas obligé de connaître le fonctionnement d'un moteur à combustion interne pour conduire une voiture. Il ne faut pas exiger d'un utilisateur qu'il ait des connaissances d'administrateur système pour pouvoir jouer.
Cependant, certains aspects techniques sont néanmoins importants à transmettre, afin que le joueur puisse éliminer lui-même les obstacles de son côté. Et nous l'aidons.
1. Indication de support WiFi 5 GHz
Nous avons mentionné ci-dessus que nous voyons la norme Wi-Fi - 5 GHz ou 2,4 GHz. Et nous savons également si l'adaptateur réseau de l'appareil de l'utilisateur prend en charge la possibilité de fonctionner sur 5 GHz. Et si oui, nous recommandons d'utiliser cette bande. Nous ne pouvons pas encore changer nous-mêmes la fréquence, car nous ne voyons pas les caractéristiques du routeur.
2. Indication de la force du signal WiFi
Chez certains utilisateurs, le signal WiFi peut être faible, même si Internet fonctionne bien et semble à une vitesse acceptable. Le problème se révélera particulièrement lors du jeu en cloud, qui soumet le réseau à de réelles épreuves.
L'intensité du signal est influencée par les obstacles - par exemple, les murs - et les interférences d'autres appareils. Les micro-ondes en émettent beaucoup. En conséquence, il y a des pertes, invisibles lors de la navigation sur Internet, mais critiques pour les jeux en cloud. Dans de tels cas, nous avertissons l'utilisateur des interférences, proposons de se rapprocher du routeur et d'éteindre les appareils « bruyants ».
3. Indication des consommateurs de trafic
Même si la connexion est bonne, d'autres applications peuvent consommer trop de trafic. Par exemple, si une vidéo sur Youtube est diffusée en même temps que le jeu dans le cloud, ou si des torrents sont téléchargés. Notre application identifie les voleurs et prévient le joueur à leur sujet.

Peurs du passé — déconstruisons les mythes sur le cloud gaming
Le cloud gaming, en tant que nouveau mode de consommation de contenu de jeu, tente de percer le marché depuis près de dix ans. Comme pour toute innovation, son histoire est faite de petites victoires et de grands échecs. Il n'est pas surprenant qu'au fil des ans, le cloud gaming ait accumulé des mythes et des préjugés. À l'aube de cette technologie, ils étaient justifiés, mais aujourd'hui, ils sont complètement infondés.
Mythe 1. La qualité d’image dans le cloud est inférieure à l'original — comme si on jouait sur YouTube
Aujourd'hui, dans une solution cloud techniquement avancée, l'image de l'original et celle du cloud sont pratiquement identiques — les différences ne peuvent pas être perçues à l'œil nu. L'ajustement individuel de l'encodeur en fonction du matériel du joueur et une série de mécanismes pour lutter contre les pertes résolvent ce problème. Sur un réseau de qualité, il n'y a ni flou d'images ni artefacts graphiques. Nous tenons même compte de la résolution. Il n'est pas logique de diffuser une image en 1080p si le joueur utilise 720p.
Voici deux vidéos d'Apex Legends de notre chaîne. Dans un cas, il s'agit d'un enregistrement de gameplay sur PC, dans l'autre — via Playkey.
Apex Legends sur PC

Apex Legends sur Playkey

Mythe 2. Qualité instable
L'état du réseau est effectivement variable, mais ce problème est résolu. Nous ajustons dynamiquement les paramètres de l'encodeur en fonction de la qualité du réseau de l'utilisateur. Et un niveau FPS toujours acceptable est maintenu grâce à des techniques spéciales de capture d'image.
Comment ça fonctionne ? Le jeu possède un moteur 3D, qui construit un monde 3D. Mais l'utilisateur voit une image plate. Pour qu'il la voie, une image mémoire est créée pour chaque cadre — une sorte de photo, montrant comment ce monde 3D apparaît d'un point de vue particulier. Cette image, sous forme codée, est stockée dans le buffer de la mémoire vidéo. Nous la capturons depuis la mémoire vidéo et la transmettons à l'encodeur, qui la déchiffre. Et cela se répète pour chaque image, les unes après les autres.
Notre technologie permet de capturer et de décoder une image en un seul flux, ce qui augmente le FPS. Et si ces processus sont réalisés en parallèle (une solution assez populaire sur le marché du gaming cloud), l'encodeur accède constamment à la capture, récupère de nouvelles images avec un léger décalage et, par conséquent, les transmet avec un léger retard.

La vidéo en haut de l'écran a été réalisée en utilisant la technologie de capture et de décodage en un seul flux.
Mythe 3. À cause des lags de contrôle, je vais être « à la traîne » en multijoueur.
Le délai de contrôle normal est de quelques millisecondes. Et il est généralement imperceptible pour l'utilisateur final. Mais on peut parfois percevoir un léger décalage entre le mouvement de la souris et le déplacement du curseur. Cela n'influence rien, mais cela crée une impression négative. Le rendu du curseur directement sur l'appareil de l'utilisateur élimine ce défaut. Par ailleurs, le délai global du système de 30-35 ms est si faible que ni le joueur ni ses adversaires ne remarqueraient rien. L'issue du combat se joue uniquement sur les compétences. La preuve ci-dessous.
Le streamer domine grâce à Playkey.
Que faire ensuite
Le gaming cloud est déjà une réalité. Playkey, PlayStation Now, Shadow - ce sont des services opérationnels avec leur propre audience et une place sur le marché. Comme beaucoup de nouveaux marchés, le gaming cloud connaîtra une croissance rapide dans les années à venir.
Un des scénarios qui nous semble le plus probable - l'apparition de services propres par les éditeurs de jeux et les opérateurs de télécommunications. Certains développeront leurs propres solutions, d'autres utiliseront des solutions prêtes à l'emploi, comme RemoteClick.net. Plus il y a d'acteurs sur le marché, plus rapidement la consommation de contenu de jeu par le biais du cloud deviendra mainstream.
Source : habr.com
