Bug 13545 - wrong dpi setting
: wrong dpi setting
Status: CLOSED FIXED
: Branch 4.0
(All bugs in Branch 4.0/alterator-x11)
: 4.0
: all Linux
: P2 normal
Assigned To:
:
:
:
: 13370
:
  Show dependency tree
 
Reported: 2007-11-28 23:59 by
Modified: 2013-07-18 16:56 (History)


Attachments
Xorg.0.log with wrong dpi (5.72 KB, application/x-gzip)
2007-11-29 13:11, Yura Kalinichenko
no flags Details
XFree86.0.log with proper dpi (5.32 KB, application/x-gzip)
2007-11-29 13:13, Yura Kalinichenko
no flags Details
xorg.conf (1.45 KB, text/plain)
2007-11-29 13:47, Yura Kalinichenko
no flags Details
ddcprobe log (1.42 KB, text/plain)
2007-11-29 22:21, Yura Kalinichenko
no flags Details


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2007-11-28 23:59:26
Неверно устанавливается значение DPI для видеокарт S3 ViRGE. Правильное
значение
для этой же карты, выставлявшееся XFree 4.3.0 = 75,75, в то время как x.org с
драйвером xorg-x11-drv-s3virge-1.9.1-alt3 выставляет 20,15
------- Comment #1 From 2007-11-29 11:39:28 -------
Xorg.0.log в студию
------- Comment #2 From 2007-11-29 13:11:08 -------
Created an attachment (id=2293) [details]
Xorg.0.log with wrong dpi
------- Comment #3 From 2007-11-29 13:13:29 -------
Created an attachment (id=2294) [details]
XFree86.0.log with proper dpi
------- Comment #4 From 2007-11-29 13:16:22 -------
и xorg.conf
------- Comment #5 From 2007-11-29 13:47:03 -------
Created an attachment (id=2295) [details]
xorg.conf

Сгенерирован ltsp5, с небольшими ручными дополнениями.
------- Comment #6 From 2007-11-29 14:03:49 -------
$ grep DisplaySize /etc/X11/xorg.conf
не известно что тут сгенерино, а что вписано руками, но в конфиге много 
лишнего. необходимо исправлять либо эту генерялку, либо руки
------- Comment #7 From 2007-11-29 15:36:28 -------
ltsp5 пользуется x11_autosetup, тот -- скриптами из alterator-x11.

Подозрителен DisplaySize -- он действительно квадратный по метру с четвертью на
сторону? (возможно, видео или монитор криво отдают DDC... мы планируем сделать
в
ltsp5 перекрытие автомата, но для этого надо см. #13370)

Юр, DisplaySize автоматом появился или руками? (так понимаю, первое)
------- Comment #8 From 2007-11-29 19:12:21 -------
(In reply to comment #7)
> ltsp5 пользуется x11_autosetup, тот -- скриптами из alterator-x11.
> 
> Подозрителен DisplaySize -- он действительно квадратный по метру с четвертью на
> сторону? (возможно, видео или монитор криво отдают DDC...
Да, похоже на то. Смутно припоминаю, что какие-то проблемы у этого монитора были
(SyncMaster 152B), и границы разверток приходилось выставлять вручную, чтобы
нормального разрешения добиться.

 мы планируем сделать в
> ltsp5 перекрытие автомата, но для этого надо см. #13370)
> 
> Юр, DisplaySize автоматом появился или руками? (так понимаю, первое)
Разумеется, автоматом. Я этого слона и не заметил-то сразу. Естественно, как
убрал его из конфига - все стало на место. Может вообще этот параметр не нужно
генерить ?
------- Comment #9 From 2007-11-29 20:20:32 -------
Тогда перевешиваем на автомат.

2 rider: не помнишь таких приколов? (нарисовало DisplaySize 1270 1270)
------- Comment #10 From 2007-11-29 20:20:51 -------
reassign
------- Comment #11 From 2007-11-29 20:45:15 -------
ddcprobe на этом девайсе что говорит ?
------- Comment #12 From 2007-11-29 22:21:21 -------
Created an attachment (id=2296) [details]
ddcprobe log

Вот вывод ddcprobe
------- Comment #13 From 2007-11-29 23:46:58 -------
Ну что ж.. 127x127 сантиметров - это возвращает VBE этой видеокарты.

Есть идеи как это побороть ?
------- Comment #14 From 2007-11-29 23:49:21 -------
2inger: Стас, сделай хак - если размеры монитора больше метра, то нафиг не надо
прописывать его DisplaySize.

Хак не корректный, но мне кажется - в ближайшее время таких мониторов много не
увидим.
------- Comment #15 From 2007-12-04 16:45:28 -------
Бывают и 56" VGA, но есть мнение, что DisplaySize -- всё-таки не штатно
забиваемый параметр, а "аварийный" для кривого железа.  Если оно отдаёт криво,
то забивать не поможет (всё равно надо мерять-править, а для этого нужна
линейка).  Если ровно -- то забивать излишне.

Или что-то пропустил?
------- Comment #16 From 2008-03-14 20:37:21 -------
На будущее: копать в alterator-x11/helpers/ddcresbest (btw может иметь смысл
ориентироваться на 96, а не 90dpi)
------- Comment #17 From 2008-03-19 17:54:57 -------
Цели автонастраивалки:
- для LCD/TFT: выдать номинальное (оно же максимальное) пиксельное разрешение;
- для CRT мы вынуждены играть в автоугадав, отталкиваясь от желаемого DPI,
физических размеров экрана и списка пиксельных разрешений.

Я не знаю, как посредством DDC отличить CRT и TFT (даже на DVI). Поле input: в
`ddcprobe` пока смахивает на бесполезное -- и при подключении через VGA, и через
DVI там фигурирует что-нить вроде
[separate sync, [composite sync, ]]sync on green, analog signal

Посему мысли вслух (заготовки для эвристик):
- для CRT в DDC присутствуют ctiming:.*@85 (или отсутствует DDC);
- для LCD/TFT в DDC отсутствуют 85, присутствуют 60/70/75 Hz;
- самый низкий обнаруженный DPI -- у 40" с максимальным 1366x768;
- самый высокий наблюдавшийся мной DPI -- 133 (15" @1600x1200), ну пусть 200.
------- Comment #18 From 2008-03-19 17:56:21 -------
Точнее, нижний порог DPI даже не 40, а чуть меньше 39 (так что пусть 30--35):
http://hotline.ua/gd/2/cmp/?s=56588-8996-9747-59914-49074
------- Comment #19 From 2008-03-19 19:38:35 -------
Миша, всё это от лукавого.. не будет работать на DDC2.

Реально, определить какой монитор подключен, а какой нет - может только драйвер
xorg.

Соответственно была идея сделать некую обёртку, которая будет напрямую звать
драйвер xorg для данной видюхи и узнавать тип подключенного монитора.

Но тут тоже есть ряд засад. 
------- Comment #20 From 2008-03-19 20:03:01 -------
(In reply to comment #19)
> Миша, всё это от лукавого.. не будет работать на DDC2.
Да уже начал задумываться, стоит ли изобретать старый велик.

> Соответственно была идея сделать некую обёртку, которая будет напрямую звать
> драйвер xorg для данной видюхи и узнавать тип подключенного монитора.
> Но тут тоже есть ряд засад. 
Ну вот тот самый уже выкинутый из ubuntu hardy пакет xresprobe грепал xorg'овые
логи, выцепляя специфичные для драйверов рассказы... (подробнее написал в Bug
#14371 -- связанная, но другая тема)

Собственно засада получается в том, что автомат может ошибаться -- железо бывает
кривое.  Или человек может знать конкретно лучше, что он конкретно хочет.
------- Comment #21 From 2008-03-19 20:05:16 -------
Не надо грепать логи.. эта идея ещё бредовее.

Всё что нужно - открыть драйвер, вызвать его, узнать монитор и выйти. Это может
делать некая спец-версия сервера xorg (фактически эмулятор сервера xorg).

По поводу пользователей - безусловно, пользователь знает лучше нас. Но лучше ему
помочь в автоопределении. .приятно же, когда можно не выбирать свой монитор, а
просто согласиться с предложенными настройками.
------- Comment #22 From 2013-07-18 16:56:47 -------
В alterator-x11 добавлена возможность задать размер экрана, из которого
вычислится DPI.