Aaron Boxer
c8193b1615
d3dvideosink: hold class lock for entire duration of class destruction
...
This avoids a race condition currently when temporarily releasing the
lock and then re-acquiring.
2019-12-18 13:15:06 -05:00
Aaron Boxer
7cb6dbefba
d3dvideosink: improve concurrency on hidden window create/destroy
2019-12-18 13:15:06 -05:00
Aaron Boxer
eff0117b5a
d3dvideosink: use thread pool to handle events from hidden window event queue
...
window event queue now does not lock on the class lock, so we can now shut
it down without releasing the class lock, thus avoiding a potential race when
stopping the sink.
2019-12-18 13:15:06 -05:00
Aaron Boxer
027eb5ef20
d3dvideosink: improve concurrency on internal window create/destroy
...
Remove timeout and rely on condition variable instead to indicate thread
start.
2019-12-18 13:15:06 -05:00
Aaron Boxer
adfbce336a
d3dvideosink: only warn about HWND already set if new HWND is not NULL
2019-12-18 13:15:06 -05:00
Aaron Boxer
84403dbae3
d3dvideosink: add more null checks
2019-12-18 13:15:05 -05:00
Aaron Boxer
06862d7ff5
d3dvideosink: check ref count and device before resetting display
2019-12-18 13:15:05 -05:00
Aaron Boxer
85c1550b92
d3dvideosink: use class lock when checking d3d formats, and cache format list
2019-12-18 13:15:05 -05:00
Aaron Boxer
d7af30bab9
d3dvideosink: destroy device just before final d3d release call
...
and free overlays after swap chain is released
2019-12-18 13:15:05 -05:00
Aaron Boxer
5e3520a302
d3dvideosink: add two forward declarations
2019-12-18 13:15:05 -05:00
Aaron Boxer
49211bdf74
d3dvideosink: use class lock when setting pool config
2019-12-18 13:15:05 -05:00
Aaron Boxer
fb6c2e8533
d3dvideosink: use class lock when allocating pool buffer
2019-12-18 13:15:05 -05:00
Aaron Boxer
52254ad31c
d3dvideosink: use class lock when creating overlay textures
2019-12-18 13:15:05 -05:00
Aaron Boxer
51f823c98a
d3dvideosinnk: check d3d device exists before creating overlay vertex buffer
2019-12-18 13:15:05 -05:00
Aaron Boxer
8710eb0656
d3dvideosink: pass hidden window hwnd to GST_DEBUG, rather than NULL
2019-12-18 13:15:05 -05:00
Aaron Boxer
54ce3d5011
d3dvideosink: fix typo
2019-12-18 13:15:05 -05:00
Seungha Yang
4eac9d0ae6
d3dvideosink: Fix warning for unhandled enum in switch
...
d3dhelpers.c:135:3: warning: enumeration value 'D3DFMT_D32_LOCKABLE' not handled in switch [-Wswitch]
2019-12-05 04:31:54 +00:00
Aaron Boxer
d3426cf15b
d3dvideosink: use parent buffer pool to release buffers
...
In certain cases, the sink's buffer pool will not call the parent's
release_buffer method, so the pool does not clean up properly
after the buffer is released.
2019-12-04 23:00:35 +00:00
Aaron Boxer
842bd66bd8
d3dvideosink: use sink dimensions when calculating overlay scaling
2019-11-18 03:32:57 +00:00
Aaron Boxer
20f3f63540
d3dvideosink: use explicit system memory feature in overlay composition caps
2019-11-18 02:29:45 +00:00
Aaron Boxer
86b01bb291
d3dvideosink: support OverlayComposition for GPU overlay compositing
2019-11-06 01:05:33 +00:00
Aaron Boxer
6d3429af34
documentation: fixed a heap o' typos
2019-11-05 09:11:25 -05:00
Tim-Philipp Müller
f218ec2794
Remove autotools build system
2019-10-14 13:54:27 +01:00
Seungha Yang
736df5604f
d3dvideosink: Fix crash on WinProc handler
...
... caused by null pointer dereference. The d3dvideosink object might
not available yet on the handler.
2019-08-15 17:55:29 +09:00
Thibault Saunier
47a49f3381
docs: Build documentation with hotdoc
2019-05-13 17:00:00 -04:00
Aaron Boxer
68ae46ae14
d3dhelpers.c: fix typo in debug output
2019-01-30 11:27:42 -05:00
Nirbheek Chauhan
09f814a00a
d3dvideosink: Remove unused variable
...
Fixes a compiler warning.
2018-11-13 09:55:56 +05:30
Seungha Yang
f4dc780168
d3dvideosink: Fix calculating buffer size of packed format
...
The Pitch (i.e., stride) of D3DLOCKED_RECT structure is already
respecting required stride value.
2018-11-06 11:51:39 +00:00
Seungha Yang
6c6d351665
d3dvideosink: Set actual buffer size to buffer pool
...
If configured size of buffer pool and actual buffer size are mismatched,
pool will do unwanted buffer resize.
Fixes #801
2018-11-06 11:51:39 +00:00
Seungha Yang
dee5201392
d3dvideosink: Use lock/cond to wait internal window construction
...
We can save one (or possibly more) sleep time by using lock/cond
2018-11-06 11:51:39 +00:00
Seungha Yang
b3279c3fce
d3dvideosink: Don't leak GThread object
...
Need to call g_thread_join() to avoid leak
2018-11-06 11:51:39 +00:00
Seungha Yang
c9b204ea87
d3dvideosink: Print lock/unlock log with trace debug level
2018-11-06 11:51:39 +00:00
Seungha Yang
2a3207bfc1
d3dvideosink: Remove white space
2018-11-06 11:51:39 +00:00
Nirbheek Chauhan
b55dfb5313
Add feature options for almost all plugins
...
The only plugins remaining are those that haven't been ported to Meson
yet, and msdk. Also, the tests are still automagic.
https://bugzilla.gnome.org/show_bug.cgi?id=795107
2018-07-27 19:04:38 +05:30
Xavier Claessens
83d0623293
Meson: Generate pc file for all plugins in bad
...
https://bugzilla.gnome.org/show_bug.cgi?id=794568
2018-04-25 11:08:09 +01:00
Nicolas Dufresne
9b2e28d91d
Request minimum buffer even if need_pool is FALSE
...
When tee is used, it will not request a pool, but still it wants to
know how many buffers are required.
https://bugzilla.gnome.org/show_bug.cgi?id=730758
2017-09-06 14:19:37 -04:00
Nicolas Dufresne
3e0db49f5b
d3dsinkwrapper: Make the DLL name match the plugin name
...
Otherwise, since 1.12, the plugin gets blacklisted.
https://bugzilla.gnome.org/show_bug.cgi?id=785168
2017-07-20 10:45:32 -04:00
Sebastian Dröge
634cd87c76
gst: Clear floating flag in constructor of all GstObject subclasses that are not owned by any parent
...
https://bugzilla.gnome.org/show_bug.cgi?id=743062
2017-05-17 10:40:23 +03:00
Nicolas Dufresne
4261692187
Remove plugin specific static build option
...
Static and dynamic plugins now have the same interface. The standard
--enable-static/--enable-shared toggle are sufficient.
2017-05-16 14:05:52 -04:00
Thibault Saunier
78022a6e0c
docs: Port all docstring to gtk-doc markdown
2017-04-12 12:57:57 -03:00
Scott D Phillips
c7ee3b5d5f
Remove 'return' from void
functions
...
https://bugzilla.gnome.org/show_bug.cgi?id=774293
2016-11-12 10:53:02 +02:00
Nirbheek Chauhan
42af2d66d8
Add support for Meson as alternative/parallel build system
...
https://github.com/mesonbuild/meson
With contributions from:
Tim-Philipp Müller <tim@centricular.com>
Matej Knopp <matej.knopp@gmail.com>
Jussi Pakkanen <jpakkane@gmail.com> (original port)
Highlights of the features provided are:
* Faster builds on Linux (~40-50% faster)
* The ability to build with MSVC on Windows
* Generate Visual Studio project files
* Generate XCode project files
* Much faster builds on Windows (on-par with Linux)
* Seriously fast configure and building on embedded
... and many more. For more details see:
http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html
http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html
Building with Meson should work on both Linux and Windows, but may
need a few more tweaks on other operating systems.
2016-08-20 11:35:54 +01:00
Sebastian Dröge
dea792292e
d3dvideosink: Replace some more gst_caps_to_string() with GST_PTR_FORMAT
...
https://bugzilla.gnome.org/show_bug.cgi?id=768146
2016-06-28 19:27:09 +03:00
Jonathan Roy
93191c92f1
d3dvideosink: leak on caps string
...
https://bugzilla.gnome.org/show_bug.cgi?id=768146
2016-06-28 19:27:09 +03:00
Nirbheek Chauhan
6472482680
d3dvideosink: Don't include deprecated and unavailable d3dx9tex.h
...
It's not needed, not on native Windows nor with mingw, and
we don't use anything from it anyway
https://bugzilla.gnome.org/show_bug.cgi?id=765250
2016-04-19 13:51:03 +01:00
Vineeth TM
66bac3eb86
d3dvideosink: post message to application for unhandled keyboard/mouse events
...
https://bugzilla.gnome.org/show_bug.cgi?id=763403
2016-03-24 14:58:24 +02:00
Vineeth TM
8cdfb13658
bad: use new gst_element_class_add_static_pad_template()
...
https://bugzilla.gnome.org/show_bug.cgi?id=763081
2016-03-24 14:56:51 +02:00
Sebastian Dröge
d8b1efe13a
d3dvideosink: Don't try to recreate swapchain while the window is minimized
...
It will fail and cause the sink to crash. Instead wait until the window is
visible again before checking if the swapchain really has to be recreated.
https://bugzilla.gnome.org/show_bug.cgi?id=741608
2015-11-30 19:53:28 +02:00
Fabio Cetrini
79f57e62dc
d3dvideosink: Avoid frame rendering while the window is completely hidden
...
https://bugzilla.gnome.org/show_bug.cgi?id=749856
2015-06-10 15:03:31 +02:00
Roman Nowicki
29098129be
d3dvideosink: release existing D3D swap chain on init
...
https://bugzilla.gnome.org/show_bug.cgi?id=745159
2015-02-25 16:19:57 +02:00