Commit graph

623 commits

Author SHA1 Message Date
Sebastian Dröge
061c4eb9e3 ximagesink: Send reconfigure event upstream if the window geometry changes 2011-05-05 15:23:24 +02:00
Sebastian Dröge
092438200c ximagesink: Add caps with the current window geometry to the top in getcaps 2011-05-05 15:23:17 +02:00
Wim Taymans
abcbef287d plugins: fix for allocation query API change 2011-05-02 11:11:33 +02:00
Wim Taymans
86a4771f8e remove buffer_alloc 2011-04-29 13:28:17 +02:00
Wim Taymans
c952567bb6 xvimagesink: implement ALLOCATION query 2011-04-29 12:09:38 +02:00
Wim Taymans
09d2625045 v4l: use G_DEFINE_TYPE 2011-04-19 16:40:02 +02:00
Sebastian Dröge
8336e2027d sys: Use G_DEFINE_TYPE instead of GST_BOILERPLATE 2011-04-19 11:44:14 +02:00
Sebastian Dröge
0759ce8533 Merge branch 'master' into 0.11 2011-04-18 13:23:32 +02:00
Sebastian Dröge
75c337c726 x(v)imagesink: If NULL caps are passed to buffer_alloc() do fallback allocation
Fixes bug #647857.
2011-04-18 11:24:57 +02:00
Wim Taymans
c8fee4a4b3 ximage: don't share the memory
We can't share the memory on the buffer with other buffers because the metadata
X(v)Image points to it and we don't want it to go away.
2011-04-07 16:07:57 +02:00
Wim Taymans
1999e73759 xvimagesink: make the show_frame function prettier 2011-04-06 19:21:02 +02:00
Wim Taymans
1ae67927cc ximage: more fixes 2011-04-06 17:54:28 +02:00
Wim Taymans
4007076b55 Merge branch 'master' into 0.11
Conflicts:
	ext/theora/gsttheoraenc.c
2011-04-06 16:33:56 +02:00
Wim Taymans
518ededd16 ximage: more fixes 2011-04-06 16:26:12 +02:00
benjamin gaignard
15c49a4d63 xvimagesink: use bufferpool
Improve bufferpool handling in ximagesink.
Implement bufferpool handling on xvimagesink.

Based on patches from benjamin gaignard <benjamin.gaignard@linaro.org>
2011-04-06 12:28:46 +02:00
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
Wim Taymans
5244770775 plugins: fix for new memory API 2011-03-27 17:16:10 +02:00
Wim Taymans
f246c0e97d meta: update for new API 2011-03-08 17:01:41 +00:00
Wim Taymans
92f9995d98 ximagesink: make metadata methods more like core 2011-03-04 18:32:53 +01:00
Wim Taymans
825c650964 ximagesink: reset the pool 2011-03-04 16:21:55 +01:00
Wim Taymans
e993bde873 ximagesink: implement buffer_alloc from the pool
Use the bufferpool for pad_alloc when we are asked for the same caps as the
bufferpool.
2011-03-04 16:21:54 +01:00
Wim Taymans
ea05fe1278 ximage: rewrite the buffer pool in ximagesink
Rewrite the pooling in ximagesink to extend from the bufferpool base class in
core. Move some code to a comon place and refactor.
2011-03-04 16:21:54 +01:00
Wim Taymans
c7c8f3e13d meta: fix for new API 2011-02-28 11:50:04 +01:00
Wim Taymans
ce7498e7c3 ximagesink: experiment with convenience macros 2011-02-28 11:50:04 +01:00
Wim Taymans
a1a237d0ea ximage: fix macros 2011-02-28 11:50:04 +01:00
Wim Taymans
08bfcad434 ximage: reimplement buffer pooling with metadata
Use the buffer metadata to get back to the extra info we can use to optimize the
video rendering.
2011-02-28 11:50:04 +01:00
Wim Taymans
55c9ca592f metadata: implement extra buffer data with metadata
Use buffer metadata to attach arbitrary extra data to buffers.
2011-02-28 11:50:04 +01:00
Wim Taymans
fc06cf80c9 v4l: use buffer private data for extra buffer info
Since we can't subclass anymore, use the owber_priv pointer for storing extra
info for the buffer.
2011-02-28 11:50:04 +01:00
Wim Taymans
e78903e662 X11: port imagesinks to new miniobjects
Remove the subbuffer from X11 sinks and use the private pointer to store a
single buffer metadata with the extra info.
2011-02-28 11:50:04 +01: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