"RemoteFX"

xrdp is a old project. Its website is "WEB 1.0 Ready", but don't pay attention, xrdp is still maintened and new features are coming. If you look on Github's Repository, the project is active. One interesting feature added recently, appart the RDP driver for Xorg, is the support for RemoteFX Codec:

RemoteFX covers three part: vGPU, USB redirection, and a codec to stream videos (RDP 7.1). RemoteFX Codec is the feature available now in xrdp

The library itself to use is librfxcodec and you need to compile xrdp with the option --enable-rfxcodec

Installation

Note: don't use packages version of xrdp, it's probably 0.6, and is very old. Prefer using source. There is still no tarballs available for xrdp, but get sources from github, it's currently stable.

#!bin/bash

# Get packages
apt-get install libx11-dev libxfixes-dev libssl-dev libpam0g-dev libtool libjpeg-dev flex bison gettext autoconf libxml-parser-perl libfuse-dev xsltproc libxrandr-dev  python-libxml2 nasm xserver-xorg-dev fuse

#clone repo
git clone https://github.com/neutrinolabs/xrdp.git
git submodule init
git submodule update

#lib  RFXcodec
cd librfxcodec
make
cd ..

#rdp module for xorg
cd xorgxrdp/
./bootstrap 
./configure 
make
sudo make install
cd ..

#xrdp itself
./bootstrap
./configure --enable-fuse  --enable-rfxcodec --enable-fuse --enable-jpeg
make
sudo make install

#generate keys:
sudo xrdp-keygen  xrdp auto 2048
service xrdp start

Usage

You'll need a RDP client capable to support remoteFX RDP 7.1. : Windows7 native client, xfreerdp, or Microsoft Remote Desktop on mac (based on freerdp)

xfreerdp /rfx /v:remote-server.local

At login, choose Session Manager in the combo box to use Xorg + RDP module, instead of the old X11rdp binary

To see the difference with "RemoteFX", play a video from youtube in your browser in the remote session. Even on a slow link, you'll be able to watch the video without lag!