
A Look at Game Streaming Tech in the Browser - chrisd1100
https://blog.parsecgaming.com/game-streaming-tech-in-the-browser-with-parsec-5b70d0f359bc
======
albertgoeswoof
> The current implementation only works in Chrome. Before you assume we’re
> kool aid drinking Google evangelists, or simply just lazy, there is good
> reason for this — likely due in part to Google’s work on Project Stream,
> they have introduced “low delay” mode for MSE that sets up a push model for
> video frames rather than the traditional buffered pull model. This is also
> good for any kind of low latency video stream, not just game streaming. When
> in low delay mode, Chrome begins to break the rules of MSE and no longer
> requires buffered playback. It also starts to ignore certain timing
> information and keyframe requirements.

> ...

> This is not to say that one couldn’t get a decent working implementation in
> Firefox, but Chrome’s low delay mode works in the ideal way without having
> to complicate the implementation or diverge too heavily from the way
> Parsec’s native applications behave. And while we love Firefox, the harsh
> reality is that 82% of Parsec users are using Chrome, with only 5% using
> Firefox, which made us more comfortable starting with a Chrome only
> implementation. For Firefox users, you can always use the Parsec native
> applications, which will probably perform better anyway .

I think this is quite sad to see. It’s not really game streaming tech in a web
browser, it’s game streaming tech in Google Chrome.

What happens if Google decides they don’t want to play with other streaming
services? They’re only a quick auto update of locking Parsec services out.

~~~
pthatcherg
(I work at Google, on Chrome)

I know both people from both the MSE team and the Project Stream team. Project
Stream doesn't use MSE (it uses WebRTC) and the code in Chrome to detect live
streams and optimizing them has been around long time, (see, for example, this
change from almost 4 years ago:
[https://codereview.chromium.org/692323002](https://codereview.chromium.org/692323002))
and they've steadily added better support for live streams over the years.
It's not "game-streaming tech in a web browser". It's just a few simple
heuristics to function better for low-latency streams. You can read the code
for yourself if you'd like:

[https://cs.chromium.org/chromium/src/media/renderers/video_r...](https://cs.chromium.org/chromium/src/media/renderers/video_renderer_impl.cc?type=cs&sq=package:chromium&g=0&l=240)

~~~
graphememes
Nothing stopping the single vendor to stop servicing it though, other than a
small collective of individuals. OP has a point.

~~~
thisgoodlife
but it's an open source project, a lot of browsers based on the same code base
will have the same functionality sooner or later.

~~~
graphememes
Open source projects die too

------
ilovecaching
I've been playing odyssey in project stream all weekend and it's blown away my
expectations. We're about two to three years away from seeing consoles move to
the cloud. It runs flawlessly at 1080p and I've only experienced three or four
five second lag spikes in my six hours of play. The game feels just as
responsive and looks just as good on my 1080 GTX running at home.

~~~
soared
My project stream was perfect for 2 hours, then was completely unplayable for
the 10 minutes until I quit. I'm not sure what happened, but I've gone back
once or twice and have horrible input lag. I'm using ethernet and get 350MB/s,
but google says the issue is packet loss. I don't know how to remedy it, but I
know that game streaming is and seemingly always will be just around the
corner from perfect.

Edit - it was absolutely stunning to see my accepted email, login to google
and ubisoft, and be playing within 5 minutes. Zero download time, zero load
time, just instant gaming.

~~~
awakeasleep
It doesn't have to be perfect- it just has to be profitable. And the increased
control a streaming service will have over users guarantees that game
streaming with be outrageously profitable.

Think of all the basic ways we already see services make money- from the
subscription, to metered access, to congestion pricing, early access fees- and
those are only the basics. This is an industry that figured out the loot
crate, after all.

On a different note, once the profitability is figured out, publishers can
give direction to developers that games need to be designed around the
latency, or whatever issue appears. Games can also be designed around the
assumption that they'll be streamed, allowing things to be a lot more cross
platform.

~~~
soared
I think the problem is the product is poor due to technical issues so no one
will adopt it. If I can only play a few hours before getting game-breaking
input lag, I'm not going to come back to the service.

I have a decent computer and hard wired gigabit internet, if game streaming
can't work there it won't work for the 99% of americans who have worse
internet than me.

~~~
misterprime
This is an early release right? I'm expecting it to become more stable as they
work on it and build out the infrastructure.

------
blixt
(Edit: to clarify the below is about their cloud offering user since I'm on
Mac and don't have my own PC to stream from)

I've been using Parsec to play games like No Man's Sky and it's really
impressive technologically speaking, but the pricing model is a bit obtuse.
It's made worse by the fact that the big cost for someone who doesn't game all
that often is storage.

Basically, you sign up to a VM with an impressive GPU and it runs games really
well, and the streaming tech is top notch. But to run it all you need to pay
for at least 50 GB of storage and you need to pay for it on a time basis,
which means you're left with anxiety of leaving it turned off, as well as
sudden deletion of your cloud PC if you're not paying attention.

I wish they would come up with some kind of clever storage solution so that
the basic Windows image is a shared (read only) storage component and the
additional games are additional pluggable hard drives, also shared between
users. This would mean you as the end user loses control of modding/patches
for some games, but it could save so much storage. The save games etc would go
on a tiny hard drive that you ultimately pay for (but I'd say Parsec should
eat that cost to reduce anxiety and instead encourage a monthly subscription
for any-time access).

TL;DR: Parsec is awesome. I want to pay a fixed price and not be exposed to
their tech stack costs, so I don't get FOMO when I'm not using it every day.

~~~
xigency
This reminds me of a huge problem with Steam, which is the size and frequency
of updates. For the very small number of first party games, like Half-Life or
Counter-Strike, updates are cumulative smaller files that contain changes. So
if there was an update to a game, it might be 1-2 GB. For the vast majority of
titles on Steam, however, an update requires a full download of the latest
version. So for most games it is a 25 GB or 50 GB download. Developers want to
stay on top of bugs, so for an infrequent gamer playing on a weekly or monthly
basis, opening Steam means queuing up 100 GB of downloads and a long wait to
actually play games.

The fact that this hasn't been solved yet shows that Valve isn't willing to
invest in fixing it either through new technology or cooperation with
developers, which is really sad.

Optimistically, something you're describing for Parsec would be possible, but
maybe it isn't realistic.

~~~
xirdstl
I don't think this is correct. I use Steam and have a lot of games installed.
When it does updates, they are not the size of the original downloads.
Usually, much, much smaller.

~~~
kbenson
Same here. I think what's being seen is that some things are easier to diff
and update than others. If a game has a large file for map data that's indexed
into, and update to any portions of it are delivered the most easily (where
easily includes _reliably_ ) by updating the whole file. If that file is 2GB,
then you have a 2GB download. If a game has lots of relatively little files,
you could update multiple maps with a few tens of megabytes of downloads.

An actual patch utility that goes in and applies binary diffs would be much
more economical in terms of bandwidth, but then that complicates Steam's
ability to confirm a game is in a good state with file checksums, and is much
more likely to have odd errors as a diff somehow correctly applies to a file
with an incorrect starting starting state.

------
fooker
I am a beta tester for project stream, and it amazes me how well it works if
you have a reliable internet connection.

I would absolutely pay for this service, for the convenience of being able to
play AAA games from portable devices without strong GPUs.

I suspect that a new generation of game development tools will make future
games cheaper to deploy as well.

~~~
Ajedi32
It could work for some games, but in my experience the latency has been pretty
noticeable; and Assassin's Creed isn't a very latency-sensitive game.

I think any kind of shooter, platformer, or fighter game would be nearly
unplayable, at least on my internet connection. For RPG-type games like
Assassin's Creed though it does have potential.

~~~
fooker
For shooters, etc, you just have to ensure the server is running on the same
data center as the streamer.

~~~
Ajedi32
There's a big difference between network latency and input lag. Taking 100 ms
for the server to register a hit on an opponent is annoying, but acceptable.
Taking 100ms for the game to notice me moving my mouse to the left and shift
my view is not.

~~~
fooker
Ok, so input lag will be 2*your ping. An input lag <40ms is barely perceivable
and 40-80 is playable.

So, you'll need a ~20 ping, which is reasonable for a fast connection.

~~~
Ajedi32
Input lag is actually equal to your ping. Ping measures round-trip time.

I don't know what my input lag was during gameplay, but it was certainly
enough to be noticeable.

------
IMayoDixper
Google has properly opened the path for games streaming to the web browser.
Being into the Cloud Gaming industry since 2012 we found this path was getting
good enough and decided to start building a cooperative game streaming
platform at Dixper. We have now it up and running at
[https://dixper.gg](https://dixper.gg) and we are seriously building not only
streaming tech but great comunity and optimizing how games use your hardware
resources to enable smooth gaming. Great news for all the industry!

------
fneves
Parsec mucho love <3

------
anontechworker
It would be amazing to see something like this on the switch. Play any game
portably? I’m in.

~~~
ClassyJacket
Resident Evil 7 and Assassin's Creed Odyssey are already streamed on the
Switch.

------
laythea
Great! Youtube style image compression here we come! :)

------
z3t4
With 9 employees and a seemingly free service, what is the business model !?
The tech seem really awesome.

------
EgyptianMusk
Looks great. Can't wait to try it out.

