2012-08-06 19:45:54 +0000 2012-08-06 19:45:54 +0000
14
14
Advertisement

Zmiana ustawień Overscan/Underscan bez Catalyst Control Center

Advertisement

Właśnie zainstalowałem Windows 8 i pobrałem wersję Catalyst, którą poleciła strona ATI. Jednak system twierdzi, że nie może się uruchomić! Mój główny monitor jest podłączony do komputera za pomocą kabla HDMI, a wyświetlany obraz nie jest pełnoekranowy (wokół wyświetlacza jest pusty obszar). Zazwyczaj zmieniam ustawienia overscan/underscan w CCC, aby go zresetować, ale ponieważ nie mam do niego dostępu, chciałem wiedzieć, czy jest jakiś sposób, aby zmienić to bez CCC (może przez rejestr?) Dzięki.

Advertisement
Advertisement

Odpowiedzi (11)

25
25
25
2012-08-06 20:44:23 +0000

Odbyłem długą dyskusję na temat dylematu overscan/underscan z programistami AMD, którzy pracują nad sterownikami Catalyst.

Podstawową ideą jest to, że AMD woli niedoświetlać niektórych ludzi, których wyświetlacze HDMI nie overscan, i tworzyć zbyt mały obraz (puste przestrzenie wokół obrazu), niż nie niedoświetlać i powodować, że ludzie, których wyświetlacze zawsze overscan (bez ustawień, aby to zmienić i nieprawidłowych informacji EDID) mają zbyt duży pulpit. Argumentem jest to, że jeśli pulpit jest zbyt duży, to użytkownik nie widzi gdzie jest ikona Catalyst lub menu start, a zatem nie może nawigować po UI w celu dokonania odpowiedniej zmiany. Tak więc trzymają się swojej broni w kwestii domyślnego zaniżania rozdzielczości na HDMI, aby upewnić się, że nikt nie utknie z pulpitem, który jest zbyt duży dla jego ekranu (z elementami UI wiszącymi “poza ekranem”).

Nie zgadzam się z tą polityką, ale tak to już jest. Wydaje się również, że jest to dość wyjątkowa decyzja wśród twórców sterowników graficznych, ponieważ nie mogę odtworzyć tego dziwactwa na wielu innych urządzeniach nie należących do AMD: Tablety z Androidem, karty Nvidii i układy graficzne Intela.

Istnieje sposób na bezpośrednie dostosowanie underscan/overscan na Linux poprzez modyfikację wartości w “PCSDB” (Persistent Configuration Store Database). Nie wiem, jaki jest odpowiednik na Windows, lub czy można nawet odczytać/zapisać ustawienia bez użycia Catalyst.

Nie mogę osobiście przetestować tego rozwiązania, ale wygląda na to, że zadziałało dla ludzi na całkiem nowych sterownikach, więc spróbuj: przejdź do Tom’s Hardware lub po prostu ponownie umieszczę go tutaj:

I found a fix for the overscan issue  
Go to the following key in the registry:  
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\video{####....}0x1&000 
Create a new DWORD: 
"DigitalHDTVDefaultUnderscan" = dword 0x0000 
Note: there might be several {####....} , should be the one with most of the ATI settings. 
Source:http://forum.beyond3d.com/showthread.php?t=62100

Oto cytat ze źródła AMD (które pozostanie anonimowe) sprzed kilku lat na temat ich polityki HDMI underscan/overscan. Zauważ, że dotyczy to zarówno systemu Windows, jak i Linux.

Celem domyślnego ustawienia na underscan nie jest to, abyśmy polegali na telewizorach HDTV, aby overscanować z powrotem do pełnego ekranu. Byłoby to okropne z powodu utraty jakości obrazu podczas zmniejszania skali przez GPU, a następnie ponownego zwiększania skali przez TV. Rozwiązuje to raczej problem, gdy telewizor domyślnie ustawia overscan i nie ma mechanizmu wyłączania go (wiele tanich telewizorów HDTV). W takim przypadku telewizor przeskaluje obraz, a więc menu będzie zazwyczaj wyświetlane poza krawędzią ekranu i uniemożliwi użytkownikowi łatwy dostęp do nich. Domyślna wartość jest czysto użytkowa, a CCC-LE powinno być w stanie zmienić ją na 0% (lub możesz użyć tego klucza rejestru/PCS, aby wymusić domyślną wartość 0%).

Jeśli masz inteligentny HDTV, który mówi nam, czy overscan lub nie, zrobimy właściwą rzecz i domyślnie ustawimy 0%. Jednak niewielu producentów poprawnie ustawia tę właściwość w EDID wyświetlacza, więc domyślnie ustawiamy niedoświetlanie.

Underscanning powinien być domyślny tylko na HDMI. DisplayPort lub DVI nie powinny domyślnie zaniżać wartości skanowania.

6
6
6
2013-03-09 19:20:48 +0000

Dla Linuksa, poprawka polega na wpisaniu tego w Terminalu:

sudo aticonfig --set-pcs-val=MCIL,DigitalHDTVDefaultUnderscan,0

(zamieszczając to tutaj, aby po prostu potrzebować jednej zakładki dla wszystkich platform)

3
Advertisement
3
3
2014-10-28 19:47:47 +0000
Advertisement

Nie udało mi się go uruchomić z moim Radeonem HD 3600 na Windows 8.1 64bit przy użyciu proponowanych tutaj rozwiązań. Próbowałem wszystkiego, w tym

  • Wszystkie kombinacje DigitalHDTVDefaultUnderscan i TVEnableOverscan do 0 lub 1
  • DigitalHDTVDefaultUnderscan w 0000, 0001 lub nawet w różnych ścieżkach rejestru
  • Ustawienie DALR6 DFP1920x1080x0x59 lub DALR6 DFP1920x1080x0x60 na 0 zgodnie z propozycją tutaj
  • Z poziomu Catalyst Control Center (zmiana wartości nie wykazała żadnego efektu)

Oto co w końcu zadziałało dla mnie - kończąc bez zainstalowanego CCC!

  1. Pobierz i rozpakuj CCC 13.4 legacy beta (najnowszy sterownik dla HD 2x/3x/4x Series)
  2. Zainstaluj ręcznie sterownik z Packages\Drivers\Display\W86A_INF
  3. Jedynym sterownikiem, który mi zadziałał był C8156445
  4. W oknie wyboru wybrałem drugi z dwóch tak samo nazwanych sterowników:
  5. ATI Radeon HD 3600 Series
  6. ATI Radeon HD 3600 Series - wybierz ten
  7. Zainstaluj CCC (zaznacz tylko CCC i Visual C++ Redistributable Library)
  8. Skonfiguruj wyświetlacz na 0% over/underscan
  9. Jeśli suwak jest nieaktywny to prawdopodobnie Twój ekran nie jest w Full-HD
  10. Jeśli nie ma idealnie ostrego obrazu od razu musisz wybrać inny sterownik z kroku 2
  11. Obraz powinien być już ostry!
  12. Jeśli obraz jest ostry, możesz odinstalować wszystko oprócz sterownika
  13. CCC
  14. Visual C++ Redistributable Libraries
  15. Folder C:\AMD

Teraz mam ostry obraz bez CCC.

2
2
2
2015-10-19 14:23:10 +0000

Użyłem odpowiedzi steffena, aby uzyskać to działające w systemie Windows 10 i prześledziłem to nieco bardziej szczegółowo.

Wcześniej próbowałem wyłączyć TVEnableOverscan i DigitalHDTVDefaultUnderscan bez powodzenia (zmieniając je również w kluczu amdkmdag pod CurrentControlSet\Services), a także wiele wersji i kombinacji starszych instalatorów CCC / sterowników. Przed aktualizacją do Windows 10 działał on dobrze na Windows 8.1 (nie pamiętam, czy robiłem coś specjalnego, aby go uruchomić, ale nie jestem tego w 100% pewien).

Po pierwsze, w Windows 10 rozpakowany pakiet instalatora (13.4 beta) nie chce się uruchomić. Zamiast tego wszedłem do Menedżera urządzeń i odinstalowałem kartę graficzną, zaznaczając pole, aby usunąć sterownik. Następnie wybrałem Akcja->Skanuj w poszukiwaniu zmian sprzętowych i otrzymałem “Microsoft Basic Display Adapter”. Kliknąłem prawym przyciskiem myszy i wybrałem opcję aktualizacji sterownika, a następnie wybrałem opcję samodzielnego określenia sterownika. Wybrałem folder Packages\Drivers\Display\W86A_INF z rozpakowanego pakietu AMD, tak jak opisał to steffen. Nastąpił dość długi okres wykrywania/instalacji sprzętu i na jego końcu wersja sterownika była nadal wersją z Windows 10 (03/01/2015, 8.970.100.9001 zamiast 04/24/2013, 8.970.100.0000 z paczki). Jednak uruchomienie programu instalacyjnego i zainstalowanie VISION Conrol Center spowodowało, że CCC zaczęło działać. Zgłaszało ono poprawną, starszą wersję sterownika.

W tym momencie mogłem regulować overscan uruchamiając Process Monitor i obserwując jakie wartości rejestru były ustawiane po naciśnięciu Apply:

15:26:19.6441241 CCC.exe 6740 RegSetValue HKLM\System\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}0x1&000\GDOADJR6 DFP SUCCESS Type: REG_BINARY, Length: 384, Data: 00 00 00 00 02 00 00 00 10 00 00 00 00 00 00 00
15:26:19.6457995 CCC.exe 6740 RegSetValue HKLM\System\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}0x1&000\DALR6 DFP1920x1080x0x59 SUCCESS Type: REG_BINARY, Length: 48, Data: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15:26:19.6468669 CCC.exe 6740 RegSetValue HKLM\System\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}0x1&000\DAL_DFPOptions SUCCESS Type: REG_BINARY, Length: 4, Data: 18 00 00 00

Wierzę, że prefiksy to te same ścieżki rozwiązywane przez klucz HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Video wspomniany przez steffena i innych. Process Monitor nie pokazuje pełnych danych, ale trochę eksperymentowania i powiększania za pomocą RegEdit pokazało, że odpowiednie bajty są w obu DALR6 i GDOADJR6 - w pierwszym z nich w bajcie 37 (offset 0x24), a w drugim w bajcie 21 (offset 0x14). Mają one wartość 0 przy całkowicie wyłączonym overscanie (w prawo w GUI) i zwiększają się o jeden przy każdym przesunięciu suwaka w lewo.

Na koniec ponownie odinstalowałem sterownik karty graficznej z Menedżera urządzeń (łącznie z usunięciem sterownika). Windows automatycznie przeszedł przez kolejny wydłużony cykl wykrywania i powrócił do oryginalnego, dostarczonego przez Microsoft sterownika. Z jakiegoś powodu CCC wydaje się nadal działać i wyświetla teraz nowocześniejszą wersję sterownika. Pozwoliło mi to ponownie dokonać zmiany w GUI i zaobserwować efekt. Co ciekawe, przy zmianie urządzenia/sterownika pod kluczem HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Video tworzone są nowe wpisy. Co jeszcze bardziej mylące, za drugim razem okazało się, że mój monitor ma 60Hz zamiast 59Hz, więc odpowiedni klucz nieco się zmienił. Jednak oba offsety były nadal poprawne i zmieniały się wraz z procesem suwaka/aplikacji.

Nie testowałem tego bez wcześniejszego zainstalowania CCC, ale po jego usunięciu nadal działało. Mogę tylko przypuszczać, że są one odczytywane przez sterownik: w najgorszym wypadku przy starcie i prawdopodobnie przy każdym większym zdarzeniu na ekranie (jak zmiana rozdzielczości).

Windows 10 TH2 (Threshold 2)

Po zainstalowaniu TH2 overscan powrócił, a nawet pogorszył się. Binarne plamki zmieniły rozmiar i domyślnie jest ich teraz 8 zamiast 2. Wersja sterownika pozostaje bez zmian, a lokalizacja danych binarnych pozostaje bez zmian. Jedynki DALR6 są nadal w bajcie 37 (offset 0x24), GDOADJR6 jest nadal w bajcie 21 (offset 0x14). Początkowo źle odczytałem offsety heksadecymalne w RegEdit, więc zainstalowałem ten sam Catalyst 13.4 beta VISION Control Center, co poprzednio (bez sterownika). Tym razem zadziałało za pierwszym razem i od razu byłem w stanie kontrolować overscan z GUI.

2
Advertisement
2
2
2014-09-14 10:42:16 +0000
Advertisement

Miałem ten sam problem i moim rozwiązaniem jest:

użyj regedit do ustawienia kluczy:

HKLM\System\CurrentControlSet\Video\***0x1&000
    DWORD: TVEnableOverscan = 0x0
    DWORD: DigitalHDTVDefaultUnderscan = 0x0

HKLM\System\CurrentControlSet\Video\ ***0x1&000\DAL2_DATA_2.0\DisplayPath_*\MODE_*** \Adjustment
    rename "Underscan" to for example "oldUnderscan" to disable it

Uruchom ponownie komputer i sprawdź, czy działa

Zmiana tylko dwóch pierwszych wartości nie działa w moim przypadku.

Musisz zastąpić je odpowiednimi wartościami znalezionymi w twoim rejestrze. Domyślam się również, że “0000” to pierwszy ekran, “0001” to drugi i tak dalej (pierwszy to mój HDTV, a drugi to zwykły monitor PC - który miał już ustawione TVEnableOverscan na 0).

1
1
1
2014-07-03 06:39:49 +0000

Mam Hp pavilion dv6 z ati hd 4650 z windows 8.1 update.

W windows 8 działało dobrze, aby zmienić wartości, ale w windows 8.1 update windows ciągle przywraca wartości, tak że czarna obwódka jest stała.

Rozwiązałem to dodając użytkownika “system” do klucza regkey 0000 i zezwalając systemowi na odczytywanie wartości, i zastosowałem te ustawienia bezpieczeństwa na wszystkich kluczach i podkluczykach.

I teraz działa dobrze w Windows 8.1 to.

Mam nadzieję, że to komuś pomoże.

1
Advertisement
1
1
2014-01-27 11:35:17 +0000
Advertisement

Miałem podobny problem i nie byłem w stanie zainstalować Catalyst Control Center… więc również nie byłem w stanie dostosować ustawienia underscan.

Udało mi się go przezwyciężyć (bardziej jak zamaskowanie problemu) i dostosować ustawienia rozmiaru ekranu na moim telewizorze Samsung, do którego podłączony jest mój komputer. Z tego co słyszałem, to dokładnie to, co AMD próbowało obejść.

Teraz widzę cały ekran w 1080p, a na szczęście telewizor jest na tyle sprytny, że ma różne ustawienia rozmiaru ekranu dla każdego wejścia hdmi.

Być może podobne podejście mogłoby zadziałać w przypadku monitorów PC?

1
1
1
2014-02-06 01:04:48 +0000

To nie jest bezpośrednio dla win8, ale działało w serwerze 2012r2, więc zakładam, że jest to przynajmniej parrotable w 8.1 lub 8. W każdym razie usunąłem domyślny underscan? (obraz jest mniejszy niż wyświetlacz) poprzez edycję klucza binarnego BestViewOption\Hdmi znajdującego się pod adresem HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Video\{B380344A-9336-4C46-A52D-F53C6EAD0696}HKEYLOCALMACHINE\SYSTEM\CurrentControlSet\Control\VideoTo nie jest bezpośrednio dla win8, ale działało w serwerze 2012r2, więc zakładam, że jest to przynajmniej parrotable w 8.1 lub 8. W każdym razie usunąłem domyślny underscan? (obraz jest mniejszy niż wyświetlacz) poprzez edycję klucza binarnego BestViewOption\Hdmi znajdującego się pod adresem HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Video\{B380344A-9336-4C46-A52D-F53C6EAD0696}000\DAL2_DATA__2_0\DisplayPath_5\Option

gdzie GUID którego szukasz jest tym, który ma dużo kluczy w {B380344A-9336-4C46-A52D-F53C6EAD0696}

ponownie 0x6& w ciągu regkey jest GUID, który jest unikalny dla mnie nie oczekuj, że zobaczysz dokładnie taki sam na swojej maszynie.

To jest na Server 2012r2 używając CCC 14.1beta

W każdym razie mam nadzieję, że to komuś pomoże.

0
Advertisement
0
0
2014-08-07 16:53:00 +0000
Advertisement

Zainstalowanie CC w innym folderze to wszystko, co musiałem zrobić, aby to naprawić. Domyślny folder był uszkodzony bez względu na wszystko.

0
0
0
2014-11-29 21:06:45 +0000

Zmieniłem ustawienia w rejestrze (jak wyżej) i zmieniłem kabel hdmi - nic się nie zmieniło.

Następnie wyłączyłem komputer, usunąłem mój drugi ekran (DVI) i zrestartowałem: teraz wszystko w porządku!

Może to zaoszczędzi komuś kilku godzin testów i poszukiwań…

0
0
0
2015-01-03 22:47:53 +0000

W moim starym Samsungu LCD udało mi się rozwiązać problem zmieniając P.SIZE z 16:9 na “Just Scan”. Do tej pory zawsze instalowałem centrum sterowania, kiepskie!

Advertisement
Advertisement