Wim Taymans
337cfb764a
add more debug about cropping
2012-02-28 16:49:10 +01:00
Wim Taymans
1c05eeece5
update for metadata tags
2012-02-28 12:10:14 +01:00
Wim Taymans
525f330142
update for metadata changes
2012-02-24 10:26:04 +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
Wim Taymans
63f3f27164
update for new memory api
2012-02-22 02:05:24 +01:00
Tim-Philipp Müller
576bbb4fd8
Remove compatibility code cruft for old GLib versions
2012-01-18 17:22:21 +00:00
Wim Taymans
3fc48e114b
x11: reset alignment
2011-12-21 18:14:45 +01:00
Tim-Philipp Müller
fb6d09055a
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/alsa/gstalsadeviceprobe.c
ext/alsa/gstalsamixer.c
ext/pango/gsttextoverlay.c
ext/pango/gsttextoverlay.h
gst-libs/gst/audio/gstaudiobasesink.c
gst-libs/gst/audio/gstaudioringbuffer.c
gst-libs/gst/audio/gstaudiosrc.c
gst-libs/gst/video/Makefile.am
gst-libs/gst/video/video.c
gst/encoding/gststreamcombiner.c
gst/encoding/gststreamsplitter.c
gst/playback/gstplaybasebin.c
gst/playback/gststreamsynchronizer.c
gst/playback/gstsubtitleoverlay.c
gst/playback/gsturidecodebin.c
sys/xvimage/xvimagesink.c
tests/examples/Makefile.am
win32/common/libgstvideo.def
Video overlay composition disabled for now, needs
porting to buffer meta.
2011-12-08 01:19:03 +00:00
Tim-Philipp Müller
0d98aa25b8
Work around deprecated thread API in glib master
...
Add private replacements for deprecated functions such as
g_mutex_new(), g_mutex_free(), g_cond_new() etc., mostly
to avoid the deprecation warnings. We'll change these
over to the new API once we depend on glib >= 2.32.
Replace g_thread_create() with g_thread_try_new().
2011-12-04 17:16:30 +00:00
Wim Taymans
1225aa9a78
update for basesink event handler changes
2011-12-02 22:24:43 +01:00
Piotr Fusik
14644457b0
various: typo fixes
...
Fix typos in code and docs. Fixes. #658984
2011-12-02 12:03:27 +01:00
Wim Taymans
871b306fce
video: move some interfaces
...
Move some interfaces to the video library
2011-11-29 19:10:01 +01:00
Vincent Penquerc'h
96374054ac
various: fix pad template leaks
...
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:09:02 +00:00
Edward Hervey
3233f09adf
ximagebufferpool: Use the default ::free_buffer() implementation
...
Which does exactly the same thing
2011-11-21 13:04:42 +01:00
Wim Taymans
e067e67923
rename meta* -> *meta
2011-11-02 09:04:27 +01:00
Wim Taymans
016d036137
Merge branch 'master' into 0.11
...
Conflicts:
configure.ac
gst-libs/gst/audio/gstbaseaudiosink.c
gst/audioconvert/channelmixtest.c
gst/playback/gstplaybasebin.c
gst/playback/gstsubtitleoverlay.c
tests/examples/Makefile.am
tests/examples/audio/Makefile.am
2011-10-27 15:44:58 +02:00
Stefan Sauer
53d7d2e966
interfaces: clean up the use of iface and class/klass
2011-10-21 14:46:48 +02:00
Stefan Sauer
b4803361c6
x(v)imagesink: make it more clean that "synchronous" props are not for avsync
2011-10-19 10:42:22 +02:00
Wim Taymans
82d82203f6
base: fix for allocation methods rename
2011-08-26 14:26:37 +02:00
Tim-Philipp Müller
7f11e9bc30
ximagesink, xvimagesink: update for GstXOverlay -> GstVideoOverlay
2011-08-08 14:12:15 +01:00
Wim Taymans
a7d88b0898
x11: remove useless alignment
2011-08-04 15:18:14 +02:00
Wim Taymans
947b6b3faa
ximage: add support for alignment bufferpool option
2011-08-01 19:04:47 +02:00
Wim Taymans
5a85e1d75f
base: update for new bufferpool API
2011-07-29 17:15:39 +02:00
Wim Taymans
b0c64a10f8
x11: relax bufferpool checks
...
Check if the metadata belongs to us instead of checking the current bufferpool.
The bufferpool can change at any time when upstream wants to renegotiate.
2011-07-29 12:25:13 +02:00
Wim Taymans
d013481d8e
x11: let old pool drain
...
Let the old pool drain without deactivating it, some elements might still be
using it.
2011-07-26 14:10:33 +02:00
Wim Taymans
662c1f4b6c
x11: use new setup_allocation vmethod
2011-07-26 13:17:20 +02:00
Wim Taymans
084eac3a77
x11: call parent set_config
...
Call the parent set_config method to make it aware of the current config so that
its default methods can do preallocation.
2011-07-18 18:46:01 +02:00
Wim Taymans
8750aea364
x11: improve allocation parameters
...
Set the min-buffers to 2 because our base class will hold on to 1 buffer for the
last-buffer property.
2011-07-18 16:48:25 +02:00
Wim Taymans
e461ab46d4
X11: also check the bufferpool
...
Don't just check the availability of the metadata but also if the buffer is
really from our bufferpool.
2011-07-15 16:35:44 +02:00
Tim-Philipp Müller
dd56714b14
ffmpegcolorspace -> videoconvert
2011-07-07 23:59:59 +01:00
Wim Taymans
ddce68a5c2
video: More video helper library improvements
...
Make a new GstVideoFormatinfo structure that contains the specific information
related to a format such as the number of planes, components, subsampling,
pixel stride etc. The result is that we are now able to introduce the concept of
components again in the API.
Use tables to specify the formats and its properties.
Use macros to get information about the video format description.
Move code to set strides, offsets and size into one function.
Remove methods that are not handled with the structures.
Add methods to retrieve pointers and strides to the components in the video.
2011-07-04 16:01:14 +02:00
Tim-Philipp Müller
8cede4ae6a
gst, sys: remove GstImplementsInterface usage
2011-06-26 23:16:08 +01:00
Wim Taymans
dd7e605fec
x11: let upstream know we support cropping
2011-06-23 16:31:21 +02:00
Wim Taymans
df94f2da81
x11: add image cropping
...
Use the cropping metadata to crop the image.
Remove deprecated display-region property to set a clipping rectangle.
2011-06-23 12:55:13 +02:00
Wim Taymans
aa73f69f2d
x11: use frame copy functions
2011-06-22 15:38:24 +02:00
Wim Taymans
8fbdac9fc6
x11: delay pool activation
...
don't activate the pool we return in the ALLOCATION query because upstream might
still want to configure it
2011-06-20 17:39:05 +02:00
Wim Taymans
cf91192668
x11: handle new bufferpool metadata api
...
Provide a method to list the supported metadata apis.
Activate the video metadata on buffers when a downstream element configured the
bufferpool to support that api.
2011-06-20 13:28:12 +02:00
Wim Taymans
5eeb468c75
x11: use GstVideoInfo to parse caps
...
Use GstVideoInfo to keep track of the configured format.
Add GstMetaVideo to buffers, disabled by default for now until we can have it
enabled with a property on the bufferpool configuration.
2011-06-17 17:54:52 +02:00
Wim Taymans
0d75dc5a0b
x11: make function static
...
Don't export buffer creation function, we need to use the bufferpool
now.
2011-06-17 17:27:22 +02:00
Wim Taymans
d93129d8da
-base: port to GstVideoFrame API
2011-06-17 15:41:31 +02:00
Wim Taymans
d06f599193
-base: port elements to new video caps
2011-06-16 12:52:13 +02:00
Wim Taymans
9c54ca5254
-base: update for buffer API change
2011-06-13 16:32:56 +02:00
Wim Taymans
a8971beee0
ximage: fix alignment and size
...
Set the right alignment and size in the bufferpool.
2011-06-11 20:47:01 +02:00
Wim Taymans
1c8324a0d1
update for bufferpool api change
2011-06-11 18:54:44 +02:00
Sebastian Dröge
bf08ca7020
Merge branch 'master' into 0.11
2011-05-26 13:54:09 +02:00
Sebastian Dröge
34ae792075
ximagesink: Fallback to non-XShm mode if allocating the XShm image failed
...
Fixes bug #630442 .
2011-05-26 12:30:31 +02:00
Sreerenj Balachandran
b977d550df
ximagesink: Remove g_assert from interface query
2011-05-26 09:05:55 +02:00
Wim Taymans
453091137e
x11: free bufferpool whe activation fails
2011-05-24 09:45:39 +02:00
Wim Taymans
f1980aa051
ximagesink: implement ALLOCATION query
2011-05-19 15:56:57 +02:00
Sebastian Dröge
6392dfc072
sys: Update for caps/pad template related API changes
2011-05-17 13:06:01 +02:00
Sebastian Dröge
6ed5013733
ximagesink: Update for negotiation related API changes
2011-05-16 15:35:28 +02:00
Wim Taymans
c81b1b8019
-base: remove metadata (des)serialize functions
2011-05-11 19:12:42 +02:00
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
86a4771f8e
remove buffer_alloc
2011-04-29 13:28:17 +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
1ae67927cc
ximage: more fixes
2011-04-06 17:54:28 +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
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
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
Sebastian Dröge
334a739083
ximagesink: Add docs for the new property
...
Including Since markers
2010-12-02 19:04:28 +01:00
Andrea Sebastianutti
2ad9966163
ximagsink: Add read-only properties window-width and window-height
2010-12-02 19:04:27 +01: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
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
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
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
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
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
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
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
Stefan Kost
a47949b2ba
ximagesink: use GST_FLOW_NOT_NEGOTIATED for partial caps
2009-02-26 18:01:04 +02:00
Stefan Kost
bc4388c413
ximagsink: do not access uninitialized height variable.
...
Exit like in xvimagesink, if we have partial caps.
2009-02-26 10:09:59 +02:00
Sebastian Dröge
8c74d858ba
x(v)imagesink: Correctly cast to GstBuffer * before passing to gst_buffer_unref()
2009-02-22 19:18:41 +01:00
Wim Taymans
e7f910e0fc
Fix buffer_alloc in ximagesink
...
Remove some useless debug info that reported wrong image sizes.
When upstream does not accept out suggested size, fall back to allocating an
image of the requested width/height instead of the currently configured size.
The problem is that an image is reused from the pool because the width/height
match but the caps on the new buffer are the requested caps with possibly
different height/width resulting in errors.
2009-02-02 13:30:42 +01:00
Edward Hervey
98c2c8a052
sys/: Clear all flags on buffers returned from the image pool.
...
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximagesink_buffer_alloc):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_buffer_alloc):
Clear all flags on buffers returned from the image pool.
Fixes #563143
2008-12-03 17:47:44 +00:00
Stefan Kost
2aaf298543
sys/: Don't mark as gtk-doc docs as they aren't public.
...
Original commit message from CVS:
* sys/ximage/ximagesink.h:
* sys/xvimage/xvimagesink.h:
Don't mark as gtk-doc docs as they aren't public.
2008-10-22 12:29:30 +00:00
Stefan Kost
2cd4c7e2b9
Don't install static libs for plugins. Fixes #550851 for base.
...
Original commit message from CVS:
* ext/alsa/Makefile.am:
* ext/cdparanoia/Makefile.am:
* ext/gio/Makefile.am:
* ext/gnomevfs/Makefile.am:
* ext/libvisual/Makefile.am:
* ext/ogg/Makefile.am:
* ext/pango/Makefile.am:
* ext/theora/Makefile.am:
* ext/vorbis/Makefile.am:
* gst/adder/Makefile.am:
* gst/audioconvert/Makefile.am:
* gst/audiorate/Makefile.am:
* gst/audioresample/Makefile.am:
* gst/audiotestsrc/Makefile.am:
* gst/ffmpegcolorspace/Makefile.am:
* gst/gdp/Makefile.am:
* gst/playback/Makefile.am:
* gst/subparse/Makefile.am:
* gst/tcp/Makefile.am:
* gst/typefind/Makefile.am:
* gst/videorate/Makefile.am:
* gst/videoscale/Makefile.am:
* gst/videotestsrc/Makefile.am:
* gst/volume/Makefile.am:
* sys/v4l/Makefile.am:
* sys/ximage/Makefile.am:
* sys/xvimage/Makefile.am:
Don't install static libs for plugins. Fixes #550851 for base.
2008-10-16 15:07:00 +00:00
Jan Schmidt
6d641640bb
sys/: it's not legal to ask the
...
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls),
(gst_ximagesink_ximage_new):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls),
(gst_xvimagesink_xvimage_new):
Apparently on Solaris and OS/X (at least), it's not legal to ask the
X server to attach to a shared memory segment after we've deleted it,
with the result that MIT-SHM is disabled. Instead, remove it only after
X succeeds in attaching too.
2008-07-17 13:57:33 +00:00