MPC Video Renderer

Автор V0lt, 24 февраля 2018, 19:10:59

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

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

Aleksoid1978

Цитата: MPCfan от 17 марта 2021, 07:33:16
Aleksoid1978,
Возможно. Но если бы по ошибке использовался shaders vp в dx11 для ресайза, то некоторые файлы типа 4k h.264 60fps невозможно было бы воспроизвести без дропов на этой железяке.
Немного не так, я не совсем верно выразился - для ресайза использовался 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

Evgeniy1990

Aleksoid1978,
Обнаружил серьезную поломку - отвал режима FSE, после возвращения на DX9 API, при условии использования одной текущей сессии.
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

Цитата: Evgeniy1990 от 21 марта 2021, 08:25:29
Aleksoid1978,
Обнаружил серьезную поломку - отвал режима FSE, после возвращения на DX9 API, при условии использования одной текущей сессии.
Ничего не понятно.
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

Evgeniy1990

Aleksoid1978,
ЦитироватьНичего не понятно.
Алгоритм воспроизведения:

1. Открыть настройки MPC Video Renderer
2. Включить опции: "Use Direct3D 11" и "Use exclusive fullscreen"
3. Запустить произвольный видео файл (H.264)
4. Перейти в режим FSE
5. Выйти из режима FSE
6. Не закрывая текущую сессию, снова открыть настройки MPC Video Renderer
7. Выключить только опцию: "Use Direct3D 11"
8. Не закрывая текущую сессию, перезапустить произвольный видео файл (H.264)
9. Перейти в режим FSE

Фактический результат:

После выполнения данного алгоритма, при переходе в режим FSE, произойдет мертвое зависание самого режима FSE, при этом звук пойдет дальше.

Ожидаемый результат:

После выполнения данного алгоритма, при переходе в режим FSE, не должен намертво зависать сам режим FSE.
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.

usalex

Билд 1704 вроде бы направлен на исправление падений при использовании внешних фильтров.
Но на нем, как и на 1703 плеер падает при перемотке. Использую с LAV декодером.
При использовании встроенных декодеров падений нет.

Aleksoid1978

Перемотка и те исправления совершенно не про чем. По поводу паления в связке с LAV можно подробнее?
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 от 06 мая 2021, 14:55:57По поводу паления в связке с LAV можно подробнее?
Падает, когда кручу колесом вперед-назад. Это и в окне и в эксклюзиве происходит.
D3D11, Flip
LAV декодер тоже в режиме D3D11.

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

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, ну и ладно.
Встроенный декодер не хуже чем LAV. Буду его юзать.

usalex

Цитата: Aleksoid1978 от 06 мая 2021, 15:48:37
Именно падение, а не зависание.
Глухое зависание. А после нажатия на крестик - винда предлагает закрыть программу.

Evgeniy1990

V0lt
В последних билдах наблюдается плавающая проблема с пропаданием изображения (воспроизведения кадров), при условии использования D3D11 + Flip. Проявляется, в основном, при переходе в полноэкранные режимы.

Выглядит это примерно вот так.
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

Цитата: Evgeniy1990 от 14 мая 2021, 13:02:40
V0lt
В последних билдах наблюдается плавающая проблема с пропаданием изображения (воспроизведения кадров), при условии использования D3D11 + Flip. Проявляется, в основном, при переходе в полноэкранные режимы.

Выглядит это примерно вот так.

Собирай Debug билд и смотри при это что в логе.
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

Evgeniy1990

Aleksoid1978,
ЦитироватьСобирай Debug билд и смотри при это что в логе.
Собрал Debug-билд, воспроизвел плавающую проблему (баг) и посмотрел лог-файл.
В нем есть достаточное количество строк с таким вот сообщением:

00000790 394.12179565 [6644] MpcVideoRenderer64.ax(tid 1e70)   394123 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000791 394.16375732 [6644] MpcVideoRenderer64.ax(tid 1e70)   394165 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000792 394.20574951 [6644] MpcVideoRenderer64.ax(tid 1e70)   394207 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000793 394.24584961 [6644] MpcVideoRenderer64.ax(tid 1e70)   394247 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000794 394.28787231 [6644] MpcVideoRenderer64.ax(tid 1e70)   394289 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000795 394.32992554 [6644] MpcVideoRenderer64.ax(tid 1e70)   394331 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000796 394.37179565 [6644] MpcVideoRenderer64.ax(tid 1e70)   394373 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000797 394.41293335 [6644] MpcVideoRenderer64.ax(tid 1e70)   394414 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000798 394.45483398 [6644] MpcVideoRenderer64.ax(tid 1e70)   394456 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000799 394.49978638 [6644] MpcVideoRenderer64.ax(tid 1e70)   394501 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000800 394.53976440 [6644] MpcVideoRenderer64.ax(tid 1e70)   394541 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000801 394.57983398 [6644] MpcVideoRenderer64.ax(tid 1e70)   394581 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000802 394.62078857 [6644] MpcVideoRenderer64.ax(tid 1e70)   394622 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000803 394.66473389 [6644] MpcVideoRenderer64.ax(tid 1e70)   394666 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000804 394.70574951 [6644] MpcVideoRenderer64.ax(tid 1e70)   394707 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000805 394.74884033 [6644] MpcVideoRenderer64.ax(tid 1e70)   394750 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000806 394.79077148 [6644] MpcVideoRenderer64.ax(tid 1e70)   394792 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000807 394.82873535 [6644] MpcVideoRenderer64.ax(tid 1e70)   394830 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000808 394.87286377 [6644] MpcVideoRenderer64.ax(tid 1e70)   394874 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000809 394.91799927 [6644] MpcVideoRenderer64.ax(tid 1e70)   394917 : CDX11VideoProcessor::Render() : GetBuffer() failed with error DXGI_ERROR_INVALID_CALL
00000810 394.91833496 [6644] MpcVideoRenderer64.ax(tid 1748)   394917 : CMpcVideoRenderer::Pause()
00000811 394.92077637 [6644] MpcVideoRenderer64.ax(tid 1748)   394919 : CMpcVideoRenderer::BeginFlush()
00000812 394.96817017 [6644] MpcVideoRenderer64.ax(tid 1748)   394969 : CMpcVideoRenderer::EndFlush()
00000813 394.96942139 [6644] MpcVideoRenderer64.ax(tid a6c)   394970 : CMpcVideoRenderer::NewSegment()
00000814 394.97280884 [6644] MpcVideoRenderer64.ax(tid 22ec)   394974 : CMpcVideoRenderer::Stop()
00000815 394.97302246 [6644] MpcVideoRenderer64.ax(tid 22ec)   394974 : CMpcVideoRenderer::BeginFlush()
00000816 394.98077393 [6644] MpcVideoRenderer64.ax(tid 22ec)   394982 : CMpcVideoRenderer::EndFlush()
00000817 394.98483276 [6644] MpcVideoRenderer64.ax(tid 22ec)   394986 : CVideoRendererInputPin::ReceiveConnection()
00000818 394.98498535 [6644] MpcVideoRenderer64.ax(tid 22ec)   394986 : CMpcVideoRenderer::SetMediaType()
00000819 394.98498535 [6644] MajorType : Video
00000820 394.98498535 [6644] SubType   : NV12
00000821 394.98498535 [6644] FormatType: VideoInfo2
00000822 394.98498535 [6644] BimapSize : 720 x 480
00000823 394.98498535 [6644] SourceRect: (0, 0, 720, 480)
00000824 394.98498535 [6644] SizeImage : 518400 bytes
00000825 394.98507690 [6644] MpcVideoRenderer64.ax(tid 22ec)   394986 : CDX11VideoProcessor::InitMediaType()
00000826 394.98510742 [6644] MpcVideoRenderer64.ax(tid 22ec)   394986 : CDX11VideoProcessor::ReleaseVP()
00000827 451.81625366 [6644] MpcVideoRenderer64.ax(tid 22ec)   451816 : CDX11VideoProcessor::InitializeD3D11VP() started with input surface: NV12, 720 x 480
00000828 451.81628418 [6644] MpcVideoRenderer64.ax(tid 22ec)   451817 : CDX11VideoProcessor::InitializeD3D11VP() : CreateVideoProcessorEnumerator() failed with error DXGI_ERROR_DEVICE_REMOVED
00000829 451.81671143 [6644] MpcVideoRenderer64.ax(tid 22ec)   451817 : CDX11VideoProcessor::InitializeD3D11VP() : InitVideoProcessor() failed with error DXGI_ERROR_DEVICE_REMOVED
00000830 451.81689453 [6644] MpcVideoRenderer64.ax(tid 22ec)   451817 : CDX11VideoProcessor::ReleaseVP()
00000831 451.81747437 [6644] MpcVideoRenderer64.ax(tid 22ec)   451817 : CDX11VideoProcessor::InitializeTexVP() started with input surface: NV12, 720 x 480
00000832 451.81768799 [6644] MpcVideoRenderer64.ax(tid 22ec)   451818 : CDX11VideoProcessor::InitializeTexVP() : m_TexSrcVideo.CreateEx() failed with error DXGI_ERROR_DEVICE_REMOVED
00000833 451.81784058 [6644] MpcVideoRenderer64.ax(tid 22ec)   451818 : CDX11VideoProcessor::InitMediaType()
00000834 451.81784058 [6644] MpcVideoRenderer64.ax(tid 22ec)   451818 : CDX11VideoProcessor::ReleaseVP()
00000835 452.65588379 [6644] MpcVideoRenderer64.ax(tid 22ec)   452656 : CDX11VideoProcessor::InitializeD3D11VP() started with input surface: NV12, 720 x 480
00000836 452.65597534 [6644] MpcVideoRenderer64.ax(tid 22ec)   452656 : CDX11VideoProcessor::InitializeD3D11VP() : CreateVideoProcessorEnumerator() failed with error DXGI_ERROR_DEVICE_REMOVED
00000837 452.65634155 [6644] MpcVideoRenderer64.ax(tid 22ec)   452656 : CDX11VideoProcessor::InitializeD3D11VP() : InitVideoProcessor() failed with error DXGI_ERROR_DEVICE_REMOVED
00000838 452.65682983 [6644] MpcVideoRenderer64.ax(tid 22ec)   452656 : CDX11VideoProcessor::ReleaseVP()
00000839 452.65695190 [6644] MpcVideoRenderer64.ax(tid 22ec)   452657 : CDX11VideoProcessor::InitializeTexVP() started with input surface: NV12, 720 x 480
00000840 452.65750122 [6644] MpcVideoRenderer64.ax(tid 22ec)   452657 : CDX11VideoProcessor::InitializeTexVP() : m_TexSrcVideo.CreateEx() failed with error DXGI_ERROR_DEVICE_REMOVED
00000841 452.65765381 [6644] MpcVideoRenderer64.ax(tid 22ec)   452657 : Failed to set the media type or failed to complete the connection.
00000842 452.65786743 [6644] MpcVideoRenderer64.ax(tid 22ec)   452658 : CVideoRendererInputPin::ReceiveConnection()
00000843 452.65792847 [6644] MpcVideoRenderer64.ax(tid 22ec)   452658 : CMpcVideoRenderer::SetMediaType()
00000844 452.65792847 [6644] MajorType : Video
00000845 452.65792847 [6644] SubType   : NV12
00000846 452.65792847 [6644] FormatType: VideoInfo2
00000847 452.65792847 [6644] BimapSize : 720 x 480
00000848 452.65792847 [6644] SourceRect: (0, 0, 720, 480)
00000849 452.65792847 [6644] SizeImage : 518400 bytes
00000850 452.65802002 [6644] MpcVideoRenderer64.ax(tid 22ec)   452658 : CDX11VideoProcessor::InitMediaType()
00000851 452.65863037 [6644] MpcVideoRenderer64.ax(tid 22ec)   452658 : CDX11VideoProcessor::ReleaseVP()
00000852 460.16912842 [3948] Suspending


P.S. На всякий случай, прилагаю сам лог-файл.
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

#1514
Aleksoid1978,
Хуже всего то, что после этого происходит полный обрыв самого видео-рендерера. Потому что, в конечном итоге, мы имеет статус в PinInfo: Not connected. Обрыв, т.е. отделение (обрезание) фильтра MPC Video Renderer от основного графа фильтров.
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.