Моргание интерлейса в полном экране D3D11 [баг драйвера]

Автор usalex, 03 апреля 2021, 04:02:51

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

usalex


Aleksoid1978

Вопрос такой - в Pot при использовании D3D11 VP встроенного, или например в системной "Кино и ТВ", нормально выводит с деинтерлейсом - нет гребенки и есть удвоение частоты ?
AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /AMD Radeon R9 16Gb@3200 /Kingston 500Gb M.2 /GTX 1650 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

V0lt

Попробовал считать V-Blank-и.
В полном экране (любом), когда нет никаких других окон и оконного тулбара, измерения получаются адекватными.
Но если на дисплее появляется хоть какое-то дополнителью окошко, то количество региструемых V-Blank снижается вдвое (счетчик увеличивается сразу на 2).  >:(

usalex

Цитата: Aleksoid1978 от 03 мая 2021, 09:16:38
Вопрос такой - в Pot при использовании D3D11 VP встроенного, или например в системной "Кино и ТВ", нормально выводит с деинтерлейсом - нет гребенки и есть удвоение частоты ?
В Pot никаких проблем с интерлейсным контентом нет - ни на его встроенном D3D11, ни на нашем MPCVR+D3D11.
А системной штукенции "Кино и ТВ" у меня вообще нет.

Aleksoid1978

Всмысле в Pot при использовании нашего MPCVR все отлично ? А моргает где - в MPC-BE чтоли только ?
AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /AMD Radeon R9 16Gb@3200 /Kingston 500Gb M.2 /GTX 1650 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

usalex

Цитата: Aleksoid1978 от 03 мая 2021, 11:32:28А моргает где - в MPC-BE чтоли только ?
Да. Моргает только в MPC-BE.

Aleksoid1978

AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /AMD Radeon R9 16Gb@3200 /Kingston 500Gb M.2 /GTX 1650 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

usalex

Aleksoid1978, в Pot при использовании MPCVR (с установленной галкой FSE) в полном экране нет панелей (ни верхней, ни нижней) - может из-за этого нет морганий? В нашем MPC-BE моргание исчезает, если вызвать флайбар или таймлайн и не появляется, пока флайбар (или таймлайн) остается на экране.

Aleksoid1978

AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /AMD Radeon R9 16Gb@3200 /Kingston 500Gb M.2 /GTX 1650 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

usalex

#114
Без FSE никаких морганий нет - всё отлично. Я имею в виду MPC-BE.
Я бы использовал режим без FSE, но на нем с плавностью не так хорошо, как при FSE.
Если в MPCVR не использовать Flip, то морганий нет в FSE, но при Discard тоже с плавностью не очень хорошо.

V0lt

mpcvr_1703_flip_test_5
Изменил способ расчета времени Present для режима Flip в эксклюзивном полном экране.

Теперь при совпадении частоты видео и дисплея график будет ожидаемо ровным (почти как в режиме Discard). Проверял на GTX 950, Win8.1 x64.

usalex

#116
mpcvr_1703_flip_test_5
Изменения есть и очень существенные.
Моргание почти пропало. Оно иногда проявляется в самом начале воспроизведения, но исчезает через пару секунд.

Но с плавностью совсем плохо на флипе. Стало хуже, чем было на дискарде - адская дерготня.
В окне на графике - пила (а ведь частота дисплея совпадает с FPS). В режиме FSE график неровный, хотя и гораздо более плоский, чем в окне - но все равно он очень быстро сбивается -- фрейм-рейт начинает плясать в районе 42 при контенте 50fps и дисплее 50Hz.

В общем, для использования этот билд совсем не годится. Хотя, наверное, ты нащупал путь для решения траблы с морганием.
И, кстати, на этом билде впервые для MPCVR словил потерю управления при перемотке (раньше такого на MPCVR ни разу не было).

V0lt

Цитата: usalex от 03 мая 2021, 21:11:49В окне на графике - пила (а ведь частота дисплея совпадает с FPS).
В оконном режиме ничего не менялось по сравнению с 1703.
Изменил способ расчета времени Present для режима Flip в эксклюзивном полном экране.

И не забываем, что оконный режим на дополнительном дисплее плохая идея.

ЦитироватьВ режиме FSE график неровный, хотя и гораздо более плоский, чем в окне - но все равно он очень быстро сбивается -- фрейм-рейт начинает плясать в районе 42 при контенте 50fps и дисплее 50Hz.
Я проверяю клип 29.97i на основном мониторе с частотой 59 Гц (по статистике 59,954 Гц). У меня ничего не сбивается.
Если найду время и желание, то завтра погоняю на 50 Гц.

На моей машине режим Discard - эталон стабильности. Он просто работает с ровным графиком, либо с небольшой пилой (речь о тех же 29.97i на 59 Гц).

В режим Flip у меня график чаще пилообразный. Сама пила либо такая же как на Discard, либо больше. Но могу поймать состояние без пилы. Наличие пилы на плавность никак не влияет! Это просто проблема регистрации времени вывода кадра на дисплей (расчеты корректные).

Aleksoid1978

AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /AMD Radeon R9 16Gb@3200 /Kingston 500Gb M.2 /GTX 1650 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

V0lt

По-быстрому попробовал свой билд со вторым дисплем на Intel HD 4000. В общем все плохо с D3D11. Появляется гребенка на обоих дисплеях (мое изменение тут не причем). На втором дисплее V-Blank даже в эксклюзивном режиме регистрируется через раз.