I have neither an Azure or AWS account, and am trying to perform pixel streaming through my personal machine to the outside world.
I understand your examples don’t cater for this, however, would you happen too know where I could find further information on achieving this method, please?
On board my PC is a half decent graphics card and I would like to be able to connect devices to use the pixel streaming service.
Well done to yourself for getting this to work on cloud based servers, impressive stuff.
You would need to contact your ISP (your home internet provider) and ask if they allow this. My provider, Comcast, does not allow personal web servers to run off their network. Among other issues are Bandwidth and network consumption.
Have you tried ngrok or another hole punching service? Also, if you are trying to just do demos and thing you can consider appstream 2.0 from aws.
I’ll give them a bell tomorrow, Colin, thank you, to discuss with them.
I thought the idea of pixel streaming was to use the graphics capabilities of the host machine, which is why I’m trying to use mine.
I really don’t know what you mean by hole punching service?
Ok, AWS, is Amazon Web Service, this means that the zipped packaged project gets uploaded to one of their servers as per your AWS example in your blog, therefore, this must mean that you’re then relying on the graphics hardware provided by the appstream 2.0 service. Am I right in saying this.
Please excuse my ignorance here, thing I need all the luck I can get in this arena.
You are only right in that AWS stands for amazon web services. The blog has not covered appstream 2.0 yet so and I should not have included that in these posts by the looks of it.
I would say this to you. The amount of time to create an account on aws, upload ue4 app, and follow the blog, will be less then the headache you’re going through to do all of this through your ISP. One of the biggest considerations you need to make is how far you are streaming. Meaning, if you are streaming 1000 miles away, then the user on the other end will encounter latency, laggy video feed, and low fps. In theory, aws solves that issue by allowing you to pick which zone to deploy you vm in giving your receiver the best experience. My intentions with the blog was to simply show a visual representation of what all the UE4 documentation was saying because nobody else would take the time to help people out.
Thank you for the reply and for confirming what AWS stands for.
In relation to “I thought the idea of pixel streaming was to use the graphics capabilities of the host machine, which is why I’m trying to use mine.”, is this not correct too?!
Seems AWS has varying levels at what graphical hardware is used to deliver the PS service. Again, this points me back to wanting to use my own machine to deliver the service.
I got to the point where my friend connected to me across the internet via the player.htm page, on hitting the play button, the server would not connect. He could access the menu and managed to kick an instance of the app on my localhost.
I have now got a free developer account with xirsys.com, they provide STUN/TURN server access.
After looking through Epic’s documentation, they gear this round AWS connectivity, however. it would be nice to know how to set this stuff up with alternate suppliers.
I know you think my approach is a headache, however, if my method eventually works, it means other developers out there can use the PS service with the best possible results and manage this with a low budget too. This means it frees them up to develop UE4 applications and not get lost in the mechanics of a service that should work just out of the box (within reason).
I appreciate all the help you have provided on this topic, however, if you could assist further, I’d really appreciate it, thank you.
Thanks so much for the demo! We finally got our site working on Azure after restoring the original config.json (the one that Epic says to edit) and putting our server details in the AWS Powershell script.
We want to have many people able to view a single instance of the game. I had thought that the TURN server is supposed to re-broadcast the stream to handle multiple connections, but we always end up with very blocky images and strange compression glitches when we get more than a few clients on our server – even when we’re only running the included TURN server on Azure.
Has anybody had success with multiple connections to the same game? We’re having a very hard time telling whether the TURN server is doing its job: we’re getting around routers, but we don’t see any other signs that the server is doing anything. I thought that with TURN, the game will send one stream at the rate specified and the TURN server will re-broadcast that same stream to as many clients as it can…?
I’m stuck in the same situation as the OP. I have an “invalid json” error from my config.json and I can’t fix it. I’ve read every post in this thread, but there’s no specific solution given. This is how my config.json looks:
finally was able to make pixel streaming work from my laptop behind nat. but i had to use aws free tier to do the media rely. that mean still i have to pay aws. although from now on i dont need expensive GPU vps system as my personal laptop has a powerful gpu and its serving 3 client at same time very good.
so my next target is to get a normal windows VPS with lowest cost.
can anybody suggest any windows vps ?
in my case 2 or 3 times i was able to pass ““WebRTC connected, waiting for video”” pasrt and was dropped into my level for 3/4 second.
i guess for being a free service the numb.viagenie.ca dont allow heavy media relay consistently.
so it drops 90% of the media data.
and most of the time it stucks into ““WebRTC connected, waiting for video”” .
do anybody have any free turn server URL?|
i am trying to creat a own serveless solution for pixel streaming.
all i want is to run the app in my laptop and client will access it regardless if i am behind NAT or not.
so far its works good except a reliable relay server.
so looing for a good cheap VPS where i can host my own turn server.
u will need a media server. which will broacdcast same video stream to all connected user.
do googling about webrtc media sever .
i am following that plan. we have 10 computer with powerful gpu in our office behind NAT.
we are using those GPU’s unused power to server to user who want to test out app in pixel straming.
so far it worked like a dream.
and video qulaity is super as each intance is using single powerul gpu.
and the user who using the computer have no idea that his computer also serving as a GPU cloud for pixel straming