Seungha Yang
4c19962997
d3d11colorconverter: Allow setting alpha value to use
...
... used for reordering case for now. In other words, non-alpha formats
such as NV12 is not supported case yet.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1323 >
2020-10-16 17:02:15 +00:00
Seungha Yang
ca87289e56
d3d11colorconverter: Add support conversion with blending
...
This is pre-work for d3d11compositor support
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1323 >
2020-10-16 17:02:15 +00:00
Seungha Yang
94ac3cc94d
d3d11colorconverter: Add method to support updating destination rect
...
It's equivalent to GST_VIDEO_CONVERTER_OPT_DEST_* options of GstVideoConverter
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1323 >
2020-10-16 17:02:15 +00:00
Seungha Yang
5c7caf70e1
d3d11: Clarify target rect to be updated
...
Rename internal methods to clarify which rect (i.e., input or output)
should be updated
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1323 >
2020-10-16 17:02:15 +00:00
Seungha Yang
ea24a2e527
d3d11: Add support for packed 8bits 4:2:2 YUV formats
...
Note that newly added formats (YUY2, UYVY, and VYUY) are not supported
render target view formats. So such formats can be only input of d3d11convert
or d3d11videosink. Another note is that YUY2 format is a very common
format for hardware en/decoders on Windows.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1581 >
2020-09-18 14:47:21 +00:00
Seungha Yang
5074cecc82
d3d11colorconverter: Add support cropping
...
Vertex buffer will be updated if input texture resolution is different
from GstVideoInfo or when an user requests specific crop area.
2020-03-09 23:44:06 +09:00
Seungha Yang
96f0f4b613
d3d11memory: Always use native DXGI format if device support it
...
Use consistent memory layout between dxva and other shader use case.
For example, use DXGI_FORMAT_NV12 texture format instead of
two textures with DXGI_FORMAT_R8_UNORM and DXGI_FORMAT_R8G8_UNORM.
2020-01-13 01:58:08 +00:00
Seungha Yang
49a1f022fd
d3d11colorconverter: Handle P016_LE format
...
P016 format is no different than P010. Not much things to add code.
2020-01-09 16:29:47 +00:00
Seungha Yang
bbab229905
d3d11colorconverter: Add support for YUV to YUV conversion
2020-01-09 16:29:47 +00:00
Seungha Yang
a122f305f9
d3d11colorconverter: Add support for RGB to YUV conversion
...
... and remove code for RGBx since it's not supported format
by our d3d11 implementation for now.
2020-01-09 16:29:47 +00:00
Seungha Yang
46186356ca
d3d11colorconverter: Fix unmatched lock/unlock pair
2019-12-28 05:43:44 +00:00
Seungha Yang
487a41d312
d3d11videosink: Add support for overlay composition
...
Add d3d11overlaycompositor object to draw overlay image
on render target using Blend method.
2019-12-24 19:00:45 +09:00
Seungha Yang
a5295509af
d3d11: Enable dxgi debug layer and always try to pop d3d11/dxgi debug message if possible
...
Note that dxgi and d3d11 sdk debug will be enabled on debug build
2019-12-24 19:00:40 +09:00
Seungha Yang
0788492461
d3d11: Use GRecMutex to protect immediate context and dxgi API call
...
In some cases, rendering and dxgi (e.g., swapchain) APIs should be
called from window message pump thread, but current design (dedicated d3d11 thread)
make it impossible. To solve it, change concurrency model to locking based one
from single-thread model.
2019-12-20 19:21:03 +09:00
Seungha Yang
59295b4271
d3d11: Fix ID3D11SamplerState leak
2019-12-11 12:57:46 +00:00
Aaron Boxer
e9891dfe14
d3d11: translate windows error codes to human readable strings
...
This will help with debugging.
2019-12-07 16:09:03 -06:00
Seungha Yang
ca3ddf7848
d3d11videosink: Add color conversion support
...
Draw to back buffer texture directly. It would reduce the number of
copy at least once when color conversion is required.
2019-12-05 02:29:18 +00:00
Seungha Yang
c9cb08fcd4
d3d11colorconvert: Split color space converter to reuse code
2019-12-05 02:29:18 +00:00