1

Тема: Падение плеера при перемотке некоторых матрешек [Исправлено]

Проще говоря - сломан "MPC MKV Source" ну и алгоритмы перемотки, после последних изменений, связанных с видео-рендерерами. В результате чего, после открытия элементарных матрешек, при попытке их перемотать в произвольные места, плеер просто падает с кодом ошибки под номером 5.

Вот видеозапись с воспроизведением элементарного падения на элементарной матрешке.

Сам "проблемный" видео файл здесь.

Как воспроизвести падение? Да очень просто - открыть видео файл и перематывать его мышкой по шкале прогресса воспроизведения в произвольные места, как на видеозаписи. И в любом из мест проявится падение.

Как говорится - на раз, два, три...

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.

2

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Вообще то код ошибки 5 - это ошибка создания дампа.

Проверь без превьюшки.

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

3 (изменено: Evgeniy1990, 2019-10-03 16:51:21)

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Aleksoid1978 пишет:

Вообще то код ошибки 5 - это ошибка создания дампа.

А точно, тьфу, с толку сбила эта ошибка. Будь проклят этот UAC на десятке, точнее его самовольное авто-включение, как и антивируса-защитника.  Да что ты будешь делать, только выключишь всю эту хренотень десятки, как через некоторое время она сама самовольно автоматически запускается.... Вот после такого, так и хочется сказать в 1000101 раз - верните обратно поддержку XP, дабы не терпеть эту доставучесть корпорации Майкрософт.

Ладно, это всего лишь лирика...

Aleksoid1978 пишет:

Проверь без превьюшки.

Проверил, также падает.

Также проверил матрешку с главами и переход строго по главам, в итоге, падает даже при переходе на определенную, или же произвольную главу.

Уже, исходя из этого, можно сделать вывод, что встроенный MPC MKV Source имеет поломку. Но это еще не все. Тут также имеют место быть последние изменения, связанные с перемоткой.

Придется смотреть где и в каком месте происходит падение, а также искать с какого билда началась конкретно данная поломка.

Что же, начинаю поиск...

Прилагаю скриншот с местом падения.

Вот теперь стало ясно, что падение происходит именно в MPC Video Renderer, точнее в "DX9VideoProcessor.cpp".
Строка падения показана на самом скриншоте. Поломка именно в DX9. Раньше не падало - это 100%.

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.

4

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Падение не повторяется. :-|

Добавлено: 2019-10-03 20:14:38

Прилагаю скриншот с местом падения.

Не уверен, но похоже DXVA2 VP отвалился. :-)

В любом случае будет переделка касаемая видеопроцессоров DXVA2 и D3D11. Возможно этот баг сам уйдет.

5

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

V0lt пишет:

Падение не повторяется. :-|

И почему я не удивлен? Оно и понятно - типичные ответы в стиле - "я не смог воспроизвести у себя падение". smile

Не уверен, но похоже DXVA2 VP отвалился. :-)

Странно, что он как-то работает и выдает изображение. Но стоит только перемотать и бац - хана плееру.

В любом случае будет переделка касаемая видеопроцессоров DXVA2 и D3D11. Возможно этот баг сам уйдет.

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

В любом случае, я всегда в вас верю - вы сможете и преодолеете все! smile

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.

6

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Evgeniy1990
Я видео сделал, перематываю я там довольно усердно.

7 (изменено: Evgeniy1990, 2019-10-03 23:15:23)

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

V0lt пишет:

Я видео сделал, перематываю я там довольно усердно.

Попробуйте воспроизвести падение на Debug-билде MPC Video Renderer в режиме DX9, только не в самой студии, а в обычном состоянии.

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

Добавлено: 2019-10-04 00:01:48

V0lt

Вам проще всего в самой студии, именно в отладочной версии MPC Video Renderer, воспроизвести данное падение на матрешках, содержащих главы. Для этого достаточно просто поочередно переключаться мышкой на следующую главу в видео файлах, содержащих эти самые главы.

Вот, прилагаю для вас примеры.

P.S.

Aleksoid1978

Для вас аналогично.

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.

8

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Проверил, именно на Debug версии, на DX9(все настройки выставил дефолтные). Проверял и в студии и без.
Никакого падения - перематывал по разному, все гуд smile

Ах да - у меня же нет старого радеона )) Судя по скрину - ошибка именно в их дровах.

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

9

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Aleksoid1978 пишет:

Проверил, именно на Debug версии, на DX9(все настройки выставил дефолтные). Проверял и в студии и без.
Никакого падения - перематывал по разному, все гуд smile

Неудивительно...

Aleksoid1978 пишет:

Ах да - у меня же нет старого радеона )) Судя по скрину - ошибка именно в их дровах.

Ну началось... Теперь уже драйверы виноваты. Вот так ответ...

После таких ответов сидишь и думаешь - вот я "идиот", драйвера не в состоянии обновить или переустановить...

Вот серьезно, тот же EVR-CP использует тот же самый DX9 и при этом, на нем данного падения нет. А в MPC Video Renderer на том же DX9 падение есть, но его нет на DX11. О чем это говорит? Да о том, что причина явно не в драйверах.  Я даже, ради проверки и интереса, установил другие драйверы. В итоге, падение так и осталось, что еще раз доказало и подтвердило мои слова.

Ладно, как всегда, остается только сидеть и ждать переделки самих DX9 и DX11, как говорил V0lt.

Особенно меня интересует DX9. Он по всем здравым смыслам должен работать просто идеально (образно говоря), т.е. абсолютно нормально, как и на EVR-CP.

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.

10

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Да при чем здесь сам DX9 и VR. VR просто использует его для обработки/вывода картинки. Как можно сравнить EVR/EVR-CP и MPC VR, это совершенно разные вещи. И да - могут быть(да и 100% есть) разные косяки и т.д. Все таки все пишется самими, с нуля, без особых знаний и т.д.

Про дрова AMD я написал не для того чтобы "поругать" их, а просто факт того что видно на скрине. Ошибка в драйвере - а вот чем вызвано - не известно.

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

11

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Aleksoid1978 пишет:

Да при чем здесь сам DX9 и VR. VR просто использует его для обработки/вывода картинки. Как можно сравнить EVR/EVR-CP и MPC VR, это совершенно разные вещи. И да - могут быть(да и 100% есть) разные косяки и т.д. Все таки все пишется самими, с нуля, без особых знаний и т.д.

Умеете же вы удивлять. Исходя из вашего ответа, у каждого видео-рендерера свой собственный вариант этого DX9.

Aleksoid1978 пишет:

Про дрова AMD я написал не для того чтобы "поругать" их, а просто факт того что видно на скрине. Ошибка в драйвере - а вот чем вызвано - не известно.

Конечно ошибка "atiumd6a.dll". А все почему? Естественно в угоду RX с его иной логикой. Ведь новые радеоны работают иначе, чем старые. А как же компромисс?

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.

12

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Evgeniy1990
Сделай лог MPC VR, когда падает. Может что-нибудь высветиться.

Добавлено: 2019-10-05 08:36:45

Версию драйвера укажи еще. Надеюсь драйвер из стабильных.

13 (изменено: Evgeniy1990, 2019-10-05 22:23:49)

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

V0lt пишет:

Сделай лог MPC VR, когда падает. Может что-нибудь высветиться.

Сделал.

V0lt пишет:

Версию драйвера укажи еще. Надеюсь драйвер из стабильных.

Пожалуйста.

Разумеется, драйвер из стабильных - стабильная версия, полностью проверена и тщательно протестирована.
К тому же, я уже говорил ранее, что раньше данного падения не было. Он появилось как раз в тот момент, когда вы уклонились (взяли курс) в сторону Radeon RX-серии. Вот тогда-то и посыпались несчастья.

Первое, что меня смутило - это периодические переделки алгоритмов перемотки для MPC VR, якобы были зависания, при перемотке. Скажу абсолютно точно, никаких зависаний не было - ни на AMD, ни на NVIDIA подавно. Сам лично проверял и не один раз, к тому же, перематываю я видео файлы достаточно часто, не так уж и редко. Если бы действительно было нечто подобное, я бы молчать не стал. Вот отсюда и начались проблемы с перемоткой на MPC VR.

Далее, были изменения входного формата для AMD RX. После них, лично мной, было замечено, что плеер странно стал реагировать на P010. Странность в том, что при открытии происходит жестокое подвисание плеера (резко до 100% увеличивается на него нагрузка ровно на 1-2 секунды после чего видео файл открывается с микрофризами).

Ну, а уже после, - словил падения при перемотке матрешек.

Все эти беды и несчастья были именно на DX9. Так как я, в первую очередь, проверяю тщательно именно его.

До DX11 мы еще дойдем и доберемся. Там то же есть свои поломки, причем более жуткие, чем на DX9.

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.

14

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

По логу уж очень тихо падает, ни одной ошибки.
Релиз v0.3.2.860 так же себя ведет?

15

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

V0lt пишет:

По логу уж очень тихо падает, ни одной ошибки.
Релиз v0.3.2.860 так же себя ведет?

Попытка №2 - второй лог-файл. Посмотрите пожалуйста.

Еще отрезал один кусок мяса дрянной десятки. Теперь понятно, что ключом является именно DXVA2VPPass.

Релиз v0.3.2.860 так себя не ведет. Я проверил тщательно. Падения нет. Даже на матрешках с главами не падает.

Вот мы наконец-то и определили диапазон поиска поломки: [v0.3.2.860 -> v0.3.3.867].

Так что очевидно, что следующие изменения в MPC VR - некорректные.

Добавлено: 2019-10-06 00:23:16

V0lt

Продолжаю поиск проблемного изменения в GitHub.

Новый диапазон поиска: [v0.3.3.863 -> v0.3.3.867].

863 билд - не падает!

864 билд - падает!

Итоговый диапазон поиска: [v0.3.3.863 -> v0.3.3.864].

Вывод: коммит в GitHuib: 9fe173 является некорректным.
Данное изменение не работает для AMD-видеокарт.

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.

16

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Все верно - встроенный декодер на AMD при проигрывании H.264 при перемотке пересоздает DXVA2 декодер. А у нас получается что используем "устаревшую" текстуру.

Короче надо будет более тщательно потестировать.

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

17

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Aleksoid1978, сделай патч, пожалуйста, чтобы декодер вел себя так на всех видеокартах.
Хочу потестировать, проверить идеи.

18

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Index: src/filters/transform/MPCVideoDec/MPCVideoDec.cpp
===================================================================
--- src/filters/transform/MPCVideoDec/MPCVideoDec.cpp    (revision 4795)
+++ src/filters/transform/MPCVideoDec/MPCVideoDec.cpp    (working copy)
@@ -2688,7 +2688,7 @@
             InitDecoder(&m_pCurrentMediaType);
         }
 
-        if (UseDXVA2() && m_nCodecId == AV_CODEC_ID_H264 && m_nPCIVendor == PCIV_ATI) {
+        if (UseDXVA2() && m_nCodecId == AV_CODEC_ID_H264/* && m_nPCIVendor == PCIV_ATI*/) {
             HRESULT hr = ReinitDXVA2Decoder();
             if (FAILED(hr)) {
                 return hr;

Проверил у себя на Nvidia 960 с патчем - да, на каждую перемотку происходит пересоздание DXVA2 декодера(при просмотре H.264 контента). Но никакого падения smile

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

19

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Evgeniy1990
Выложил mpcvr-v0.3.3.868_dx9_dxva2vp_amd_1. Прошу проверить.

Патч:

Source/DX9VideoProcessor.cpp | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/Source/DX9VideoProcessor.cpp b/Source/DX9VideoProcessor.cpp
index 42df164..5c2b92d 100644
--- a/Source/DX9VideoProcessor.cpp
+++ b/Source/DX9VideoProcessor.cpp
@@ -998,6 +998,10 @@ BOOL CDX9VideoProcessor::InitMediaType(const CMediaType* pmt)
 void CDX9VideoProcessor::Start()
 {
     m_rtStart = 0;
+
+    if (m_bSrcFromGPU && m_pDXVA2_VP && m_VendorId == PCIV_AMDATI) {
+        m_SrcSamples.Resize(m_SrcSamples.Size(), m_srcExFmt.value);
+    }
 }
 
 void CDX9VideoProcessor::Stop()

Добавлено:
Увы, не работает.

20

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

V0lt пишет:

Evgeniy1990
Выложил mpcvr-v0.3.3.868_dx9_dxva2vp_amd_1. Прошу проверить.

Проверил тестовый билд. К сожалению, падает при перемотке матрешек.

Добавлено: 2019-10-06 12:43:31

V0lt

На всякий случай прилагаю лог-файл и скриншот со строкой падения в вашем тестовом билде.

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.

21

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Это скрин в декодере - а нужен в самом VR, ну самое последнее место в цепочке.

Добавлено: 2019-10-06 19:57:54

И вот попробуй - https://yadi.sk/d/9XgoQzKpcC63FA

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

22

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Aleksoid1978 пишет:

И вот попробуй - https://yadi.sk/d/9XgoQzKpcC63FA

Проверил тестовый билд. Прогнал несколько матрешек, в том числе и с главами.
В итоге, данного падения больше нет и оно более не проявляется вообще.

Наконец-то данное падение полностью устранено! Вы поняли причину и вам удалось его устранить! smile

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.

23

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Вот патч - https://yadi.sk/d/TfY_uwPMih_tvA
Я специально убрал проверку на AMD, т.к. по хорошему при перемотке в любом случае нам не нужны "старые" данные.

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

24 (изменено: Evgeniy1990, 2019-10-08 17:45:17)

Re: Падение плеера при перемотке некоторых матрешек [Исправлено]

Aleksoid1978 пишет:

Вот патч - https://yadi.sk/d/TfY_uwPMih_tvA
Я специально убрал проверку на AMD, т.к. по хорошему при перемотке в любом случае нам не нужны "старые" данные.

С вашим патчем - аналогично, не падает. Применил патч, собрал билд и проверил. В итоге - перемотка матрешек работает полностью нормально, без падений. Молодцы! wink

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.