Система: Win11 22631.2428
Видеокарта: Radeon 780M (встройка в AMD Ryzen 9 7940HS)
Драйвер: Adrenalin 23.10.2
Билд MPCVR: 0.7.0.2126_git2023.08.19-4200ae9
Настройки MPCVR - по дефолту.
Проблема: не работает аппаратное ускорение на интерлейсном видео, не работает деинтерлейс, картинка с артефактами.
Сэмпл: (японка на веревке): интерлейсный ролик) (https://disk.yandex.ru/i/ANDIVn_eOveufw)
Скриншот экрана с артефактами: (https://www.upload.ee/thumb/15878953/_______.jpg) (https://www.upload.ee/image/15878953/_______.jpg)
Если в MPCVR отключить DXVA2/D3D11 VP, то артефакты усиливаются кратно.
В пот-плеере на встроенном D3D11 рендерере аппаратное ускорение на интерлейсных роликах тоже не работает, но деинтерлейс отрабатывает аппаратно и артефактов нет.
Что написано в окне Information при настройках по умолчанию?
31 октября 2023, 19:45:50Цитата: usalex от 31 октября 2023, 19:25:37Если в MPCVR отключить DXVA2/D3D11 VP, то артефакты усиливаются кратно.
В настройках можно включить шейдерный деинтелейс Blend.
в окне Information так:
Windows 11
DirectX 11
Graphics adapter: AMD Radeon 780M Graphics (1002:15BF)
VideoProcessor : D3D11, RateConversion_0
DeinterlaceTech.: Bob, Adaptive, Motion Compensation, Inverse Telecine
Reference Frames: Past 1, Future 1
Display: Panasonic-TV 1920x1080 59.940 Hz [Primary] windowed
Color: RGB 10-bit
Post scale pixel shaders:
Sharpen complex 2
Шейдерный деинтерлейс включить можно, но почему не работает аппаратный?
В пот-плеере работает именно аппаратный деинтерлейс, но аппаратное ускорение тоже не включается.
-----
Включил шейдерный деинтерлейс - фигово выглядит картинка :(
V0lt, если будет возможность, посмотри на AMD работает ли аппаратное ускорение на интерлейсном видео?
Тут не "не работает" аппаратный деинтерлейс, а MPC VR не поддерживает полноценную работу с ним.
Хотя с этими AMD все странно, у себя на Nvidia проверил - все отлично, хотя тоже "Future 1" есть но в MCP VR не используется на сколько я помню.
Цитата: Aleksoid1978 от 01 ноября 2023, 00:21:20MPC VR не поддерживает полноценную работу с ним
Починить нет возможности? На evr-cp деинтерлейс работает, но картинка на карточках AMD выглядит блеклой (как будто вывод идет в ограниченном диапазоне, а не в полном RGB).
Цитата: Aleksoid1978 от 01 ноября 2023, 00:21:20Тут не "не работает" аппаратный деинтерлейс, а MPC VR не поддерживает полноценную работу с ним.
По моему опыту, полноценная поддержка деинтерлейса если и отличается, то в нюансах/качетсве.
01 ноября 2023, 07:14:35У меня так на AMD
(https://i.ibb.co/RBJK0KG/amd-deinterlace.png) (https://ibb.co/RBJK0KG)
01 ноября 2023, 07:22:26Цитата: usalex от 31 октября 2023, 19:25:37Скриншот экрана с артефактами: (https://www.upload.ee/thumb/15878953/_______.jpg) (https://www.upload.ee/image/15878953/_______.jpg)
Имхо, проблема надумана. Ну есть некритичный призрак каната, но не гребенка же.
А артефакты выпирают, потому что "Sharpen complex 2" зачем-то включен.
01 ноября 2023, 07:28:36И напомню, что полезность скриншота работы MPC VR без статистики крайне мала. :-D
01 ноября 2023, 07:28:52Цитата: usalex от 01 ноября 2023, 05:28:39Починить нет возможности? На evr-cp деинтерлейс работает, но картинка на карточках AMD выглядит блеклой (как будто вывод идет в ограниченном диапазоне, а не в полном RGB).
Могу попробовать сымитировать полноценную поддержку деинтерлейса, если на выходных время будет. Посмотрю уйдет ли призрак каната на моей встройке AMD.
01 ноября 2023, 07:35:05EVR-CP работает в режиме DX9. В MPC VR он кстати тоже присутсвует.
А вообще интерлейс должен умереть. Кто в него вообще снимает?
Проблема не надумана. Просто на конкретно этом сэмпле артефакты не так сильны, а на реальных интерлейсных рипах - смотреть тяжко даже без шарпа. Интерлейсных рипов вполне достаточно - в основном это спортивные трансляции, которые я и смотрю.
Странно, что на твоей веге аппаратное ускорение работает, а на моей встройке - нет.
01 ноября 2023, 10:10:29Цитата: V0lt от 01 ноября 2023, 07:11:11Могу попробовать сымитировать полноценную поддержку деинтерлейса, если на выходных время будет. Посмотрю уйдет ли призрак каната на моей встройке AMD.
Спасибо!
А что значит "сымитировать"?
В общем имитация полноценного деинтерлейса для D3D11 в наличии давно, и включается так.
#define ENABLE_FUTUREFRAMES 1
Но это ничего не дает, призрак каната на месте.
Более того у меня картинка такая же, как на системном EVR. Почему катите бочку на MPC VR, мне непонятно.
Почему так? Это надо спрашивать у AMD.
На форуме для юзеров похожий вопрос есть (https://community.amd.com/t5/drivers-software/driver-issues-for-htpc-users/td-p/509675).
В теме AMD, Intel and Nvidia driver issues and last recommended version (https://forum.doom9.org/showthread.php?t=176013) об этом так же написано.
Цитата: V0lt от 04 ноября 2023, 23:31:01деинтерлейса для D3D11 в наличии давно, и включается так
Я не понял - деинтерлейсинг
уже включен в текущем билде MPCVR ? Если нет, то не мог бы собрать тестовый билд с включенным деинтерлейсингом?
Цитата: V0lt от 04 ноября 2023, 23:31:01Почему катите бочку на MPC VR, мне непонятно.
Потому, что в пот-плеере аппаратный деинтерлейс работает на его встроенном рендерере D3D11, а в MPCVR не работает.
Цитата: usalex от 05 ноября 2023, 06:18:40Потому, что в пот-плеере аппаратный деинтерлейс работает на его встроенном рендерере D3D11
Так может там типа как в madVR - вроде бы юзается D3D11, а по факту все внутренности крутятся на D3D9, тоже самое может быть и в Пот, когда нужно деинтерлейсить - обработка идет через D3D9.
Просто на том же думе9 в теме ругались именно на AMD + D3D11, виндовый проигрыватель чтоли тоже косячно с этим работает.
Цитата: Aleksoid1978 от 05 ноября 2023, 07:32:50вроде бы юзается D3D11, а по факту все внутренности крутятся на D3D9
не не не... если б было D3D9, это было бы сразу заметно по картинке - она была бы бледной (высветленной) - это реальный баг AMD. А на D3D11 картинка сочная.
Цитата: usalex от 05 ноября 2023, 06:18:40Я не понял - деинтерлейсинг уже включен в текущем билде MPCVR ? Если нет, то не мог бы собрать тестовый билд с включенным деинтерлейсингом?
Не поняли. Деинтерлейс всегда включен по умолчанию, дальше все зависит от драйвера и графического адаптера.
Я писал о другом.
ЦитироватьПотому, что в пот-плеере аппаратный деинтерлейс работает на его встроенном рендерере D3D11, а в MPCVR не работает.
Как вы поняли, что в PotPlayer "аппаратный деинтелейс"? Как вы поняли, что "аппаратный деинтелейс" реализован через D3D11 Video Processor?
05 ноября 2023, 09:46:49Цитата: usalex от 05 ноября 2023, 07:41:51не не не... если б было D3D9, это было бы сразу заметно по картинке - она была бы бледной (высветленной) - это реальный баг AMD. А на D3D11 картинка сочная.
Если речь о картинке после EVR, то это не абсолютный показатель. MPC VR тоже может использовать DX9, но картинка может быть немного другой.
05 ноября 2023, 10:09:00PS: Тестировал на такой сборке mpcvr_0.7.0.2152_dx11_deinterlacing_future_frames_Debug.zip (https://disk.yandex.ru/d/LKPmtavOINaE6w).
Цитата: V0lt от 05 ноября 2023, 09:39:56Как вы поняли, что в PotPlayer "аппаратный деинтелейс"?
В настройках пота указан именно аппаратный деинтерлейс. И если его там отключить, то появляются артефакты.
Цитата: V0lt от 05 ноября 2023, 09:39:56Как вы поняли, что "аппаратный деинтелейс" реализован через D3D11 Video Processor?
Никак. А как проверить?
Цитата: V0lt от 05 ноября 2023, 09:39:56Тестировал на такой сборке mpcvr_0.7.0.2152_dx11_deinterlacing_future_frames_Debug (https://disk.yandex.ru/d/LKPmtavOINaE6w)
А вот здесь деинтерлейс действительно включен. И он работает. Гостинг на веревке пропадает совсем. Но небольшие артефакты все же остаются. Поэтому, если оставлять такой вариант в рендерере, то опционально (с галкой), т.к. софтовый деитерлейсинг через LAV-декодер даёт лучший результат.
Цитата: V0lt от 04 ноября 2023, 23:31:01Это надо спрашивать у AMD.
На форуме для юзеров похожий вопрос есть (https://community.amd.com/t5/drivers-software/driver-issues-for-htpc-users/td-p/509675).
В теме AMD, Intel and Nvidia driver issues and last recommended version (https://forum.doom9.org/showthread.php?t=176013) об этом так же написано.
Да уж... эти драйверописатели совсем криворукие.
Но если гора не идет к Магомету...
Не мог бы попробовать добавить в EVR-CP обходной трюк, чтоб выводило в полном диапазоне 0-255 вместо ограниченного?
А то смотреть на серый вместо черного - вообще не вариант.
Цитата: usalex от 11 ноября 2023, 10:02:12Не мог бы попробовать добавить в EVR-CP обходной трюк, чтоб выводило в полном диапазоне 0-255 вместо ограниченного?
Это к теме не относится.
Добавь шейдер "16-235 to 0-255" в начало списка шейдеров кадра (pre-resize) для DX9. Все.
V0lt, привет!
На AMD при использовании MPCVR частота кадров при воспроизведении всегда ограничена частотой экрана (рефрешем).
Например, если видео 60fps, а частота дисплея 50Hz, то видео в плеере идет с частотой кадров не более, чем 50fps.
Если выбрать EVR-CP, то такого ограничения не происходит - видео идет с той частотой, на которой оно закодированно (это если V-Sync выключен. а если V-Sync включен, то тоже ограничивает fps величиной рефреша).
На NVIDIA нет никаких ограничений ни на EVR-CP, ни на MPCVR (ни при включенном, ни при выключенном V-Sync).
Понимаю, что, скорее всего, это очередная кривизна драйверов AMD, но не мог бы посмотреть - может, можно что-то сделать в MPCVR?
Цитата: usalex от 15 июля 2024, 12:11:59На AMD при использовании MPCVR частота кадров при воспроизведении всегда ограничена частотой экрана (рефрешем).
Ограничение не зависит от производителя графического адаптера.
Если выбрать EVR-CP, то такого ограничения не происходит - видео идет с той частотой, на которой оно закодированно (это если V-Sync выключен. а если V-Sync включен, то тоже ограничивает fps величиной рефреша).
Ограничение работает всегда, т.к. дисплей физически не сможет отрисовать большее количество кадров в секунду, чем его частота обновления. Просто иногда EVR-CP/D3D9 не контролирует время отрисовки на дисплей и часть кадров улетает в пустоту.
Цитата: 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
(https://www.upload.ee/thumb/16862473/120.png) (https://www.upload.ee/image/16862473/120.png)
А у AMD при выключенном V-Sync:
1) MPCVR=50fps(равен рефрешу)
2) EVR-CP=120fps(выше рефреша)
Цитата: 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 кадров в секунды в принципе не сможет показать.
Цитата: V0lt от 15 июля 2024, 18:42:10Причем тут MPC VR мне непонятно.
При том, что на MPCVR даже при выключенном V-Sync этот ролик идет с рывками и с дропами, в отличии от полной плавности на EVR-CP.
Вот мне и захотелось, чтоб на MPCVR тоже было плавно.
Дропы кадров там на любом рендерере, просто при отключенном V-Sync кадры выкидываются не в самом EVR-CP, а дальше. Поэтому EVR-CP рапартует о 120 fps, которых нет.
В MPC-VR в режиме DX9 можно похожее сделать (см. D3DPRESENT_INTERVAL_IMMEDIATE), но мы не будем такой ерундой заниматься ради больших циферок.
Дело не в "больших циферках", а в том, что на NVIDIA с MPCVR(d3d11) видео идет плавно при отключенном V-Sync, а на AMD видео идет рывками при тех же условиях.
Ладно, я всё понял. Проехали ))
15 июля 2024, 23:57:54
А вообще-то, похоже, что на AMD поведение (отображение в статистике) более правильное, чем на NVIDIA, у которой показывает фейковый fps и отсутствие пропущенных кадров.
Так что для AMD ничего править не надо.
V0lt, спасибо за разъяснения и извиняюсь, что отнял время.