MPCVR плохо работает с картами AMD

Автор usalex, 31 октября 2023, 19:25:37

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

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

usalex

V0lt, привет!
На AMD при использовании MPCVR частота кадров при воспроизведении всегда ограничена частотой экрана (рефрешем).
Например, если видео 60fps, а частота дисплея 50Hz, то видео в плеере идет с частотой кадров не более, чем 50fps.
Если выбрать EVR-CP, то такого ограничения не происходит - видео идет с той частотой, на которой оно закодированно (это если V-Sync выключен. а если V-Sync включен, то тоже ограничивает fps величиной рефреша).
На NVIDIA нет никаких ограничений ни на EVR-CP, ни на MPCVR (ни при включенном, ни при выключенном V-Sync).
Понимаю, что, скорее всего, это очередная кривизна драйверов AMD, но не мог бы посмотреть - может, можно что-то сделать в MPCVR?

V0lt

Цитата: usalex от 15 июля 2024, 12:11:59На AMD при использовании MPCVR частота кадров при воспроизведении всегда ограничена частотой экрана (рефрешем).
Ограничение не зависит от производителя графического адаптера.
Если выбрать EVR-CP, то такого ограничения не происходит - видео идет с той частотой, на которой оно закодированно (это если V-Sync выключен. а если V-Sync включен, то тоже ограничивает fps величиной рефреша).Ограничение работает всегда, т.к. дисплей физически не сможет отрисовать большее количество кадров в секунду, чем его частота обновления. Просто иногда EVR-CP/D3D9 не контролирует время отрисовки на дисплей и часть кадров улетает в пустоту.

usalex

#17
Цитата: V0lt от 15 июля 2024, 16:49:31Ограничение не зависит от производителя графического адаптера.
Но на NVIDIA нет ограничений ни на MPCVR, ни на EVR-CP -- если видео 120fps, то на нвидии оно и идёт всегда 120fps на любом рендерере при любом рефреше и без пропуска кадров.
Здесь в теме сэмплов есть Das.Boot.(1981).BDRip.720p.AVC.HD.120FPS.mkv -- можешь проверить на нем.
Это при выключенном V-Sync.
рефреш - 50Hz
FPS - 120


А у AMD при выключенном V-Sync:
1) MPCVR=50fps(равен рефрешу)
2) EVR-CP=120fps(выше рефреша)

V0lt

#18
Цитата: usalex от 15 июля 2024, 17:00:32Но на NVIDIA нет ограничений ни на MPCVR, ни на EVR-CP -- если видео 120fps, то на нвидии оно и идёт всегда 120fps на любом рендерере при любом рефреше и без пропуска кадров.
...
Это при выключенном V-Sync.
Сделайте сброс настроек драйвера - будет ограничение.
Я вообще там не настраивал несколько лет и у меня работает одинаково, что Nvidia, что Intel.
Как включать-выключать V-Sync на картах AMD не знаю.
Причем тут MPC VR мне непонятно. Подобной фичи не планируется, потому что не нужна.

15 июля 2024, 18:44:53
И в очередной раз повторю. То что написано 120 fps у вас на скриншоте не соответствует действительности. Ваш монитор в режиме 50 Гц больше 50 кадров в секунды в принципе не сможет показать.

usalex

Цитата: V0lt от 15 июля 2024, 18:42:10Причем тут MPC VR мне непонятно.
При том, что на MPCVR даже при выключенном V-Sync этот ролик идет с рывками и с дропами, в отличии от полной плавности на EVR-CP.
Вот мне и захотелось, чтоб на MPCVR тоже было плавно.

V0lt

Дропы кадров там на любом рендерере, просто при отключенном V-Sync кадры выкидываются не в самом EVR-CP, а дальше. Поэтому EVR-CP рапартует о 120 fps, которых нет.

В MPC-VR в режиме DX9 можно похожее сделать (см. D3DPRESENT_INTERVAL_IMMEDIATE), но мы не будем такой ерундой заниматься ради больших циферок.

usalex

#21
Дело не в "больших циферках", а в том, что на NVIDIA с MPCVR(d3d11) видео идет плавно при отключенном V-Sync, а на AMD видео идет рывками при тех же условиях.
Ладно, я всё понял. Проехали ))

15 июля 2024, 23:57:54
А вообще-то, похоже, что на AMD поведение (отображение в статистике) более правильное, чем на NVIDIA, у которой показывает фейковый fps и отсутствие пропущенных кадров.
Так что для AMD ничего править не надо.
V0lt, спасибо за разъяснения и извиняюсь, что отнял время.