Skip to content

LizardByte/libdisplaydevice

Folders and files

NameName
Last commit message
Last commit date
Mar 17, 2025
Dec 17, 2024
Aug 5, 2024
Jan 20, 2025
Mar 14, 2025
Feb 1, 2025
Jan 21, 2025
Jan 20, 2025
Aug 5, 2024
Aug 5, 2024
Mar 17, 2025
Aug 29, 2024
Aug 7, 2024
Aug 5, 2024
Aug 7, 2024
Oct 13, 2024
Aug 5, 2024
Jan 15, 2025
May 7, 2024

Overview

GitHub Workflow Status (CI) Codecov GitHub stars

About

LizardByte has the full documentation hosted on Read the Docs.

libdisplaydevice is a WIP library that provides a common interface for interacting with display devices. It is intended to be used by applications that need to interact with displays, such as screen capture software, remote desktop software, and video players.

Initial support is planned for Windows, but could be expanded to other platforms in the future.

Build

Clone

Ensure git is installed and run the following:

git clone https://github.com/lizardbyte/libdisplaydevice.git --recurse-submodules
cd libdisplaydevice
mkdir -p build

Windows

Requirements

First you need to install MSYS2, then startup "MSYS2 UCRT64" and execute the following commands.

Update all packages:

pacman -Syu

Install dependencies:

pacman -S \
  doxygen \
  mingw-w64-ucrt-x86_64-binutils \
  mingw-w64-ucrt-x86_64-cmake \
  mingw-w64-ucrt-x86_64-graphviz \
  mingw-w64-ucrt-x86_64-ninja \
  mingw-w64-ucrt-x86_64-toolchain \
  mingw-w64-ucrt-x86_64-boost \
  mingw-w64-ucrt-x86_64-nlohmann-json

Build

cmake -G Ninja -B build -S .
ninja -C build

Test

./build/tests/test_libdisplaydevice

Support

Our support methods are listed in our LizardByte Docs.

[TOC]