AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 729772
Accepted
400 the Cat
400 the Cat
Asked: 2022-12-28 09:33:09 +0800 CST2022-12-28 09:33:09 +0800 CST 2022-12-28 09:33:09 +0800 CST

xrandr: altera a saturação (menos cor, mais preto/branco)

  • 772
A recompensa expira em 3 horas . As respostas a esta pergunta são elegíveis para uma recompensa de reputação de +100 . 400 the Cat está procurando uma resposta de uma fonte respeitável .

Eu sei como alterar o brilho e a gama com xrandr:

xrandr --output eDP1 --brightness 0.8 --gamma "0.90:0.85:0.80"

mas como posso alterar a saturação, ou seja, diminuir a quantidade de cor e aproximar o espectro do preto/branco?

Preciso de uma maneira de alterar isso na linha de comando, não nas configurações de hardware do meu monitor.

Estou usando o Debian 10

shell
  • 1 1 respostas
  • 81 Views

1 respostas

  • Voted
  1. Best Answer
    don_crissti
    2022-12-31T08:02:07+08:002022-12-31T08:02:07+08:00

    A maneira mais conveniente (a partir de 2022) é por meio de uma ferramenta chamada vibrant-cli(que deve funcionar em qualquer X11configuração). A sintaxe é:

    vibrante-cli SAÍDA [SATURAÇÃO]
    Get or set saturation of output.
    
    OUTPUT is the name of the X11 output. You can find this by running xrandr.
    SATURATION is a floating point value between (including) 0.0 and (including) 4.0.
    
        0.0 or 0 means monochrome
        1.0 or 1 is normal color saturation (100%)
        if empty the saturation will not be changed
    

    por exemplo, para reduzir a saturação para 30% no meu laptop, eu executaria

    vibrante-cli eDP-1 0.3
    libvibrant version 1.0.2
    Saturation of eDP-1 is 0.300000
    

    libvibrantidentifica seu chipset gráfico e tenta alterar a saturação por meio dos métodos conhecidos suportados pelo driver para essa GPU específica. Se o seu hardware/drivers não suportar a alteração da vibração das cores, você receberá um erro.
    Observe que a camada Color Management for DRM (Direct Rendering Manager) é bastante recente :

    Color Manager framework defines a color correction property for color space
    transformation and Gamut mapping.  
    This property is called CTM (Color Transformation Matrix).
    
    This patch adds a new structure in DRM layer for CTM. This structure can be used
    by all user space agents to configure CTM coefficients for color correction.
    

    Portanto, para determinar se sua plataforma oferece suporte ao gerenciamento de cores por meio de drivers de código aberto 1 ( i915e amdgpu), você executaria xrandr --properties. Se não houver menção CTMou se estiver escrito, CTM: 0sua configuração não suporta a alteração da saturação via CTM(talvez por meio de outros métodos, consulte a nota na parte inferior da postagem sobre nVidia).
    Se você tiver uma linha como, CTM: 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1por exemplo, para eDP-1saída:

    ..................
    eDP-1 connected primary.....
    ..................
    link-status: Good 
            supported: Good, Bad
    CTM: 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 
            0 1 
    CONNECTOR_ID: 78 
            supported: 78
    

    então sua configuração suporta gerenciamento de cores, ou seja, a propriedade Color Transform Matrix pode ser definida... Isso ainda é um trabalho, vibrant-clia menos, é claro, que você queira fazer as contas sozinho... por exemplo, para definir a saturação para 0(escala de cinza) o comando é

    xrandr --output eDP-1 --set CTM '1431655765,0,1431655765,0,1431655765,0,1431655765,0,1431655765,0,1431655765,0,1431655765,0,1431655765,0,1431655765,0'
    

    1: Só tenho acesso a essas duas plataformas (e não testei o driver proprietário da AMD - não faço ideia se ele suporta CTM). Para as nVidiaGPUs, aparentemente há uma propriedade chamada digital vibranceque pode ser definida (ao usar o driver nVidia) por meio do painel de controle nVidia ou no terminal em execução, por exemplo nvidia-settings -a [gpu:0]/DigitalVibrance[DFP-1]=235(consulte o manual para obter a sintaxe adequada). Não sei se nouveausuporta o mesmo imóvel ou não...

    • 2

relate perguntas

  • Como funciona este comando? mkfifo /tmp/f; cat /tmp/f | /bin/sh -i 2>&1 | nc -l 1234 > /tmp/f

  • FreeBSD's sh: funções de lista

  • Existe uma maneira de fazer ls mostrar arquivos ocultos apenas para determinados diretórios?

  • o que grep -v grep faz

  • Como salvar um caminho com ~ em uma variável?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve