Dependencies

Most of these dependencies should be installed automatically when you install official packages.
Unless otherwise stated, the dependencies are all optional.

Core Dependencies

Those are required by almost every component. | Project | Source Download Link | Purpose | Client or Server | Notes | |———|———————-|———|——————|:——| |glib|https://ftp.gnome.org/pub/gnome/sources/glib/|low-level library|both|Required| |gtk|http://ftp.gnome.org/pub/gnome/sources/gtk+/|UI Toolkit|both|Required| |pyopengl|https://pypi.python.org/pypi/PyOpenGL and
https://pypi.python.org/pypi/PyOpenGL-accelerate|client OpenGL accelerated rendering|client| | |pycups|https://pypi.org/project/pycups/|Printing|both| |

Network Layer

See Network | Project | Source Download Link | Purpose | Client or Server | Notes | |———|———————-|———|——————|:——| |rencode|https://pypi.python.org/pypi/rencode/|packet encoding|both |Recommended| |pyyaml|https://pypi.python.org/pypi/PyYAML/|alternative packet encoder|both |optional (usually unused)| |lz4|https://github.com/lz4/lz4/releases|packet compression|both|Recommended| |python-lz4|https://github.com/python-lz4/python-lz4|python wrapper for lz4|both|Recommended| |python-cryptography|https://pypi.python.org/pypi/cryptography|Encryption|both|| |python-zeroconf|https://pypi.org/project/zeroconf/|Multicast DNS session publishing|server|| |python-netifaces|https://pypi.python.org/pypi/netifaces|Multicast DNS session publishing|server|| |dbus-python|https://dbus.freedesktop.org/releases/dbus-python/|desktop integration, server control interface|both|not applicable to MS Windows or Mac OSX| |openssl|https://www.openssl.org/source/|SSL|both|| |paramiko|https://pypi.org/project/paramiko/|ssh integration|both|| |sshpass|https://sourceforge.net/projects/sshpass/files/sshpass/|non-interactive SSH password authentication|usually client|| |brotli|https://github.com/google/brotli/releases|HTML client compression|r15540 |

Authentication

See authentication modules | Project | Source Download Link | Purpose | Client or Server | Notes | |———|———————-|———|——————|:——| |python-gssapi|https://pypi.org/project/gssapi/|GSSAPI|server|#1691| |python-kerberos|https://pypi.org/project/kerberos/|Kerberos|server|#1691| |python-ldap|https://pypi.org/project/python-ldap/|LDAP|server|#1691| |python-ldap3|https://pypi.org/project/ldap3/|LDAP v3|server|#1691| |pyu2f|https://pypi.org/project/pyu2f/|U2F|server|#1789|

Python modules

Project Source Download Link Notes
python-ipaddress https://pypi.org/project/ipaddress/ unspecified: r11859
python-idna https://pypi.org/project/idna/ unspecified: r11860
python-decorator https://pypi.org/project/decorator/ required by gssapi: r18781
pytest-runner https://pypi.org/project/pytest-runner/ required by python-lz4: r17864
python-deprecation https://pypi.org/project/deprecation/ required by python-lz4: r17749
python-pkgconfig https://pypi.org/project/pkgconfig/ required by python-lz4: r17748
python-setuptools-scm https://pypi.org/project/setuptools-scm/ required by python-lz4: r15282
nose https://pypi.org/project/nose/ required by python-lz4: r8676
pyasn1 https://pypi.org/project/pyasn1/ unspecified: r5829
asn1crypto https://pypi.org/project/asn1crypto/ required by python-cryptography: r17856
python-packaging https://pypi.org/project/packaging/ required by python-cryptography: r15310
pyparsing https://pypi.org/project/pyparsing/ required by python-cryptography: r15310
cffi https://pypi.org/project/cffi/ required by python-cryptography: r11633
six https://pypi.org/project/six/ required by python-cryptography: r11640
enum-compat https://pypi.org/project/enum-compat/ required by zeroconf: r20441
enum34 https://pypi.org/project/enum34/ required by enum-compat: r15397
setuptools https://pypi.org/project/setuptools/ unspecified: r5829
pycparser https://pypi.org/project/pycparser/ required by cffi: r11634
pynacl https://pypi.org/project/PyNaCl/ crypto library used by paramiko: r19967
bcrypt https://pypi.org/project/bcrypt/ crypto library used by paramiko: r19965

Encodings

See picture encodings | Project | Source Download Link | Purpose | Client or Server | |———|———————-|———|——————| |x264|ftp://ftp.videolan.org/pub/x264/snapshots/|h264 encoding|server| |ffmpeg|http://ffmpeg.org/releases/|h264, h265, vp8 and vp9 decoding|client| |vpx|http://downloads.webmproject.org/releases/webm/index.html|vp8 and vp9 codec|both| |webp|http://downloads.webmproject.org/releases/webp/index.html|webp codec|both| |libpng|ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/|png encoding|both| |libjpeg-turbo|https://sourceforge.net/projects/libjpeg-turbo/files/|jpeg encoding|both| |python-pillow|https://pypi.python.org/pypi/Pillow|png,jpeg,webp encoding and decoding, format conversion - Required|both| |opencv|https://opencv.org/releases/|Webcam capture]|client| |libyuv|https://chromium.googlesource.com/libyuv/libyuv/|Colourspace Conversion|both| |pycuda|https://pypi.python.org/pypi/pycuda|NVENC|server| |cuda|https://developer.nvidia.com/cuda-toolkit|NVENC|server| |pyNVML|https://pypi.python.org/pypi/nvidia-ml-py/|NVENC|server|

Audio

See audio forwarding | Project | Source Download Link | Purpose | |———|———————-|———| |gstreamer|http://gstreamer.freedesktop.org/src/|audio framework| |Ogg|http://downloads.xiph.org/releases/ogg/|ogg container format| |opus|http://downloads.xiph.org/releases/opus/|opus codec| |Flac|http://downloads.xiph.org/releases/flac/|flac codec| |Speex|http://downloads.xiph.org/releases/speex/|speex codec| |Vorbis|http://downloads.xiph.org/releases/vorbis/|vorbis codec| |wavpack|http://www.wavpack.com/downloads.html|wavpack codec| |faac|http://faac.sourceforge.net/|aac encoder| |faad|http://faac.sourceforge.net/|aac decoder| |lame|http://sourceforge.net/projects/lame/files/lame/|MP3 encoder| |TwoLame|http://sourceforge.net/projects/twolame/files/twolame/|MP3 encoder|