Summary: | wrong dpi setting | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Branch 4.0 | Reporter: | Yura Kalinichenko <yuk> | ||||||||||
Component: | alterator-x11 | Assignee: | inger <inger> | ||||||||||
Status: | CLOSED FIXED | QA Contact: | Q.A. 4.0 <qa-4.0> | ||||||||||
Severity: | normal | ||||||||||||
Priority: | P2 | CC: | mike, rider, zerg | ||||||||||
Version: | 4.0 | ||||||||||||
Hardware: | all | ||||||||||||
OS: | Linux | ||||||||||||
Bug Depends on: | 13370 | ||||||||||||
Bug Blocks: | |||||||||||||
Attachments: |
|
Description
Yura Kalinichenko
2007-11-28 23:59:26 MSK
Xorg.0.log в студию Created attachment 2293 [details]
Xorg.0.log with wrong dpi
Created attachment 2294 [details]
XFree86.0.log with proper dpi
и xorg.conf Created attachment 2295 [details]
xorg.conf
Сгенерирован ltsp5, с небольшими ручными дополнениями.
$ grep DisplaySize /etc/X11/xorg.conf не известно что тут сгенерино, а что вписано руками, но в конфиге много лишнего. необходимо исправлять либо эту генерялку, либо руки ltsp5 пользуется x11_autosetup, тот -- скриптами из alterator-x11. Подозрителен DisplaySize -- он действительно квадратный по метру с четвертью на сторону? (возможно, видео или монитор криво отдают DDC... мы планируем сделать в ltsp5 перекрытие автомата, но для этого надо см. #13370) Юр, DisplaySize автоматом появился или руками? (так понимаю, первое) (In reply to comment #7) > ltsp5 пользуется x11_autosetup, тот -- скриптами из alterator-x11. > > Подозрителен DisplaySize -- он действительно квадратный по метру с четвертью на > сторону? (возможно, видео или монитор криво отдают DDC... Да, похоже на то. Смутно припоминаю, что какие-то проблемы у этого монитора были (SyncMaster 152B), и границы разверток приходилось выставлять вручную, чтобы нормального разрешения добиться. мы планируем сделать в > ltsp5 перекрытие автомата, но для этого надо см. #13370) > > Юр, DisplaySize автоматом появился или руками? (так понимаю, первое) Разумеется, автоматом. Я этого слона и не заметил-то сразу. Естественно, как убрал его из конфига - все стало на место. Может вообще этот параметр не нужно генерить ? Тогда перевешиваем на автомат. 2 rider: не помнишь таких приколов? (нарисовало DisplaySize 1270 1270) reassign ddcprobe на этом девайсе что говорит ? Created attachment 2296 [details]
ddcprobe log
Вот вывод ddcprobe
Ну что ж.. 127x127 сантиметров - это возвращает VBE этой видеокарты. Есть идеи как это побороть ? 2inger: Стас, сделай хак - если размеры монитора больше метра, то нафиг не надо прописывать его DisplaySize. Хак не корректный, но мне кажется - в ближайшее время таких мониторов много не увидим. Бывают и 56" VGA, но есть мнение, что DisplaySize -- всё-таки не штатно забиваемый параметр, а "аварийный" для кривого железа. Если оно отдаёт криво, то забивать не поможет (всё равно надо мерять-править, а для этого нужна линейка). Если ровно -- то забивать излишне. Или что-то пропустил? На будущее: копать в alterator-x11/helpers/ddcresbest (btw может иметь смысл ориентироваться на 96, а не 90dpi) Цели автонастраивалки: - для 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. Точнее, нижний порог DPI даже не 40, а чуть меньше 39 (так что пусть 30--35): http://hotline.ua/gd/2/cmp/?s=56588-8996-9747-59914-49074 Миша, всё это от лукавого.. не будет работать на DDC2. Реально, определить какой монитор подключен, а какой нет - может только драйвер xorg. Соответственно была идея сделать некую обёртку, которая будет напрямую звать драйвер xorg для данной видюхи и узнавать тип подключенного монитора. Но тут тоже есть ряд засад. (In reply to comment #19) > Миша, всё это от лукавого.. не будет работать на DDC2. Да уже начал задумываться, стоит ли изобретать старый велик. > Соответственно была идея сделать некую обёртку, которая будет напрямую звать > драйвер xorg для данной видюхи и узнавать тип подключенного монитора. > Но тут тоже есть ряд засад. Ну вот тот самый уже выкинутый из ubuntu hardy пакет xresprobe грепал xorg'овые логи, выцепляя специфичные для драйверов рассказы... (подробнее написал в Bug #14371 -- связанная, но другая тема) Собственно засада получается в том, что автомат может ошибаться -- железо бывает кривое. Или человек может знать конкретно лучше, что он конкретно хочет. Не надо грепать логи.. эта идея ещё бредовее. Всё что нужно - открыть драйвер, вызвать его, узнать монитор и выйти. Это может делать некая спец-версия сервера xorg (фактически эмулятор сервера xorg). По поводу пользователей - безусловно, пользователь знает лучше нас. Но лучше ему помочь в автоопределении. .приятно же, когда можно не выбирать свой монитор, а просто согласиться с предложенными настройками. В alterator-x11 добавлена возможность задать размер экрана, из которого вычислится DPI. |