[Bug 706566] d3dvideosink: bufferpool implementation does not work well with device-lost/resets
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Mon Sep 2 03:12:41 PDT 2013
https://bugzilla.gnome.org/show_bug.cgi?id=706566
GStreamer | gst-plugins-bad | 1.x
--- Comment #4 from Andoni Morales <ylatuya at gmail.com> 2013-09-02 10:12:38 UTC ---
Created an attachment (id=253819)
View: https://bugzilla.gnome.org/attachment.cgi?id=253819
Review: https://bugzilla.gnome.org/review?bug=706566&attachment=253819
0001-d3dvideosink-disable-buffer-pools.patch
This patch disables the buffers pool for now.
I have been trying to use textures instead of surfaces, but it seems like
textures created in the MANAGED pool can't be locked, so it's a dead end too.
There is still one last thing to test, which is using the IDirect3DDevice9Ex
(with the "Ex" suffix), which does not require recreating textures after
resetting the device:
http://msdn.microsoft.com/en-us/library/windows/desktop/bb219800%28v=vs.85%29.aspx
"In previous versions of DirectX, when an application experienced a mode
change, the only way to recover was to reset the device and re-create all video
memory resources and swap chains. Now with DirectX for Windows Vista, calling
Reset after a mode change does not cause texture memory surfaces, textures and
state information to be lost and these resources do not need to be recreated."
This API is not available in windows XP so we should use a wrapper for the 2
interfaces and fallback properly in XP disabling the buffer pool.
The
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list