Disabilitazione dell'accelerazione hardware per Night Shift

2

Sto notando alcuni artefatti quando guardo video a schermo intero su macOS con Night Shift abilitato e sospetto che siano causati dall'hardware, perché spariscono ogni volta che viene visualizzato un overlay su un video a schermo intero.

Quindi, mi stavo chiedendo, c'è un modo per disabilitare l'accelerazione hardware per Night Shift? E, se no, allora c'è qualche altra applicazione che posso usare che svolgerebbe la stessa funzione, ma senza sfruttare l'accelerazione hardware? (forse una vecchia versione di f.lux o qualcos'altro?)

    
posta rid 09.11.2018 - 17:54
fonte

1 risposta

0

Poiché gli artefatti scompaiono ogni volta che viene visualizzato un overlay, ho risolto il problema creando un'app che visualizza un overlay persistente e invisibile:

  1. Creata una nuova app MacOS Cocoa in Xcode.
  2. Modificate le proprietà della finestra in MainMenu.xib , nella finestra di ispezione degli attributi e deselezionata "Barra del titolo", "Ombra", "Chiudi", "Riduci" e "Ridimensiona", quindi nella finestra di ispezione della dimensione ho impostato la larghezza della dimensione del contenuto e altezza a 1, e posizione iniziale x e y a 0.
  3. Modificato Info.plist e aggiunta una nuova proprietà "L'applicazione è agente (UIElement)" impostata su YES .
  4. Modificato AppDelegate.swift e cambiato applicationDidFinishLaunching in:

    window.isOpaque = false
    window.alphaValue = 0
    window.ignoresMouseEvents = true
    window.level = .floating
    window.collectionBehavior = [.canJoinAllSpaces, .transient]
    
  5. Compilato l'app per la produzione con Prodotto

risposta data 13.11.2018 - 19:49
fonte

Leggi altre domande sui tag