A Simple Qt frontend for switching display inputs with ddcutil.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.4 KiB


A Simple frontend for switching display inputs with ddcutil.



  • Scans displays and all their inputs, allowing you to select which ones to control.
  • Control the inputs of the selected displays from a simple window.
  • Refresh the input state of the selected displays manually (to circumvent desync).
  • Set custom names for displays.
  • Save and load displays to/from file.
  • Automatically load displays from file on application startup with the switch -m, --monitorfile <path to file>


  • Qt5
  • libddcutil


This application can be compiled with the provided shell scripts build_debug.sh or build_release.sh, for debug and release builds respectively.

Using those scripts, the builds are placed in build_debug and build_release based on which script is run.


To add translations for this application:

  1. Edit qddcswitch.pro, and append the new language file to the TRANSLATIONS key, for example:

             locale/qddcswitch_en.ts \
             locale/qddcswitch_en.ts \
             locale/qddcswitch_fi.ts \
  2. Either Run generate_translations.sh (uses lupdate) to generate new .ts file for your language, or simply just copy one existing file, in ./locale

  3. Edit the file either with Qt Linquist, or manually with a text editor.

  4. Recompile the application. The qddcswitch.pro file has instructions to run lrelease-pro to generate and then copy the .qm files to the build folder, so they should work automatically.

Note: The program loads .qm files based on your system locale (env LANGUAGE). So it should load a translation without recompiling the application too.

Last, you can add your credit(s) to res/translators.json if you want to:

        "languageCode": "fi",
        "translators": [ "Okxa" ]
        "languageCode": "de",
        "translators": [ "Dr. Translator", "Another Translator" ]

Known Issues

Issues concerning improper DCC implementation of a display

Issues like a display not reporting the correct capabilites or input values. Might result in incorrect display of input state. Nothing I or ddcutil can fix.