Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/neutrinolabs/pulseaudio-module-xrdp.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormatt335672 <30179339+matt335672@users.noreply.github.com>2021-11-09 13:52:09 +0300
committerGitHub <noreply@github.com>2021-11-09 13:52:09 +0300
commitfc9fc663b90793b5a889c931e72b8579b656a39a (patch)
tree5864416f1fb83af0dc5542e680e7c92c64b1778c
parent6ac122ac48bb4c5aa367422737e99661d891de93 (diff)
parent9611bbf50baf256cc755b6b815c02a2c95112574 (diff)
Merge pull request #67 from matt335672/update_readme
Update README.md
-rw-r--r--README.md169
1 files changed, 39 insertions, 130 deletions
diff --git a/README.md b/README.md
index d6611a4..23a92d6 100644
--- a/README.md
+++ b/README.md
@@ -1,9 +1,5 @@
-[![Build Status](https://travis-ci.org/neutrinolabs/pulseaudio-module-xrdp.svg?branch=devel)](https://travis-ci.org/neutrinolabs/pulseaudio-module-xrdp)
-
-The latest version of this document can be found at wiki.
-
-* https://github.com/neutrinolabs/pulseaudio-module-xrdp/wiki/README
-
+[![Build Status](https://github.com/neutrinolabs/pulseaudio-module-xrdp/actions/workflows/build.yml/badge.svg)](https://github.com/neutrinolabs/pulseaudio-module-xrdp/actions)
+[![Gitter (xrdp)](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/neutrinolabs/xrdp-questions)
# Overview
xrdp implements Audio Output redirection using PulseAudio, which is a sound
@@ -17,144 +13,57 @@ which means it is interoperable with any RDP client which implements it
The client to server audio redirection is implemented as per **Remote Desktop
Protocol: Audio Input Redirection Virtual Channel Extension
-[[MS-RDPEAI]](https://msdn.microsoft.com/en-us/library/dd342521.aspx)
+[[MS-RDPEAI]](https://msdn.microsoft.com/en-us/library/dd342521.aspx)**
which means it is interoperable with any RDP client which implements it
(most of them including: MS RDP clients, FreeRDP).
-Here is how to build pulseaudio modules for your distro, so you can have audio
-support through xrdp.
-
-In this instruction, pulseaudio version is **11.1**. You need to **replace the
-version number in this instruction** if your environment has different
-versions. You can find out your pulseaudio version executing the following
-command:
-
- pulseaudio --version
-
-or
-
- pkg-config --modversion libpulse
-
# How to build
+These modules make use of the internal pulseaudio module API. To build
+them you need access to the pulseaudio sources and configuration.
-## Debian 9 / Ubuntu
-
-This instruction also should be applicable to the Ubuntu family.
-
-### Prerequisites
-
-Some build tools and package development tools are required. Make sure install
-the tools.
-
- apt install build-essential dpkg-dev
-
-### Prepare & build
-
-Install pulseaudio and requisite packages to build pulseaudio.
-
- apt install pulseaudio
- apt build-dep pulseaudio
-
-Fetch the pulseaudio source. You'll see `pulseaudio-11.1` directory in your
-current directory.
-
- apt source pulseaudio
-
-Enter into the directory and build the pulseaudio package.
-
- cd pulseaudio-11.1
- ./configure
-
-Finally, let's build xrdp source / sink modules. You'll have two .so files
-`module-xrdp-sink.so` and `module-xrdp-source.so`.
-
- git clone https://github.com/neutrinolabs/pulseaudio-module-xrdp.git
- cd pulseaudio-module-xrdp
- ./bootstrap && ./configure PULSE_DIR=/path/to/pulseaudio-11.1
- make
-
-## CentOS 7.x (7.5 or later requires this build procedure)
+*Be aware that the pulseaudio application development packages provided
+with many distributions do not contain the files necessary to use the
+pulseaudio module API*. Consequently, the preparation for building these
+modules can be a little more involved than just installing development
+tools and packages.
-### Prerequisites
+Consult the Pulseaudio Wiki for instructions on building the modules
+for your platform:-
-Some build tools and package development tools are required. Make sure install
-the tools.
-
- yum groupinstall "Development Tools"
- yum install rpmdevtools yum-utils
- rpmdev-setuptree
-
-### Prepare & build
-
-Install pulseaudio and requisite packages to build pulseaudio.
-
- yum install pulseaudio pulseaudio-libs pulseaudio-libs-devel
- yum-builddep pulseaudio
-
-Fetch the pulseaudio source and extract. You'll see `~/rpmbuild/BUILD/
-
- yumdownloader --source pulseaudio
- rpm --install pulseaudio*.src.rpm
-
-Build the pulseaudio source. In this phase, pulseaudio is not necessarily needed to be built but
-configured however there's no way to do only configure.
-
- rpmbuild -bb --noclean ~/rpmbuild/SPECS/pulseaudio.spec
-
-Finally, let's build xrdp source / sink modules. You'll have two .so files
-`module-xrdp-sink.so` and `module-xrdp-source.so`.
-
- git clone https://github.com/neutrinolabs/pulseaudio-module-xrdp.git
- cd pulseaudio-module-xrdp
- ./bootstrap && ./configure PULSE_DIR=~/rpmbuild/BUILD/pulseaudio-10.0
- make
-
-## Other distro
-
-First off, find out your pulseaudio version using `pulseaudio --version`
-command. Download the tarball of the pulseaudio version that you have.
-
-* https://freedesktop.org/software/pulseaudio/releases/
-
-After downloading the tarball, extract the tarball and `cd` into the source
-directory, then run `./configure`.
-
- wget https://freedesktop.org/software/pulseaudio/releases/pulseaudio-11.1.tar.xz
- tar xf pulseaudio-11.1.tar.xz
- cd pulseaudio-11.1
- ./configure
-
-If additional packages are required to run `./configure`, install requisite
-packages depending on your environment.
-
-Finally, let's build xrdp source / sink modules. You'll have two .so files
-`module-xrdp-sink.so` and `module-xrdp-source.so`.
-
- git clone https://github.com/neutrinolabs/pulseaudio-module-xrdp.git
- cd pulseaudio-module-xrdp
- ./bootstrap && ./configure PULSE_DIR=/path/to/pulseaudio-11.1
- make
+https://github.com/neutrinolabs/pulseaudio-module-xrdp/wiki
# Install
-
-Just `make install` should install built modules to the correct directory.
-
-You can confirm if the modules properly installed by following command:
+One the modules have been built, `sudo make install` should do the following:-
+- Install the modules to the correct directory
+- Install a script `load_pa_modules.sh` to load the modules when a
+ session is started.
+ On many systems this script is installed by default in
+ /usr/libexec/pulseaudio-module-xrdp/
+- Install a desktop file `pulseaudio-xrdp.desktop` which will call the
+ `load_pa_modules.sh` script when a desktop is loaded.
+ On many systems this script is installed by default in
+ `/etc/xdg/autostart`
+
+Note that the modules will only be loaded automatically when the desktop
+starts if your desktop supports the XDG autostart specification. Most modern
+desktops support this.
+
+You can confirm if the modules are properly installed by following command:
```
-ls $(pkg-config --variable=modlibexecdir libpulse)
+ls $(pkg-config --variable=modlibexecdir libpulse) | grep xrdp
```
-If you can see lots of `module-*.so` and `module-xrdp-sink.so`,
-`module-xrdp-source.so`, PulseAudio modules should be properly built and
-installed.
-
-`module-xrdp-sink.so` and `module-xrdp-source.so` may be installed to the
-target directory, these files are not necessary and you can remove them safely.
+If you can see `module-xrdp-sink.so` and `module-xrdp-source.so`,
+PulseAudio modules are properly built and installed.
Enjoy!
# See if it works
+The easiest way to test this is to use the `paplay` command to play an
+audio file.
+
+You can also do the following:-
+- run `pavumeter` in the xrdp session-
+- Playback any YouTube video in Firefox.
-To see if it works, run `pavumeter` in the xrdp session. Playback any YouTube
-video in Firefox. You'll see "Showing signal levels of **xrdp sink**" and
-volume meter moving.
+You'll see "Showing signal levels of **xrdp sink**" and volume meter moving.