-
Notifications
You must be signed in to change notification settings - Fork 118
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
System.AccessViolationException occurred in D3DRenderer #89
Comments
Do you use EVR or VMR9 presenter? Maybe it's a WPF bug, e.g. see https://social.msdn.microsoft.com/Forums/vstudio/en-US/621c4621-d494-4c02-8dd8-8b293e7b1ee1/access-violation-when-switching-monitor-mode?forum=wpf |
Using EVR Presenter. The crash is only happening if TWO or more monitors are connected. It seems it doesnt happen if only one monitor is connected to the PC. |
Try VMR9 presenter. IMHO it's better than WPF-MediaKit EVR presenter. (I do not think VMR9 is generally better than EVR, just this this implementation of EVR is not perfect.) |
Sorry , it is not the number of monitors connected to the PC that is causing the crash. Do you know how can I prevent backBuffer(i.e, pointer) from accessing protected memory? |
It works for well for me and many others. You have either some other problem in your setup or you have hit some WPF bug. Try VMR9 renderer. |
I'm having the same symptom (callstack crash). I have my videos set to VMR9 too. I simply have a single screen setup, then whilst videos are playing plugin another screen to the setup and pop with an access violation. |
How do play your videos on another screen? Can you reproduce the bug somehow with the Test Application? I use playing video on another screen - i.e. open WPF Window window on another screen with the player - and it works fine. |
I have a couple of videos playing on the primary screen only. i dont put them on the secondary screen or move them at all. where can i find the test application? |
You have written "then whilst videos are playing plugin another screen". |
Hi,
I get the following exception in D3DRenderer in SetBackBufferInternal():
System.AccessViolationException occurred. An attempt was made to read or write in the protected memory. This is often an indication that other memory is corrupted.
StackTrace:
bei MS.Win32.PresentationCore.UnsafeNativeMethods.InteropDeviceBitmap.Create(IntPtr d3dResource, Double dpiX, Double dpiY, UInt32 version, FrontBufferAvailableCallback pfnCallback, Boolean isSoftwareFallbackEnabled, SafeMILHandle& ppInteropDeviceBitmap, UInt32& pixelWidth, UInt32& pixelHeight)
bei System.Windows.Interop.D3DImage.SetBackBuffer(D3DResourceType backBufferType, IntPtr backBuffer, Boolean enableSoftwareFallback)
bei Vdi.VideoFramework.MediaPlayer.D3DRenderer.SetBackBufferInternal(IntPtr backBuffer) in D:\Sources\Repository\Main\Components\VideoFramework_2015\SourceCode\VideoFramework\MediaPlayer\D3DRenderer.cs:Zeile 387.
Any workaround for this exception?
The text was updated successfully, but these errors were encountered: