---
name: "DMX"
section: "3"
platform: "linux"
package: "libdmx-dev"
version: "1:1.1.4-2"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://carta.tech/man/DMX"
---

# DMX(3)

X Window System DMX (Distributed Multihead X) extension

## NAME

DMX - X Window System DMX (Distributed Multihead X) extension

## DESCRIPTION

The DMX extension provides support for communication with and control of [**Xdmx**(1)](/man/Xdmx/1.md) server.  Attributes of the [**Xdmx**(1)](/man/Xdmx/1.md) server and of the back-end screens attached to the server can be queried and modified via this protocol.

## SUMMARY OF LIBRARY FUNCTIONS

The following is a summary of DMX library functions:

[DMXQueryExtension(3)](/man/DMXQueryExtension/3.md) - determine if DMX is available

[DMXQueryVersion(3)](/man/DMXQueryVersion/3.md) - determine DMX extension version

[DMXSync(3)](/man/DMXSync/3.md) - flush protocol requests between [**Xdmx**(1)](/man/Xdmx/1.md) and back-end X servers

[DMXForceWindowCreation(3)](/man/DMXForceWindowCreation/3.md) - force immediate back-end window creation

[DMXGetScreenCount(3)](/man/DMXGetScreenCount/3.md) - determine number of back-end screens

[DMXGetScreenAttributes(3)](/man/DMXGetScreenAttributes/3.md) - determine back-end screen attributes

[DMXChangeScreensAttributes(3)](/man/DMXChangeScreensAttributes/3.md) - change back-end screen attributes

[DMXAddScreen(3)](/man/DMXAddScreen/3.md) - attach a new back-end screen

[DMXRemoveScreen(3)](/man/DMXRemoveScreen/3.md) - detach a back-end screen

[DMXGetWindowAttributes(3)](/man/DMXGetWindowAttributes/3.md) - determine back-end window attributes

[DMXGetDesktopAttributes(3)](/man/DMXGetDesktopAttributes/3.md) - determine global bounding box

[DMXChangeDesktopAttributes(3)](/man/DMXChangeDesktopAttributes/3.md) - change global bounding box

[DMXGetInputCount(3)](/man/DMXGetInputCount/3.md) - determine number of input devices

[DMXGetInputAttributes(3)](/man/DMXGetInputAttributes/3.md) - determine input device attributes

[DMXAddInput(3)](/man/DMXAddInput/3.md) - attach a new backend or console input

[DMXRemoveInput(3)](/man/DMXRemoveInput/3.md) - detach an input

DMXAddBackendInput(3) - attach a new back-end input

DMXAddConsoleInput(3) - attach a new console input

Each of these functions is described in its own man page.

## SEE ALSO

[**Xdmx**(1)](/man/Xdmx/1.md), [**xdmxconfig**(1)](/man/xdmxconfig/1.md), [**vdltodmx**(1)](/man/vdltodmx/1.md)
