# FreeRDP ## Docs - [CLIPRDR — Clipboard Redirection](https://mintlify.wiki/freerdp/freerdp/api/channels/cliprdr.md): API reference for the FreeRDP clipboard virtual channel (CLIPRDR), covering client and server contexts, format negotiation, and data transfer callbacks. - [Drive Redirection (RDPDR)](https://mintlify.wiki/freerdp/freerdp/api/channels/drive.md): API reference for the FreeRDP drive/file-system redirection channel (RDPDR), covering RdpdrServerContext, drive APIs, client-side device registration, and mounting options. - [RDPGFX — Graphics Pipeline](https://mintlify.wiki/freerdp/freerdp/api/channels/rdpgfx.md): API reference for the RDP Graphics Pipeline Extension (MS-RDPEGFX) channel, covering RdpgfxClientContext, surface management, codec support, and H.264/AVC integration. - [RDPSND — Audio Output](https://mintlify.wiki/freerdp/freerdp/api/channels/rdpsnd.md): API reference for the FreeRDP audio output virtual channel (RDPSND / MS-RDPEA), covering server and client contexts, format negotiation, and audio data flow. - [Smartcard Redirection](https://mintlify.wiki/freerdp/freerdp/api/channels/smartcard.md): API reference for FreeRDP smartcard (PCSC) redirection via the RDPDR channel, covering build requirements, activation, and the SMARTCARD_DEVICE structure. - [Client Context](https://mintlify.wiki/freerdp/freerdp/api/client-context.md): The rdpContext and rdpClientContext structures — lifecycle, key fields, and the context extension pattern for adding custom data. - [Codec APIs](https://mintlify.wiki/freerdp/freerdp/api/codecs.md): API reference for FreeRDP codec contexts — RemoteFX (rfx), NSCodec (nsc), H.264 (h264), bitmap compression, and the rdpCodecs aggregate. - [Connection](https://mintlify.wiki/freerdp/freerdp/api/connection.md): Connection lifecycle API — connect, event loop, disconnect, error handling, and reconnect. - [Cryptography Utilities](https://mintlify.wiki/freerdp/freerdp/api/crypto.md): API reference for FreeRDP crypto helpers — certificate loading/inspection, private key management, and related utilities. - [FreeRDP Instance](https://mintlify.wiki/freerdp/freerdp/api/freerdp-instance.md): The freerdp (rdp_freerdp) instance — creation, callbacks, certificate verification flags, and a minimal usage example. - [Server Listener](https://mintlify.wiki/freerdp/freerdp/api/listener.md): API reference for freerdp_listener — the TCP listener that accepts incoming RDP client connections and creates freerdp_peer instances. - [Primitives](https://mintlify.wiki/freerdp/freerdp/api/primitives.md): API reference for the FreeRDP primitives layer — SIMD-optimized pixel operations including copy, set, alpha compositing, color conversion, and arithmetic. - [Server Peer](https://mintlify.wiki/freerdp/freerdp/api/server-peer.md): API reference for the FreeRDP server-side peer (freerdp_peer), covering lifecycle, event loop, callbacks, update sending, and virtual channels. - [Settings](https://mintlify.wiki/freerdp/freerdp/api/settings.md): The rdpSettings API — creating, copying, and accessing typed settings keys that control every aspect of an RDP connection. - [Building for Android](https://mintlify.wiki/freerdp/freerdp/building/android.md): Build the FreeRDP Android app from source using the NDK build script and Android Studio. - [Building for iOS](https://mintlify.wiki/freerdp/freerdp/building/ios.md): Build FreeRDP for iOS devices and the simulator using Xcode and the CMake iOS toolchain. - [Building on Linux](https://mintlify.wiki/freerdp/freerdp/building/linux.md): Step-by-step instructions for building FreeRDP from source on Ubuntu/Debian and Fedora using CMake and Ninja. - [Building on macOS](https://mintlify.wiki/freerdp/freerdp/building/macos.md): Build FreeRDP from source on macOS using Homebrew for dependencies and CMake with Ninja. - [Building from source](https://mintlify.wiki/freerdp/freerdp/building/overview.md): Overview of the FreeRDP CMake-based build system, key flags, dependencies, and build types. - [Building on Windows](https://mintlify.wiki/freerdp/freerdp/building/windows.md): Build FreeRDP on Windows using MSVC with CMake and Ninja, or cross-compile with LLVM-MinGW on Linux. - [Android Client](https://mintlify.wiki/freerdp/freerdp/clients/android.md): aFreeRDP is the official FreeRDP Android application. It provides a touch-optimised graphical interface for managing and connecting to RDP hosts. - [macOS Client](https://mintlify.wiki/freerdp/freerdp/clients/mac.md): MacFreeRDP is the native Cocoa RDP client for macOS. It provides a graphical connection manager alongside the full FreeRDP option set. - [Client Applications](https://mintlify.wiki/freerdp/freerdp/clients/overview.md): FreeRDP ships several client applications targeting different platforms and display systems. Choose the one that matches your environment. - [sdl-freerdp](https://mintlify.wiki/freerdp/freerdp/clients/sdl.md): The SDL2/SDL3 cross-platform FreeRDP client. Runs on Linux (X11 and Wayland), macOS, and Windows with graphical credential and certificate dialogs. - [wlfreerdp](https://mintlify.wiki/freerdp/freerdp/clients/wayland.md): The wlfreerdp Wayland-native RDP client. Built on libuwac, it runs directly on a Wayland compositor without requiring XWayland. - [xfreerdp](https://mintlify.wiki/freerdp/freerdp/clients/xfreerdp.md): The xfreerdp X11 command-line client for Linux. Full option reference with connection, display, security, device-redirection, and performance flags. - [Architecture](https://mintlify.wiki/freerdp/freerdp/concepts/architecture.md): High-level overview of FreeRDP's major components, connection lifecycle, and how client frontends build on top of libfreerdp. - [Virtual Channels](https://mintlify.wiki/freerdp/freerdp/concepts/channels.md): Static and dynamic virtual channel architecture, the plugin loading mechanism, and a guide to every built-in channel. - [Codecs](https://mintlify.wiki/freerdp/freerdp/concepts/codecs.md): Graphics codec architecture in FreeRDP — the GFX pipeline, H.264/AVC, RemoteFX, NSCodec, progressive codec, and bitmap compression. - [Security](https://mintlify.wiki/freerdp/freerdp/concepts/security.md): Transport security, authentication protocols, smartcard logon, certificate verification, and security flags in FreeRDP. - [Settings](https://mintlify.wiki/freerdp/freerdp/concepts/settings.md): How the rdpSettings system works, the three settings instances, the typed accessor API, and key setting keys. - [Audio](https://mintlify.wiki/freerdp/freerdp/guides/audio.md): Configure sound output and microphone input redirection in FreeRDP, including codecs and audio backends. - [Certificates](https://mintlify.wiki/freerdp/freerdp/guides/certificates.md): Understand TLS certificate verification in FreeRDP, manage known hosts, and generate test certificates. - [High DPI and scaling](https://mintlify.wiki/freerdp/freerdp/guides/high-dpi.md): Configure display scaling, dynamic resolution, smart-sizing, and multi-monitor support in FreeRDP. - [Logging](https://mintlify.wiki/freerdp/freerdp/guides/logging.md): Configure WLog, the hierarchical logging system used throughout FreeRDP and WinPR. - [Smartcard](https://mintlify.wiki/freerdp/freerdp/guides/smartcard.md): Configure smartcard redirection and NLA smartcard logon with FreeRDP. - [Installation](https://mintlify.wiki/freerdp/freerdp/installation.md): Install FreeRDP on Linux, macOS, Windows, Android, or iOS using pre-built packages. - [Introduction](https://mintlify.wiki/freerdp/freerdp/introduction.md): FreeRDP is a free, open-source implementation of the Remote Desktop Protocol (RDP), providing both ready-to-use client applications and an embeddable C library. - [Quickstart](https://mintlify.wiki/freerdp/freerdp/quickstart.md): Connect to a remote Windows desktop in minutes using xfreerdp or sdl-freerdp. - [Server & proxy overview](https://mintlify.wiki/freerdp/freerdp/server/overview.md): An introduction to FreeRDP's three server-side modes: the sample server, shadow server, and RDP proxy. - [Peer API](https://mintlify.wiki/freerdp/freerdp/server/peer-api.md): Build a custom RDP server using freerdp_peer, freerdp_listener, and the update/input callback interfaces. - [RDP proxy](https://mintlify.wiki/freerdp/freerdp/server/proxy.md): Intercept RDP traffic between a client and server using the FreeRDP proxy, its INI configuration, and the module plugin API. - [Shadow server](https://mintlify.wiki/freerdp/freerdp/server/shadow.md): Share the host's screen over RDP using the FreeRDP shadow server and its subsystem plugin interface. - [WinPR Overview](https://mintlify.wiki/freerdp/freerdp/winpr/overview.md): WinPR (Windows Portable Runtime) is a Win32 API compatibility layer that lets FreeRDP and related projects use familiar Windows APIs on Linux, macOS, Android, and other non-Windows platforms. - [WLog](https://mintlify.wiki/freerdp/freerdp/winpr/wlog.md): WLog is WinPR's hierarchical, configurable logging framework. It supports multiple appenders, structured log levels, prefix format strings, and runtime filtering — all controllable via environment variables or C API.