Release Gamestreamer(VirtualGL)


lukey

Rare Species
Joined
Jun 17, 2015
Messages
504
Location
Germany
Here is the Port of VirtualGL, a Application Streaming solution, that produces great results on the OpenPandora. I've written an GUI for the Command-Line Tools where you can create Profiles and quickly start them.
Here an example with Half Life 2(without using the GUI):
You can safely skip to 4:30

Tutorial


And because the Video was so bad here (almost) everything in Text form:

1. On the PC you'll have to install VirtualGL from the download Link above and "openssh-server" from your Package Manager(or if you can't find it on your Linux Distro search for "sshd" in your Package Manager). Also useful is "xfce4-appfinder".

2. On the Pandora click on "New Profile", then on "Profile name". Here you can enter anything you want but if the Name is the same as the Name of a Profile that already exists it will be overwritten. Also spaces will be eliminated.

3. On "User@Host" you enter PC-Username@PC-Ip-address (its like email).

4. On "Command to Execute", enter the Command you want to execute under VirtualGL. Often Command for a Programm is the same as the Package Name( "blender" or "steam") but if that fails you can get the Command by right-clicking on the application(you want to execute) then "Options"(or something like that) and then there has to be a field "Command" and that is what you want to enter here. For most Steam Games the Games are in .steam/steam/steamapps/common/ .You need to mark spaces in Paths with an "\"(So "Half Life 2" => "Half\ Life\ 2" or ".steam/steam/steamapps/common/Half-Life 2/hl2.sh" => ".steam/steam/steamapps/common/Half-Life\ 2/hl2.sh"). if all this is too Hard for you, just enter "xfce4-appfinder --disable-server" and install the optional package of above.

5. Hint: Lowering the "Max Framerate" will also lower the Latency.

6. Click on "Save" and execute the Profile. On the Window with the red text you'll have to enter the Password of your PC. If there is something like "(yes/no):" on the Window you will have to enter "yes", wait and then enter your Password.

If you still have Problems feel free to ask here or leave a Comment on the repo.

Blender over internal WiFi
Again, you can safely skip to 1:50

 
Last edited:
Hmm, you really shouldn't have been able to post here.  This section is just for EvilDragon to post his news regarding Pandora stuff.
This should have gone into the Software News section.
Not that I want to detract from the coolness of this or anything, it is very cool, thank you :)
But still, this section used to only allow EvilDragon to post into. I'm assuming the upgrade to the forum software mucked up the permissions.
 
Hmm, you really shouldn't have been able to post here.  This section is just for EvilDragon to post his news regarding Pandora stuff.
This should have gone into the Software News section.
Not that I want to detract from the coolness of this or anything, it is very cool, thank you :)
But still, this section used to only allow EvilDragon to post into. I'm assuming the upgrade to the forum software mucked up the permissions.

Odd he could post there... Moved to Pandora General Talk.
 
I don't have a good enough GPU installed anywhere at present to test this out, but it seems very cool stuff.

Out of interest, does it negotiate a target display resolution, and only send through graphics at that scale, or does it render locally to full resolution (assuming a full-screen display) and then scale that down before/after sending?
 
Oh Sorry I must have mixed up "Software News" and "Pandora News" somehow :unsure: . Thanks for moving it to the right Place.

 
 
Last edited by a moderator:
Thanks for the tutorial but you should really add it to the PND, not just the thread here. 

By the way installing open-ssl server is sufficient ? There is no need to generate some ssh key pairs or anything to make it work after with the Pandora ?
 
Thanks for the tutorial but you should really add it to the PND, not just the thread here. 

By the way installing open-ssl server is sufficient ? There is no need to generate some ssh key pairs or anything to make it work after with the Pandora ?

The package installer should do that for you(it worked out of the Box for me). Maybe you need to reboot the PC.
 
By default, installs of openssh-server/sshd tend to be configured for username/password logging in.  It's also possible to disable that mode of login, and force the user to generate a public/private keypair.  The user then installs the public key somehow on the server.  The user actually enters the password of the private key, rather than the password of the user account to log in.

It means only an encrypted secret message is sent across the wires, rather than the plaintext username and password.  If you're not on a private network, or are worried about hacked machines on your private network, it's worth doing.  But AFAIK it can't be enabled by default, since you need to generate the keypair and install parts of it on both machines before it'll work.

Last time I checked, SuperZaxxon didn't have the packages needed to let you generate your own keypair locally, so you'll need to generate them somewhere else and install the private key, before carefully scrubbing any copies of it you needed to make to transfer it to your pandora.
 
From the other thread in General Talk forum:

Almost every game, that uses OpenGL and runs on X11 and Windows Games over Wine should work, but I haven't tested Wine yet. For Audio: If there is a way to Grab the Audio Stream of an Application i could pipe that to ffmpeg or avconv then stream that over the Network using netcat and finally pipe that to mplayer on the Pandora.

What I do is to configure ALSA to dump audio to file on my Linux PC (~/.asoundrc):

pcm.!default {
    type plug
    slave {
        pcm rate44100Hz
    }
}
pcm.rate44100Hz {
    type rate
    slave {
        pcm writeFile
        format S16_LE
        rate 44100
    }
}
pcm.writeFile {
    type file
    slave {
        pcm card0
    }
    file "/tmp/audiofifo" # Dump to audio file
    format "raw"
}
pcm.card0 {
    type hw
    card 0
}

Then create a fifo where ALSA is dumping the audio (remove it first in case some audio was already dumped and file created):

rm /tmp/audiofifo

mkfifo /tmp/audiofifo

Then cat the fifo and send the audio to Pandora, repeatedly:

while [ 1 ]; do cat audiofifo; done | ssh pandora-usb aplay -B 50000 -c 2 -f S16_LE -r 44100 - &

Once that is done I can play audio on my PC and it comes out of Pandora. ^_^ Downsides are a slight lag introduced due to buffering that I can't get rid of and programs that play audio hanging on PC if there's nothing draining the fifo file (when no longer cat'ing the fifo).
 
Last edited by a moderator:
Thank you, Yoyobase!
Update: Added Sound support(but there is no syncing between audio and Video yet)
 
I was trying this just now and it wasn't working for me.

I looked into the PND's scripts and noticed that the line that is supposed to execute the command on the PC was an "echo" command instead of "ssh". So I changed that to make it work.

Also had some issues with virtualGL and Wine. I installed 64-bit VirtualGL but Wine is 32-bit, so the 32-bit VirtualGL libs were missing and got some messages about LD_PRELOADs being ignored. Installing 32-bit VirtualGL solves it.

Tried it with Pandora's Wifi but it's very slow. Specially on screen which scroll, jpg just doesn't like screen-wide movement well. -_- I guess with ethernet connection it should work much better, but that kinda defeats the point of playing on Pandora. ;)
 
Back
Top