Modification de la luminosité de l'écran de l'écran externe


16

J'ai installé Ubuntu 16.04 TS sur mon ordinateur portable et j'ai connecté mon ordinateur portable à un moniteur externe via un câble HDMI. Je peux facilement changer la luminosité de l'écran de l'ordinateur portable, mais cela n'affecte pas la luminosité du moniteur externe. Existe-t-il un moyen de modifier également la luminosité du moniteur externe?

Réponses:


28

C'est très facile à faire via la ligne de commande. Tapez la commande suivante dans le terminal.

xrandr -q | grep " connected"

Vous obtiendrez quelque chose comme ça

LVDS1 connected 1366x768+0+0 (normal left inverted right x axis y axis) 344mm x 194mm

VGA1 connected primary 1366x768+1366+48 (normal left inverted right x axis y axis) 413mm x 234mm

J'utilise un moniteur externe. Si vous souhaitez réduire la luminosité de l'écran externe, tapez simplement

xrandr --output VGA1 --brightness 0.5

8

Le contrôleur de luminosité mentionné précédemment est maintenant la version 2. La version simple d'origine est disponible en utilisant les étapes suivantes avec prise en charge de jusqu'à 4 moniteurs. Testé sans problème sur Ubuntu 14.04

sudo add-apt-repository ppa:apandada1/brightness-controller
sudo apt-get update
sudo apt-get install brightness-controller-simple

Prendre plaisir!


1
Fonctionne très bien sur Ubuntu 18.04. Cela m'a permis d'atténuer plus l'extérieur que possible via les boutons du moniteur.
Garrett

5

J'ai enfin trouvé un package, qui ajuste la luminosité du moniteur externe secondaire, qui est connecté avec HDMI.

Le package est appelé contrôleur de luminosité

Pour l'installer,

sudo apt-get install luminosité-contrôleur

Une fois installé, le principal est le premier écran et le secondaire est le moniteur externe.

entrez la description de l'image ici


1
Votre lien est mort
NaturalBornCamper

non, ce n'est pas le cas
Edoardo

1

La luminosité est une chose matérielle. Vous ne pouvez l'ajuster qu'en utilisant les boutons du moniteur externe et l'interface intégrée.

Vous pouvez le faire sur l'ordinateur portable car ce matériel est câblé en interne sur un bus PCI ou I²C.

Pour "atténuer" votre moniteur externe, vous pouvez utiliser un programme comme f.lux, qui supprimera certaines couleurs (bleues principalement) de la sortie du GPU. Le résultat est que l'image sera moins "agressive" pour vos yeux.

Vous pouvez également essayer de pirater le moniteur, en utilisant une puce PIC ou AVR pour émuler les bonnes touches (ou plus, si vous inversez un peu l'ingénierie) pour le changement de luminosité.


1
Merci pour votre réponse. Après mes recherches, j'ai découvert qu'il existe un packaga de logiciels ddcontrol , qui fait ce que je veux réaliser. Cependant, avec ddcontrol, on ne peut changer la luminosité du moniteur que lorsqu'il est câblé avec I2C (VGA ou DVI). Dans mon cas, je cherche quelque chose de similaire pour le moniteur, qui est câblé avec HDMI.
Ad Infinitum

Merci de m'avoir fait découvrir ddcontrol ! Malheureusement, je pense qu'il n'y a pas de protocole défini sur HDMI pour gérer ce genre de commandes .... EDIT: Mon mauvais, il semble qu'il y en ait un: elinux.org/CEC_(Consumer_Electronics_Control)_over_HDMI
Taz8du29

Consumer Electronics Control est un sujet très intéressant :) Merci de me le faire découvrir :) Je suis toujours à la recherche d'une solution adaptée à mon "problème". Pas de succès mais je pense qu'il y a une solution quelque part.
Ad Infinitum

J'ai trouvé la solution. Veuillez lire ma réponse :)
Ad Infinitum

1

Plutôt que de brancher un niveau de luminosité, xrandrvous pouvez utiliser ce script bash pour augmenter ou diminuer la luminosité par étapes.

Copiez le script bash ci-dessous dans un fichier appelé bright

Puis marquez-le comme exécutable avec chmod a+x bright

Bash Script

#!/bin/bash

MON="DP-1-1"    # Discover monitor name with: xrandr | grep " connected"
STEP=5          # Step Up/Down brightnes by: 5 = ".05", 10 = ".10", etc.

CurrBright=$( xrandr --verbose --current | grep ^"$MON" -A5 | tail -n1 )
CurrBright="${CurrBright##* }"  # Get brightness level with decimal place

Left=${CurrBright%%"."*}        # Extract left of decimal point
Right=${CurrBright#*"."}        # Extract right of decimal point

MathBright="0"
[[ "$Left" != 0 && "$STEP" -lt 10 ]] && STEP=10     # > 1.0, only .1 works
[[ "$Left" != 0 ]] && MathBright="$Left"00          # 1.0 becomes "100"
[[ "${#Right}" -eq 1 ]] && Right="$Right"0          # 0.5 becomes "50"
MathBright=$(( MathBright + Right ))

[[ "$1" == "Up" || "$1" == "+" ]] && MathBright=$(( MathBright + STEP ))
[[ "$1" == "Down" || "$1" == "-" ]] && MathBright=$(( MathBright - STEP ))
[[ "${MathBright:0:1}" == "-" ]] && MathBright=0    # Negative not allowed
[[ "$MathBright" -gt 999  ]] && MathBright=999      # Can't go over 9.99

if [[ "${#MathBright}" -eq 3 ]] ; then
    MathBright="$MathBright"000         # Pad with lots of zeros
    CurrBright="${MathBright:0:1}.${MathBright:1:2}"
else
    MathBright="$MathBright"000         # Pad with lots of zeros
    CurrBright=".${MathBright:0:2}"
fi

xrandr --output "$MON" --brightness "$CurrBright"   # Set new brightness

# Display current brightness
printf "Monitor $MON "
echo $( xrandr --verbose --current | grep ^"$MON" -A5 | tail -n1 )
  • Changez MON="DP-1-1"le nom de votre moniteur, c.-à-d.MON="eDP-1-1"
  • Changez STEP=5votre valeur de pas, par exemple STEP=2est moins perceptible

Appelez le script avec:

  • bright Upou bright +pour augmenter la luminosité par valeur de pas
  • bright Downou bright -pour diminuer la luminosité par valeur de pas
  • bright (sans paramètres) pour obtenir le niveau de luminosité actuel

J'espère que les commandes bash / shell peuvent facilement être googlé pour l'éducation, mais si vous avez des questions n'hésitez pas à demander :)


0

Si vous utilisez Chrome, essayez Firefox. C'est la chose la plus étrange. Ma luminosité est bonne partout ailleurs sur mon écran étendu (films téléchargés, Firefox) mais sur Chrome la luminosité est terne?!


Mêmes problèmes ici. Utilisez-vous nvidia / nouveau par hasard? sur wayland? un conseil: si vous utilisez Chrome sur Wayland sur Nouveau, ne prenez pas de captures d'écran (raccourci ctrl + écran d'impression ou tout ce que vous avez changé, si vous l'avez fait). Ça va gâcher le chrome.
hkoosha

Non, j'utilise un GPU Intel de base. Merci pour l'info.
Raymond Wachaga

0

Solution de contrôle matériel (pas de gradation logicielle)

ddccontrol(note 2 cc) est un outil pour contrôler les paramètres de nombreux moniteurs exactement de la même manière que leurs boutons d'affichage / matériel à l'écran les contrôlent.

Il est disponible dans Ubuntu ( page de manuel ) via apt-get ddccontrol.

gddccontrol est une interface utilisateur graphique pour cela: apt-get gddccontrol

Les deux doivent être exécutés en tant que root:

  • sudo ddccontrol pour l'outil de ligne de commande
  • gksudo gddccontrolou pkexec gddccontrolpour l'outil GUI.

Basé sur le commentaire de @Ad Infinitum dans le commentaire de @ Taz8du29 (mais note et extra cdans le nom


0

Mon problème est que le moniteur semble "diminuer" la luminosité après que le double affichage soit activé avec Ubuntu 18.04 sur un ordinateur portable HP15 AMD ...

A partir du niveau de luminosité "TV" ... et changer la "luminosité" avec xrandrseulement des changements de contraste.

Je ne peux pas facilement le réparer en changeant le gamma. Il s'agit peut-être simplement d'un problème dépendant du matériel. Je n'ai pas eu ce problème avec les configurations de moniteur HDMI précédentes sur cet ordinateur portable.

Donc, un avertissement: même si vous utilisez xrandr ou xbrightness, vous constaterez que les résultats dépendent du fournisseur.

Gksudo / gksu a également été supprimé d'Ubuntu à partir du 18.04 https://itsfoss.com/gksu-replacement-ubuntu/

Et si vous allez vous lancer ddccontrol, vous devrez trouver une page sur la façon de le lancer avant de l'utiliser ... une tâche pour un autre jour

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.