Preface:

When Afa Dog lost a lot of Go players, it seemed that everyone knew AI. This time Google released STADIA, domestic goose factory again running approach, guizhou xx cloud layout in advance.

Idle, tried to experience guizhou xx cloud game (not advertising), not comment on how, just a little research on convection media technology, only here to talk about the architecture and technology involved in this respect.

Architectural design:

The overall architecture can be roughly divided into four parts from top to bottom:

1. Cloud game host terminal (cloud game running terminal, or cloud game picture rendering terminal, needs to receive control instructions and record screen and push streaming to streaming media service)

The host side needs to run the game and have the rendered game images (actually video recording) be pushed to the streaming service for real-time video distribution through the video recording and streaming program.

One might think that the cloud gaming console would be complicated, but that’s fine, except that it includes recording, pushing streams, receiving user control commands, and other related features like billing.

2. Streaming media service (used to forward the real-time video of the game pushed up by the host terminal and distributed, so that all users can watch the video)

This needs no further explanation, it is only used to forward live video of the game, and does not involve control of the cloud gaming console.

3. Control command forwarding service (users need to obtain the ownership of control command service to control cloud game host)

This is the cloud game control core, to obtain a cloud game host users can through the keyboard or mouse cloud game trial play (operation), theoretically speaking, to obtain the control is not only a user, can support multiple users at the same time control a cloud game host.

4. Client (browser, PC client, ios, Android client, etc.)

The client needs to pull real-time game videos from streaming media services, and users need to obtain the control of cloud game host before they can send control instructions to try (operate) cloud games (mouse, keyboard, gamepad, etc.).

Difficult or unsolved points:

1. Choice of streaming media protocol? High latency is the biggest killer

Since the origin of streaming media technology, real-time video latency has always been a thorny issue, such as RTMP/HTTP-FLV and other TCP-based protocols themselves optimized to the point of hundreds of milliseconds of delay, HLS such ultra-high latency to a few seconds is not to mention. At present, only SIP, RTSP and some protocols based on UDP can meet the requirements of ultra-low latency, but this protocol is difficult to implement in the browser, except weBRTC protocol, and WEBRTC protocol is the next generation of streaming media protocol pushed by Google, not to rule out this time is the foundation work of Google WeBRTC technology. Wait and see.

2. Ownership of cloud game host control instructions? Still delay

This ownership isn’t really difficult, it’s just the user taking control of a cloud game console. The difficulty is controlling instruction latency, yes, network latency. Especially in the case of pulling real-time video, when the video has occupied a large amount of bandwidth, it may be worth paying attention to control instruction delay in the case of network load or network fluctuation.

After discussing the topic of cloud games with many friends, the first thing that comes to mind is network delay. Of course, this delay not only includes the delay of control commands but also refers to the delay of real-time game video.

 

Last words (a few long words) :

In fact, this area is still the follow-up of the sharing economy, similar to shared bikes.

To give you an example: I have 100 powerful game consoles that cost $10,000 each, and I’ll probably lose a little when I sell them used, which is a shame. So I share it out. Suppose there are 100,000 users who want to rent my 100 machines, and they only charge 10 yuan per person for the monthly rent, regardless of electricity and other costs. When can I get my capital back?