Archive for the ‘ Game Streaming ’ Category

Games streaming to a PSP

I started to stream games to a PSP machine just to see if it will work.

Here is the latest video of it

Battle of Wesnoth Game Streaming to PSP

What it can do:

1) Stream and play 3D games to a mobile device PSP\Mobile Phone, using a Virtual Network Computing (VNC) client installed in it,

This is not a screen capture applications were the mobile device merely acts like a second screen or a remote control to the PC. In fact, it does not render the image on the server screen at all. Someone maybe doing something else on the server like surfing, doing word/excel spread sheet or even watching movies while the server is streaming the game to a mobile device.

2) Allows multiple session

Allows several PCs and mobile devices to play games independently at the same time which is a feature that a screen scraper cannot do. Screen scraper applications can only create one session.

3) Makes use of the server GPU and processor to stream 3D games to multiple devices at the same time. 3D images are rendered and buffered to the GPU, not the server screen. It is then converted to 2D images and streamed to the mobile device. Current streaming sessions are not rendered on the server machine but you may view the session if you wish. Mouse and keyboard events are transmitted to the server by VNC which eventually triggers a change in the image being rendered and streamed.

Game Streaming

Game streaming is much like video streaming but the difference is that the mouse and keyboard events can be captured by the server that triggers the image to change. the idea behind game steaming is to render 3D images to a pbuffer in the GPU memory, convert it to 2D object and stream the same to a client much like streaming video using VLC.

A lot of companies are doing this kind of project. Streammygame is one of the and the other is Onlive. I sort of got interested in the subject so I decided to search for possible ways of doing it. A DYI if you will. So I came across several sights dealing with the same subject matter, I compiled several forum discussions on how to implement it on a LAN environment. Right now I still don’t believe that it will work over the Internet. Too much variables to consider. So I decided to do it on a LAN environment instead.

Much of the work I have done on game streaming can be found here. The more essential part of that forum is how to install it so here goes.

  • DEB and RPM files can be found here
  • Install TurboJPEG first
  • Install TurboVNC and finally
  • VirtualGL

TurboVNC and virtualGL needs to be installed on the client machine as well. Soon as that is done start the VNC Server on the host machine. Pull up an terminal window and issue this command

vncserver

If everything is installed correctly, the following reply will be issued

New ‘X’ desktop is ubuntu:1

Starting applications specified in /home/ranch/.vnc/xstartup
Log file is /home/ranch/.vnc/ubuntu:1.log

ranch@ubuntu:~$

This means that an instance of an “X” server is running and is ready to stream a game. Note that you can create several instances (or sessions) to have several clients stream the game and play it independently of the others.

Client Machine

You need to download and install TurboVNC client on you client machine. After doing that, run the TurboVNC viewer. You will need to login to it to connect to the server. Then when the GUI of the host machine appears. open a terminal window and issue this command

vglrun <openglapplication> -opengl

This starts the applciation: