Commit graph

313 commits

Author SHA1 Message Date
Thibault Saunier 2fd28195ca Move files from gst-plugins-base into the "subprojects/gst-plugins-base/" subdir 2021-09-24 16:13:26 -03:00
Stéphane Cerveau fa416b08b7 ximage: allow per feature registration
Split plugin into features including
dynamic types which can be indiviually
registered during a static build.

More details here:

https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1089>
2021-03-29 15:59:53 +02:00
david e135961e1e Set _NET_WM_NAME property for xvimagesink and ximagesink
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1017>
2021-03-03 12:21:22 +00:00
Akinobu Mita 2d65683658 ximagesink, xvimagesink: don't use XkbKeycodeToKeysym if Xkb is unavailable
ximagesink and xvimagesink use XkbKeycodeToKeysym when the key event is
received. However, this function returns NoSymbol if Xkb is unavailable.

This causes all key events to be translated to "unknown" key when running
ximagsink under some VNC.

Fix it by using XKeycodeToKeysym if Xkb is unavailable.
2019-11-19 14:28:35 +00:00
Thibault Saunier 909baa2360 Pass the code through codespell 2019-08-30 13:05:36 +00:00
Akinobu Mita 6e770e0ebb ximagesink, xvimagesink: fix incorrect type conversion of pointer position
I'm currently playing with modified ximagesink that does XGrabPointer()
in order to receive the mouse events occurred outside of the window and
send them to the navigation interface.

The pointer positions usually have positive coordinates, but it could
be negative with that change.

When the ximagesink handles XEvent that contains a negative pointer
coordinate, it incorrectly generates the GstEvent that contains an
extremely large positive pointer coordinate.

This is because the negative pointer position in XEvent is incorrectly
converted from signed to unsigned and passed as an argument to
gst_navigation_send_mouse_event() which causes implicit conversion from
integer to double.  So the pointer position in the received XEvent and
generated GstEvent are completely different.

This potential problem does not seem to be a real problem with unmodified
ximagesink but there is no reason to leave it as is.  This also fixes
xvimagesink that has the same potential problem.

https://bugzilla.gnome.org/show_bug.cgi?id=791140
2017-12-08 00:48:16 +00:00
Nicolas Dufresne 2bf665486e 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:20:46 -04:00
Thibault Saunier 099ac9faf2 docs: Convert gtkdoc comments to markdown
Modernizing the documentation, making it simpler to read an
modify and allowing us to possibly switch to hotdoc in the
future.
2017-03-10 18:19:17 -03:00
Tim-Philipp Müller bbed5a5ffc Fix indentation 2017-01-09 19:02:57 +00:00
Jakub Adam 59d7f9c62e ximagesink: generate reconfigure on window handle change
When ximagesink is given a new window handle, it should check
its geometry and if the size of the new window differs from
the previous one, create reconfigure event in order to get
a chance to negotiate a more suitable image resolution with
the upstream elements.

We can't rely on receiving Expose or ConfigureNotify from
the X server for the newly assigned window, which would also
generate reconfigure.

https://bugzilla.gnome.org/show_bug.cgi?id=765424
2016-04-26 11:13:01 +03:00
Vineeth TM 44b70ca3a1 base: use new gst_element_class_add_static_pad_template()
https://bugzilla.gnome.org/show_bug.cgi?id=763075
2016-03-24 14:25:41 +02:00
Tim-Philipp Müller a62c7bd54c Fix use of undeclared core debug category symbols
libgstreamer currently exports some debug category
symbols GST_CAT_*, but those are not declared in any
public headers.

Some plugins and libgstvideo just use GST_DEBUG_CATEGORY_EXTERN()
to declare and use those, but that's just not right at
all, and it won't work on Windows with MSVC. Instead look
up the categories via the API.
2016-02-20 11:31:43 +00:00
Vineeth TM 5f79ccb420 xvimagesink/ximagesink: Fix structure memory leak
https://bugzilla.gnome.org/show_bug.cgi?id=758204
2015-11-17 00:07:35 -03:00
Vineeth T M 51019c16e1 ximagesink: Post navigation events as message on the bus
post unhandled events to bus, so that
application can utilise the same if needed

https://bugzilla.gnome.org/show_bug.cgi?id=752043
2015-07-07 11:58:45 +01:00
Vineeth T M db86c73f4d ximagesink: fix navigation event leak
Create event only when pad is created
and send the event to pad.

https://bugzilla.gnome.org/show_bug.cgi?id=752041
2015-07-07 11:56:23 +01:00
Stefan Sauer 923d72d399 x/xv_image_sink: rename for consitency
Insert '_' to match the CamelCase. This is needed so that the plugin docs can
guess the names from the type name.
2015-07-06 17:37:15 +02:00
Nicolas Dufresne ae20ba7ad4 ximagesink: Don't share internal pool
Sharing the internal pool results in situation where the pool may have
two upstream owners. This create a race upon deactivation. Instead,
always offer a new pool, and keep the internal pool internal in case
we absolutely need it.

https://bugzilla.gnome.org/show_bug.cgi?id=748344
2015-06-12 18:26:07 -04:00
Tim-Philipp Müller 6221c95d48 ximagesink, xvimagesink: fix string leaks when setting class hint
https://bugzilla.gnome.org/show_bug.cgi?id=750455
2015-06-08 20:19:42 +01:00
Luis de Bethencourt fc01b3f13f ximagesink: set WM_CLASS of window
Set WM_CLASS of the ximagesink window so window managers can apply rules
based on xprop filtering.
2015-06-08 17:08:30 +01:00
Tim-Philipp Müller ec5c93f169 docs: update element example pipelines
- gst-launch -> gst-launch-1.0
- use autoaudiosink and audiovideosink more often
- review pipeline examples and descriptions
2015-05-10 11:38:19 +01:00
Wim Taymans 662a674f8a ximagesink: clear src and dest rectangles
Now that the center function also takes into account the x and y
coordinates of the dest rectangle, better clear all the fields before
using them.
2014-12-16 12:57:55 +01:00
Nicolas Dufresne f270b267c5 ximagesink: only extrapolate alpha mask for 32-bit depth
Instead of passing bogus alpha mask values when there's no alpha.

https://bugzilla.gnome.org/show_bug.cgi?id=727188
2014-03-27 16:47:30 -04:00
Tim-Philipp Müller b1ff48c1a1 docs: remove old 0.10 Since markers
They're just confusing.
2013-11-16 16:10:07 +00:00
Benjamin Gaignard 80e700a566 ximagesink: add support for 32-bit RGB with alpha mask
When X screen return a depth = 32 with bpp = 32, the alpha mask
must be correctly set to have a known GStreamer video format.
X visual structure doesn't provide the alpha mask information,
but we can find it from the others masks.

https://bugzilla.gnome.org/show_bug.cgi?id=700413
2013-05-16 11:24:10 +01:00
Sebastian Dröge 23c1a08bce ximagesink: Don't access structures of EMPTY caps
If the intersection between our caps and the filter caps is
empty, just immediately return EMPTY caps instead of trying
to access the (non-existant) structures.
2013-03-21 13:29:06 +01:00
Wim Taymans 1056304aad ximagesink: use memory to store XImage info
Store the extra XImage information in the GstMemory instead of metadata.
2013-02-26 16:02:41 +01:00
Tim-Philipp Müller 5f59b4f7ee Fix FSF address
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-03 23:05:09 +00:00
Tim-Philipp Müller d6522cf6a6 ximagesink: port to the new GLib thread API 2012-09-10 01:03:52 +01:00
Tim-Philipp Müller 2079a8c12b Remove glib-compat-private.h stuff we don't need any more
It's all been ported to the latest GLib API now.
2012-09-09 18:36:49 +01:00
Wim Taymans da4884a834 x11: don't block in buffer acquire
Don't ever block when acquiring a buffer from the bufferpool in the fallback
mode. If we block, we might deadlock when going to PAUSED because we never
unlock when going to paused.

The acquire can block when there are no more buffers in the pool, this is a
sign that the pool is too small. Since we are the only ones using the pool in
the fallback case and because we scale the buffer, someone else must be using
our pool as well and is doing something bad.
2012-08-10 12:13:57 +02:00
Sebastian Dröge 7bdcb12b41 gst: Set alignment at the correct place of GstAllocationParams 2012-08-08 17:41:19 +02:00
Wim Taymans 17ff2b0643 x11: match FORCE_ASPECT_RATIO default value
Set the default value for FORCE_ASPECT_RATIO correctly
2012-07-24 11:25:04 +02:00
Wim Taymans 53fc1f3fca update for query api changes 2012-07-06 11:50:44 +02:00
Wim Taymans bc5ba349b7 update for allocation query changes 2012-07-06 11:05:09 +02:00
Tim-Philipp Müller cc8b526c00 ximagesink, xvimagesink: default to force-aspect-ratio=true 2012-06-29 11:43:46 +01:00
Wim Taymans f35f0b6548 sys: fix some bufferpool leaks 2012-06-18 12:17:25 +02:00
Wim Taymans f3fdfd9ec8 x11: handle case where no bufferpool is suggested 2012-06-15 16:45:16 +02:00
Sebastian Dröge 69b18ab09d gst-libs: Remove interfaces libs and mixer/tuner interfaces
The navigation interface is now in the video library.
2012-04-13 13:14:13 +02:00
Tim-Philipp Müller 3c6a3ad629 Use new gst_element_class_set_static_metadata() 2012-04-10 00:45:16 +01:00
Wim Taymans bee3d7b683 update for get_param changes
Remove the const from the GstCaps.
Fix some GstStructure leaks.
2012-03-27 12:44:02 +02:00
Wim Taymans 1e884df1df update for bufferpool changes 2012-03-15 22:10:58 +01:00
Wim Taymans 7c0e2b5b1e update for allocation query changes 2012-03-15 20:36:51 +01:00
Wim Taymans 39d78762b9 take padding into account 2012-03-14 19:56:51 +01:00
Tim-Philipp Müller 29c266ccff Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	common
	docs/libs/gst-plugins-base-libs.types
	ext/pango/gsttextoverlay.c
	ext/vorbis/gstvorbisdec.c
	gst/playback/gstplaysink.c
	gst/playback/gstplaysinkconvertbin.c
	sys/ximage/ximagesink.c
	sys/xvimage/xvimagesink.c
2012-03-08 20:31:34 +00:00
Wim Taymans 863252258c x11: fix typos 2012-03-06 15:20:02 +01:00
Oleksij Rempel (Alexey Fisher) 6d83f695b7 ximagesink: don't use deprecated XKeycodeToKeysym
https://bugzilla.gnome.org/show_bug.cgi?id=671299

Signed-off-by: Oleksij Rempel (Alexey Fisher) <bug-track@fisher-privat.net>
2012-03-05 10:42:47 +00:00
Wim Taymans 502c12f827 update for metadata API changes 2012-02-29 17:25:10 +01:00
Wim Taymans 337cfb764a add more debug about cropping 2012-02-28 16:49:10 +01:00
Wim Taymans 17715ac8ae x[v]imagesink: remove size check
We can't to a size check like that, the strides might be different and the copy
will then take care of that just fine.
2012-02-22 15:25:03 +01:00
Tim-Philipp Müller 576bbb4fd8 Remove compatibility code cruft for old GLib versions 2012-01-18 17:22:21 +00:00