Автор Тема: MPC Video Renderer  (Прочитано 72277 раз)

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

MPCfan

  • Постоялец
  • ***
  • Сообщений: 129
Re: MPC Video Renderer
« Ответ #1230 : 08 Август 2020, 14:23:01 »
V0lt,
Проверил  mpcvr_1452_dx11_choma_7_bilinear_crop на intelhd5500, на нем полос нет с самураями и кловерфилдом в связке dx11native+shaders VP в частности с bilinear. Единственно, полосы появляются, если "на лету" переключиться на Catmull-Rom, на самураях справа, на кловерфилде снизу. Но если перезапустить файлы, полосы исчезают. Похоже "на лету" не срабатывает фикс issue #16 для Catmull-Rom.
« Последнее редактирование: 08 Август 2020, 14:28:01 от MPCfan »

V0lt

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 1810
Re: MPC Video Renderer
« Ответ #1231 : 09 Август 2020, 09:24:56 »
Без изменений, два скриншота > https://yadi.sk/d/H6dCfz8pYNafEQ
PS. Вот смотрю на свои скриншоты через яндекс и понимаю, что там трудно что-то разглядеть, особенно с самураями.
Видно на черном фоне. Для монитора TN надо смотреть немного сверху.
Цитировать
Единственно, полосы появляются, если "на лету" переключиться на Catmull-Rom, на самураях справа, на кловерфилде снизу.
Фикс срабатывает только в начале воспроизведения.

Добавлено:
У меня на GTX 950 никаких полосок нет. Что не так с GT 730M - непонятно. Но на всякий случай заменил 0.5 на 0.51 и собрал еще одну сборку для проверки.
mpcvr_1452_dx11_choma_7-1_bilinear_crop

MPCfan

  • Постоялец
  • ***
  • Сообщений: 129
Re: MPC Video Renderer
« Ответ #1232 : 09 Август 2020, 12:27:03 »
V0lt,
У меня на GTX 950 никаких полосок нет. Что не так с GT 730M - непонятно. Но на всякий случай заменил 0.5 на 0.51 и собрал еще одну сборку для проверки.
mpcvr_1452_dx11_choma_7-1_bilinear_crop
На этом тест-билде полос нет с bilinear

V0lt

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 1810
Re: MPC Video Renderer
« Ответ #1233 : 09 Август 2020, 15:45:53 »
MPCfan
Если 7 сборка с полосой, а 7-1 без, то скорее всего в GT 730M меньшая точность вычислений.

MPCfan

  • Постоялец
  • ***
  • Сообщений: 129
Re: MPC Video Renderer
« Ответ #1234 : 09 Август 2020, 16:23:05 »
V0lt,
Решил на всякий случай проверить работу dx11native с этими файлами на MadVR. Оказывается, это работает на GT730M, причём только с шейдерами, chroma upsampling=bilinear/downscaling=cubic. Полос нет.

V0lt

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 1810
Re: MPC Video Renderer
« Ответ #1235 : 10 Август 2020, 03:08:42 »
Есть одна мысль по оптимизации.

Примеры размеров кадров видео FullHD после разных декодеров:
софтовый - 1920x1080
аппаратный H.264 - 1920x1088
аппаратный HEVC - 1920x1152
Видим, что аппаратным декодерам бывает нужна кратность по высоте. Скорее всего это связано с размерами макроблоков.

Видеопроцессорам такая кратность по высоте не требуется. Поэтому можно сделать обрезку снизу на этапе копирования, если для копирования используются memcpy или CopySubresourceRegion.

V0lt

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 1810
Re: MPC Video Renderer
« Ответ #1236 : 24 Август 2020, 02:59:05 »
Релиз MPC Video Renderer 0.4.9.1460.
Описание на русском.
Описание на английском.

Изменения:
Теперь для генерации шрифта статистики используется DirectWrite вместо GDI +.
Оптимизирована отрисовка статистики.
Исправлен расчет частоты кадров входного потока.
Убрана ненужная инициализация объектов DirectX.
Добавлена возможность увеличения статистики для большого размера окна.
Удалена настройка «Перейти в эксклюзивный режим после небольшой задержки».
Добавлена поддержка эксклюзивного полного экрана в режиме DX11.
Улучшена поддержка эксклюзивного полного экрана в режиме DX9.
Для компиляции в Visual Studio 2017 теперь требуется Windows SDK 10.0.17763.0.
Добавлена поддержка Swap effect "Discard" в эксклюзивном полном экране для режима DX11.
Убраны зеленые полосы справа и снизу при использовании декодера D3D11 на видеокартах AMD.
Параметр "Chroma scaling" переименован в "Chroma upsampling" и добавлено значение "Nearest-neighbor".
Добавлена информация в экранную статистику и в окно "Information".
Рекомендуемая версия MPC-BE 1.5.5.5369 или новее.

Evgeniy1990

  • Ветеран
  • *****
  • Сообщений: 1453
Re: MPC Video Renderer
« Ответ #1237 : 01 Сентябрь 2020, 12:52:38 »
Прогнал последний Git-билд. Обнаружил проблемы:

1. Мертвое зависание, при выходе из режима FSE в окно со второго монитора на первый (основной).
2. Видео файлы с частотой кадров 59.94 FPS теперь вообще воспроизводятся некорректно. Вместо 59.94 FPS, видео-рендерер выдает максимум 49.99 (50 кадров), с упадками до 47.87 FPS. Класс!!! О_о

Прогонку выполнял на совершенно чистой системе, на видеокарте NVIDIA GTX 960 с последними актуальными драйверами.
Motherboards: ASUS P5Q/GIGABYTE EP35C-DS3R, CPU: Core 2 Duo E8300/E8400, Memory: DDR2/DDR3, Video: MSI GTX 465/ASUS EAH5770/GTX 650 Ti, Audio: ASUS Xonar DG 5.1/Creative SB 5.1. VX/X-Fi Xtreme Gamer.

Aleksoid1978

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2208
Re: MPC Video Renderer
« Ответ #1238 : 01 Сентябрь 2020, 23:32:17 »
Переход FSE на разных экранах не могу пока проверить, а вот проигрывание 59.94fps отличное. Покажи скрин с включенной статистикой.
I7 2600K@4.2 / Asrock P67 Extreme 4 Gen 3 / Kingston HyperX 8Gb 1866 (4x2) Kit / GIGABYTE GTX 960 / BenQ EW2430 / LG 47LM620T / Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

Evgeniy1990

  • Ветеран
  • *****
  • Сообщений: 1453
Re: MPC Video Renderer
« Ответ #1239 : 02 Сентябрь 2020, 09:40:37 »
а вот проигрывание 59.94fps отличное. Покажи скрин с включенной статистикой.
С частотой кадров 59.94 FPS не все так просто. Дело в том, что данная проблема с данной частотой проявляется в режиме мультимониторности на новых видеокартах от NVIDIA, т.е. когда задействован второй монитор.

Алгоритм воспроизведения достаточно простой:

1. Загрузить ОС Windows на первом (основном) мониторе
2. В панели управления NVIDIA включить второй монитор
3. Запустить видео файл с частотой кадров 59.94 FPS

Фактический результат: во время воспроизведения можно увидеть в свойствах видео-рендерера пропуски видео кадров подряд.
При этом частота кадров будет скакать от 56 до 61 FPS (в среднем от 59.87 до 60).

Это в обычном случае. Но, бывает, что при задействованном втором мониторе, при открытии таких видео файлов с такой частотой кадров 59.94 FPS, частота и вовсе может быть гораздо ниже, как в моем случае вчера. Причем, заметно даже невооруженным взглядом, как видео кадры во время воспроизведения слегка дрожат (происходит потеря плавности воспроизведения).

P.S. Пытаюсь сейчас воспроизвести вчерашнюю ситуацию, когда частота кадров и вовсе была максимум 50 кадров, но пока, к сожалению, получаю только то, что сказал выше - это скачки от 59.87 до 60 кадров с пропусками кадров в режиме мультимониторности. Хотя и этого уже достаточно, чтобы подтвердить проблемы. А их, по факту, две - это скачки частоты кадров и что еще хуже - пропуски кадров во время воспроизведения, причем подряд.
Motherboards: ASUS P5Q/GIGABYTE EP35C-DS3R, CPU: Core 2 Duo E8300/E8400, Memory: DDR2/DDR3, Video: MSI GTX 465/ASUS EAH5770/GTX 650 Ti, Audio: ASUS Xonar DG 5.1/Creative SB 5.1. VX/X-Fi Xtreme Gamer.

Evgeniy1990

  • Ветеран
  • *****
  • Сообщений: 1453
Re: MPC Video Renderer
« Ответ #1240 : 02 Сентябрь 2020, 09:55:19 »
Aleksoid1978,

Чтобы вам воспроизвести у себя проблему с частотой кадров 59.94 FPS, предлагаю вам воспользоваться этой ссылкой на видео файл с данной частотой кадров: https://www.youtube.com/watch?v=8H416bB4pqM

Еще один способ получения проблемы:

1. Включить мультимониторность
2. Открыть данное видео на первом основном мониторе
3. Открыть статистику видео-рендерера
4. Включить вывод изображения на полный экран для второго монитора
5. Перейти в полноэкранный режим
6. Снять фокус мышки с окна плеера
7. Запустить, например, браузер, пролистав в нем любую страницу
8. Не закрывая его, вернутся обратно к плееру и выйти из полноэкранного режима с включенной статистикой видео рендера

В итоге, при возвращении на первый (основной) монитор, можно несколько секунд наблюдать как пропуски кадров, в ускоренном темпе, будут нарастать, а спустя несколько секунд, остановятся, но продолжатся подряд в обычном режиме.

Такая вот хитрая и скрытая проблема.
Motherboards: ASUS P5Q/GIGABYTE EP35C-DS3R, CPU: Core 2 Duo E8300/E8400, Memory: DDR2/DDR3, Video: MSI GTX 465/ASUS EAH5770/GTX 650 Ti, Audio: ASUS Xonar DG 5.1/Creative SB 5.1. VX/X-Fi Xtreme Gamer.

Evgeniy1990

  • Ветеран
  • *****
  • Сообщений: 1453
Re: MPC Video Renderer
« Ответ #1241 : 02 Сентябрь 2020, 10:01:06 »
Aleksoid1978,
Цитировать
Переход FSE на разных экранах не могу пока проверить
Что касается мертвого зависания, при выходе из режима FSE со второго монитора на первый (основной), так оно проявляется только один раз, после загрузки операционной системы. Чтобы его получить (воспроизвести), нужно перезагрузить систему.

Раньше, в основном, такая проблема была при переходе в режим FSE, теперь наоборот - при выходе из него. Но почему-то это происходит именно на видеокартах от NVIDIA.
Motherboards: ASUS P5Q/GIGABYTE EP35C-DS3R, CPU: Core 2 Duo E8300/E8400, Memory: DDR2/DDR3, Video: MSI GTX 465/ASUS EAH5770/GTX 650 Ti, Audio: ASUS Xonar DG 5.1/Creative SB 5.1. VX/X-Fi Xtreme Gamer.

Evgeniy1990

  • Ветеран
  • *****
  • Сообщений: 1453
Re: MPC Video Renderer
« Ответ #1242 : 02 Сентябрь 2020, 10:06:41 »
Aleksoid1978,
Для одного монитора частота кадров 59.94 FPS работает также некорректно, хоть это и выглядит как нормальная работа, но на самом деле это далеко не так. Она не должна скакать в диапазоне от 59.87 до 60 FPS. Достаточно сравнить ее работу с EVR-CP и убедиться, что она некорректно работает на MPC-VR, поскольку на EVR-CP она всегда строго именно 59.94 FPS и никакая другая.
Motherboards: ASUS P5Q/GIGABYTE EP35C-DS3R, CPU: Core 2 Duo E8300/E8400, Memory: DDR2/DDR3, Video: MSI GTX 465/ASUS EAH5770/GTX 650 Ti, Audio: ASUS Xonar DG 5.1/Creative SB 5.1. VX/X-Fi Xtreme Gamer.

V0lt

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 1810
Re: MPC Video Renderer
« Ответ #1243 : 02 Сентябрь 2020, 16:47:31 »
Для одного монитора частота кадров 59.94 FPS работает также некорректно, хоть это и выглядит как нормальная работа, но на самом деле это далеко не так. Она не должна скакать в диапазоне от 59.87 до 60 FPS. Достаточно сравнить ее работу с EVR-CP и убедиться, что она некорректно работает на MPC-VR, поскольку на EVR-CP она всегда строго именно 59.94 FPS и никакая другая.
На основном дисплее проблема только в мгновенном значении частоты кадров?
Дык, в EVR-CP тоже постоянно меняется "Frame rate".

У меня на основном дисплее кадры не выпадают, график ровный, визуально проблем не заметил (да и не увидеть на таком видео).


На дополнительном дисплее корректно будет работать в эксклюзивном режиме, или в случае, если оба дисплея одинаковые и работают на одной частоте.
« Последнее редактирование: 02 Сентябрь 2020, 17:06:37 от V0lt »

Aleksoid1978

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2208
Re: MPC Video Renderer
« Ответ #1244 : 02 Сентябрь 2020, 23:21:34 »
У меня тоже все отлично с проигрыванием, не знаю что у кого там "скачет" :)
I7 2600K@4.2 / Asrock P67 Extreme 4 Gen 3 / Kingston HyperX 8Gb 1866 (4x2) Kit / GIGABYTE GTX 960 / BenQ EW2430 / LG 47LM620T / Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215