Commit graph

595 commits

Author SHA1 Message Date
Stefan Kost 38aba7853e xvimagesink: don't paint the window black when going to NULL
Leave dealing with the appearance of the window when we are not playing to the
applications. We anyway want to go to NULL as quickly as possible.

Fixes #635800
2011-04-05 11:37:01 +03:00
Gavin Stark b00f8a5b36 xvimagesink: Use gst_caps_can_intersect() instead of gst_caps_intersect()
Fixes a memory leak and bug #636827.
2010-12-09 08:40:25 +01:00
Sebastian Dröge d5499f5556 v4l: If no video tuner is the requested one don't read unitialized data 2010-12-02 19:04:28 +01:00
Sebastian Dröge 334a739083 ximagesink: Add docs for the new property
Including Since markers
2010-12-02 19:04:28 +01:00
Sebastian Dröge 28da26e670 xvimagesink: Add docs for the new property
Including Since markers
2010-12-02 19:04:28 +01:00
Sebastian Dröge f8f1aa2160 xvimagesink: Use PROP_ instead of ARG_ for the property enums 2010-12-02 19:04:28 +01:00
Andrea Sebastianutti 72d6f7f4d6 xvimagesink: Add read-only properties window-width and window-height 2010-12-02 19:04:27 +01:00
Andrea Sebastianutti 2ad9966163 ximagsink: Add read-only properties window-width and window-height 2010-12-02 19:04:27 +01:00
Sebastian Dröge 96006aded8 xvimagesink: Make sure that the caps for upstream negotiation are simple caps
Fixes bug #631774.
2010-10-10 18:35:54 +02:00
René Stadler 578a7ef950 xvimagesink: allow render rectangle coordinates to be negative
Useful for cropped zooming.
2010-09-28 15:20:37 +03:00
David Schleef 6dc02137fb xoverlay: Add guintptr versions of functions
And deprecate the gulong versions.  This is to support platforms
where sizeof(unsigned long) < sizeof(void *).  Fixes #627565.

API: Add gst_x_overlay_set_window_handle()
API: Deprecate: gst_x_overlay_set_xwindow_id()
API: Add gst_x_overlay_got_window_handle()
API: Deprecate: gst_x_overlay_got_xwindow_id()
API: Add GstXOverlay::set_window_handle()
API: Deprecate: GstXOverlay::set_xwindow_id()
2010-09-15 00:10:23 -07:00
Sebastian Dröge 59ba05a95d xvimagesink: Suggest caps with different width/height if bufferalloc is called with impossible width/height 2010-08-11 18:10:45 +02:00
Sebastian Dröge 2a08bcc53f xvimagesink: It's not a bad thing if the preferred video format needs less bytes per frame 2010-08-11 18:10:44 +02:00
Philippe Normand 0ee588a3a6 ximagesink: Ask pad peer to accept new caps once only
In buffer_alloc, if the buffer caps are new, call
gst_pad_peer_accept_caps once only, it's useless to call it in the
cases where we know it will always fail.

Fixes bug #621190
2010-06-18 06:11:36 +02:00
Sebastian Dröge 6914986cb3 ximagesink: Check if the X context is allocated before using it
It should be allocated at these places already or the state changes
would have failed... but better add an additional check here.
2010-05-10 12:44:41 +02:00
Sebastian Dröge df5c772c44 ximagesink: Post an error message on the bus if no supported pixmap formats can be found
Might fix bug #615851.
2010-05-10 12:28:29 +02:00
Stefan Kost f5469d42de x(v)imagesink: use gst_caps_can_intersect() more
In place where we just need to know whether caps intersect, we can use this
quicker function.
2010-05-06 08:22:36 +03:00
Stefan Kost 6c51803dc8 x(v)imagesink: gracefully handle ximagesink>xwindow == NULL
Expose could be called before we have set the xwindow. Handle this gracefully
like we do in image_put.
Fixes #615789
2010-04-16 15:52:26 +03:00
Stefan Kost 656573757e ximagesink: refactor _update_geometry()
Refactor like in xvimagesink. Remove the extra parameter and adjust the assert check.
2010-04-16 15:52:25 +03:00
Stefan Kost 3ec87ee221 xvimagesink: init geometry when setting new xid
Don't rely on expose event to query geomentry after new xid is set.

Fixes #615647.
2010-04-14 15:19:19 +01:00
Tim-Philipp Müller e1f38a685b build: build plugin and example directories in parallel if make -jN is used
We know our plugins and examples are independent of each other, so may
just as well build them in parallel. Makes the output a bit messy, but
that shouldn't be a problem and can easily be avoided with make -j1.
2010-03-29 00:26:59 +01:00
Tim-Philipp Müller 37d000d175 xoverlay: change new set_render_rectangle() vfunc to take four arguments so we don't depend on libgstvideo
Don't make libgstinterfaces (and thus libgstaudio etc.) indirectly depend
on libgstvideo by using the GstVideoRectangle helper structure in the API,
which causes undesirable dependencies, esp. with the gobject-introspection
(people will point and laugh at us if they find out that libgstaudio
depends on libgstvideo). Instead, pass the x, y, width and height parameters
directly to the function.

Re-fixes #610249.
2010-03-28 20:21:10 +01:00
Tim-Philipp Müller 58a92964c6 build: Makefile.am fixes
Mostly just add missing $(GST_BASE_CFLAGS), but also fix up order
of flags (see docs/random/moving-plugins).
2010-03-19 01:00:36 +00:00
Reuben Dowle 621705f475 ximagesink: Fix caps leak
Unref caps when peer doesn't accept caps

Fixes #613198
2010-03-17 19:24:27 -03:00
Benjamin Otte 3bd4aa26ff Add -Wwrite-strings to configure
Fixes for the code included
2010-03-16 17:41:51 +01:00
Benjamin Otte 5e21fa5e0e gst_element_class_set_details => gst_element_class_set_details_simple
Also change my email from the old university one to the current one.
2010-03-16 17:41:50 +01:00
Stefan Kost a982dc0480 xvimagesink: implement set_render_rectangle
Previously we hardcoded the target rectangle passes to Xv(Shm)PutImage. Extend
the implementation to use a full rectangle and don't assume 0,0 for top,left.
2010-03-11 10:24:57 +02:00
Stefan Kost 7b13aeee32 x(v)imagesink: take new size from event thread and do not poll for every frame
We can update the geometry in ConfigureNotify (unless we disable event-
handling). If event handling is disabled, one should use _expose() to trigger a
redraw and update the geometry.
2010-03-11 10:23:19 +02:00
Stefan Kost 1e004cd363 ximagesink: only start event thread if needed
The event thread is doing 20 wakeups per second to poll the events. If one
runs ximagesink with handle-events=false and handle-expose=false then we can
avoid the extra thread.
2009-10-07 17:57:54 +03:00
Tim-Philipp Müller a039d3a1a6 v4l: fix compiler warning
Fix 'variable may be used uninitialized' compiler warning (which is
true in theory, but can't actually ever happen, since we always
call the function with check=FALSE).

Fixes #596313.
2009-10-07 10:15:52 +01:00
Stefan Kost 99b4483b8c xvimagesink: only start event thread if needed
The event thread is doing 20 wakeups per second to poll the events. If one runs
xvimagesink with handle-events=false and handle-expose=false then we can avoid
the extra thread.
2009-10-07 11:18:09 +03:00
Tim-Philipp Müller 78b0413c5f ximagesink, xvimagesink: use new GstVideoSink::show_frame() vfunc 2009-09-08 18:20:11 +01:00
René Stadler f308675fc8 ximagesink: fix small memory leak when setting window title 2009-09-06 15:21:43 +03:00
René Stadler a533ae303b xvimagesink: fix small memory leak when setting window title 2009-09-06 01:44:23 +03:00
Tim-Philipp Müller 95af14d7bc v4lsrc: fix timestamping for when we do not have a clock yet
Should fix #559049.
2009-09-01 15:16:06 +01:00
Tim-Philipp Müller e2e5a1da06 v4lsrc: don't log not-yet-initialised integer value 2009-09-01 15:08:18 +01:00
Tim-Philipp Müller 1af601d403 v4lsrc: avoid unnecessary run-time type checks in custom buffer finalize
And reflow code to be more indent friendly.
2009-09-01 15:08:10 +01:00
David Schleef 0e9bc5125a Remove Ronald Bultje from Authors field
Replaced with "GStreamer maintainers
<gstreamer-devel@lists.sourceforge.net>" or just removed,
depending on the number of other authors.
2009-08-24 11:37:01 -07:00
Filippo Argiolas 0f29d71a7d v4lsrc: optional support for device probing with gudev
Enumerate v4l devices using gudev if available.

Fixes bug #583640.
2009-07-13 16:13:25 +02:00
Stefan Kost 8e5a0000dc xvimagesink: use core performance log category 2009-07-06 09:42:12 +01:00
Stefan Kost b64be90326 v4l: open/close device in ready.
Simillar change like in v4l2src. This allows probing feature in paused, where
streaming is noit yet started.
2009-06-27 23:25:09 +03:00
Stefan Kost 8b0da4bfe8 x(v)imagesink: pass the xwindow along to not look at the yet unset var.
When we call this from xwindow_new, x(v)imagesink->xwindow is not yet set.
2009-06-22 16:17:10 +03:00
Stefan Kost 8946be1f0b x(v)imagesink: catch tags and show title in own window
Refactor the code that sets the window title. Catch tag-events and use title
metadata for the window title.
2009-06-22 11:40:33 +03:00
Stefan Kost 483a955e89 xvimagesink: appname might be NULL
Don't set title if appname is unknown.
2009-06-18 18:13:22 +03:00
Stefan Kost 192efaf1d0 xvimagesink: set window title from application name 2009-06-18 17:58:06 +03:00
Hannes Bistry 77050a72f8 ximagesink: fix mouse pointer offsets in navigation event if window is smaller than the image
Fixes #570768.
2009-04-14 12:26:10 +01:00
Edward Hervey 2555eeb737 navigation/v4l: Don't use g_return_val_if_fail for computed/used values. 2009-04-04 16:28:14 +02:00
Stefan Kost 2f90615d14 xvimagesink: use xcontext->depth instead of bits in attr.max_value for colorkey
According to the drivers in http://cgit.freedesktop.org/xorg/driver/ we should
format the colorkey depending on xcontext->depth. This is what they will use to
interprete the value. The max_value in turn is usualy a constant regardless of
the depth.
2009-03-31 12:27:09 +03:00
Stefan Kost 492b8861c4 xvimagesink: scale the colorkey components in case of 16bit visuals
Use a default that won't be scales to 0,0,0
2009-03-25 14:40:42 +02:00
Jan Schmidt 3beecff125 v4lsrc: Fix some valgrind warnings about leaked memory and uninitialised data. 2009-03-13 15:58:33 +00:00