William Manley
b608767288
templatematch: Allow changing template property on the fly
...
Previously changing the template property resulted in an exception
thrown from cvMatchTemplate, because "dist_image" (the intermediate
match-certainty-distribution) was the wrong size (because the
template image size had changed).
Locking has also been added to allow changing the properties (e.g. the
pattern to match) while the pipeline is playing.
* gst_element_post_message is moved outside of the lock, because it will
call into arbitrary user code (otherwise, if that user code calls into
gst_templatematch_set_property on this same thread it would deadlock).
* gst_template_match_load_template: If we fail to load the new template
we still unload the previous template, so this element becomes a no-op
in the pipeline. The alternative would be to keep the previous template;
I believe unloading the previous template is a better choice, because it
is consistent with the state this element would be in if it fails to
load the very first template at start-up.
Thanks to Will Manley for the bulk of this work; any errors are probably
mine.
2014-07-28 14:18:01 -03:00
David Rothlisberger
c77808055d
templatematch: Pass video through when nothing to match against
...
The early return was bypassing the call to gst_pad_push. With no
filter->template (and thus no filter->cvTemplateImage) the rest of this
function is essentially a no-op (except for the call to gst_pad_push).
This (plus the previous commit) allows templatematch to be
enabled/disabled without removing it entirely from the pipeline, by
setting/unsetting the template property.
2014-07-28 14:17:28 -03:00
William Manley
056d652b92
templatematch: Remove no-op call to gst_templatematch_load_template
...
We have just set filter->template to NULL, so
gst_templatematch_load_template did nothing.
2014-07-28 11:26:13 -03:00
Matthew Waters
13c63154b0
glimagesink: silence gsignal warning
...
instance '0xblah' has no handler with id '13'
2014-07-27 13:27:10 +10:00
Matthew Waters
5291ba37d9
glimagesink: remove extra argument from debug call
2014-07-24 13:05:00 +10:00
Vasilis Liaskovitis
90a4444609
glimagesink: Add navigation interface and callbacks for GstGLWindow mouse/key signals
...
https://bugzilla.gnome.org/show_bug.cgi?id=703486
2014-07-24 12:48:57 +10:00
Wang Xin-yu (王昕宇)
1adb0a77d6
gl: fix multi gl object leaks
...
1. fix FBO leaks in decide_allocation
2. fix texture leaks in decide_allocation and reset
3. fix texture leaks in FBO incomplete error path
2014-07-24 11:46:56 +10:00
Nicola Murino
bd4ae18938
facedetect: improve enum GstFaceDetectUpdates descriptions
...
https://bugzilla.gnome.org/show_bug.cgi?id=730509
2014-07-22 06:39:21 -03:00
Nicola Murino
3896dd8413
facedetect: make updates on_change works as expected
...
https://bugzilla.gnome.org/show_bug.cgi?id=730509
2014-07-22 06:39:21 -03:00
Thiago Santos
e26e112e80
katedec: handle segment event earlier
...
Delaying the segment event to when caps are decided can cause issues as
the first thing katedec does on its chain function it doing a segment clip.
It will lead to an assertion if the segment format is undefined
https://bugzilla.gnome.org/show_bug.cgi?id=733226
2014-07-21 12:36:19 -03:00
Thiago Santos
b0e63bbb9b
katedec: handle streamheaders in caps
...
Properly handle the caps event by configuring the kate decoding lib using the
available streamheaders. This makes it possible to decode kate subtitles when
the stream is seeked before katedec gets the initial buffers that are usually
the streamheaders.
https://bugzilla.gnome.org/show_bug.cgi?id=733226
2014-07-21 12:36:19 -03:00
Sebastian Dröge
c42595cc69
openni2src: Fix unitialized variable compiler warning
...
gstopenni2src.cpp:721:14: error: variable 'oni_ts' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized]
} else if (src->color->isValid () && src->sourcetype == SOURCETYPE_COLOR) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gstopenni2src.cpp:752:26: note: uninitialized use occurs here
GST_BUFFER_PTS (buf) = oni_ts - src->oni_start_ts;
^~~~~~
gstopenni2src.cpp:721:10: note: remove the 'if' if its condition is always true
} else if (src->color->isValid () && src->sourcetype == SOURCETYPE_COLOR) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gstopenni2src.cpp:721:14: error: variable 'oni_ts' is used uninitialized whenever '&&' condition is false [-Werror,-Wsometimes-uninitialized]
} else if (src->color->isValid () && src->sourcetype == SOURCETYPE_COLOR) {
^~~~~~~~~~~~~~~~~~~~~~
gstopenni2src.cpp:752:26: note: uninitialized use occurs here
GST_BUFFER_PTS (buf) = oni_ts - src->oni_start_ts;
^~~~~~
gstopenni2src.cpp:721:14: note: remove the '&&' if its condition is always true
} else if (src->color->isValid () && src->sourcetype == SOURCETYPE_COLOR) {
^~~~~~~~~~~~~~~~~~~~~~~~~
gstopenni2src.cpp:642:18: note: initialize the variable 'oni_ts' to silence this warning
uint64_t oni_ts;
^
= 0
2014-07-21 10:14:17 +02:00
Sebastian Dröge
429f20531f
hlsdemux: Make statistics message more generic for other adaptive streaming demuxers to reuse
...
https://bugzilla.gnome.org/show_bug.cgi?id=725828
2014-07-21 09:37:51 +02:00
Alexander Zallesov
7f4f9f09e3
hlsdemux: Provide statistics about time to download playlists and fragments
...
https://bugzilla.gnome.org/show_bug.cgi?id=725828
2014-07-21 09:37:51 +02:00
Sebastian Dröge
a7e243b32e
curlsshsink: Include gst.h and other stuff before anything else
2014-07-11 21:16:26 +02:00
Sebastian Dröge
1934847981
gl: Always build gstglmixer, not only when full OpenGL support is enabled
2014-07-11 13:58:55 +02:00
Sebastian Dröge
198d8dd5f1
curl: Use winsock2 instead and the GLib macro for checking if we're on Windows
2014-07-11 13:25:57 +02:00
Sebastian Dröge
0ea13d7a65
motioncells: Use no network API if not required
2014-07-11 13:25:18 +02:00
Alexey Pavlov
365d0cfb32
ext: Include winsock.h on Windows when required
...
https://bugzilla.gnome.org/show_bug.cgi?id=733052
2014-07-11 13:21:21 +02:00
Sebastian Dröge
acb1d5afc3
gl: Link to all required libraries but not more
2014-07-11 12:06:48 +02:00
Sebastian Dröge
92d00d0233
gl: Move GstGLMixer to the plugin for now
...
It depends on GstAggregator and we don't want to install headers
for that yet.
https://bugzilla.gnome.org/show_bug.cgi?id=732207
2014-07-11 09:41:05 +02:00
Philip Withnall
c57500a7f4
opus: Fix a double-unref in the Opus header code
...
The headers were never getting reffed when being added to the headers
list, which is later unreffed-and-freed by the caller (e.g.
gst_opus_parse_parse_frame()).
https://bugzilla.gnome.org/show_bug.cgi?id=733013
2014-07-11 09:05:32 +02:00
Nicolas Dufresne
ab29217726
glimagesink: Keep aspect ratio by default
...
The expected default behaviour for video sink is to maintain the
aspect ratio. Fix the default value to reflect this. The property
default was already TRUE, but the value was not initially TRUE.
2014-07-09 15:03:53 -04:00
Nicolas Dufresne
25c289f6c4
facedetect: Make cascades dir a little more portable
2014-07-04 21:13:49 -04:00
Nicolas Dufresne
09fc19b83f
handdetect: Use already mapped image
...
No need to map again the image, it's already handled by the base class.
2014-07-04 21:13:49 -04:00
Nicolas Dufresne
efde572cec
handdetect: Move size warning in set_caps so it's called once
2014-07-04 21:13:49 -04:00
Nicolas Dufresne
34e23c2e21
faceblur: Port to OpencvVideoFilter base class
...
This fixes issue whit black frames when special memory, like GlMemory is
in used.
https://bugzilla.gnome.org/show_bug.cgi?id=732756
2014-07-04 21:13:49 -04:00
Nicolas Dufresne
42a83d2c64
cvvideofilter: Don't try to make buffer writable
...
First this is handle by base transform, hence this is a no-op, and if it wasn't it
would lead to a buffer copy being leaked, and then an unreffed buffer being
pushed downstream.
https://bugzilla.gnome.org/show_bug.cgi?id=732756
2014-07-04 21:13:11 -04:00
Nicolas Dufresne
2acdb2ecf2
cvvideofilter: Check buffer_map return value
...
Check the resturn value and cleanly fail if we could not mapped the buffers.
https://bugzilla.gnome.org/show_bug.cgi?id=732756
2014-07-04 21:12:38 -04:00
Sebastian Rasmussen
77905f632e
mimdec: Print invalid fourcc in error message in hex
...
Previously this was printed as characters which caused later processing
of the error message to sometimes warn about non-UTF-8 characters.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732715
2014-07-04 17:48:14 +01:00
Arun Raghavan
652f0b4fd2
openni2src: Add proper clean up of OpenNI2 objects
...
https://bugzilla.gnome.org/show_bug.cgi?id=732535
2014-07-03 23:08:22 +05:30
Arun Raghavan
46a7f258a1
openni2src: Don't embed C++ objects in our GObject
...
Since C++ objects shoudl be properly constructed, we keep only pointers
to them and manually construct them on the heap.
https://bugzilla.gnome.org/show_bug.cgi?id=732535
2014-07-03 23:08:22 +05:30
Arun Raghavan
357298c84f
openni2src: Close device when stopping the stream
...
https://bugzilla.gnome.org/show_bug.cgi?id=732535
2014-07-03 23:08:22 +05:30
Arun Raghavan
0b6eae66df
openni2src: Fix timestamping
...
OpenNI2 makes no guarantees of timestamp starting from zero, just that
it will be a millisecond timestamp. Make timestamps start from zero
manually so things work correctly.
https://bugzilla.gnome.org/show_bug.cgi?id=732535
2014-07-03 23:08:22 +05:30
Arun Raghavan
6c4269c0e5
openni2src: Make the location property not be mandatory
...
Our calls to device open already handle the unset location case (by
opening any available device).
https://bugzilla.gnome.org/show_bug.cgi?id=732535
2014-07-03 23:08:22 +05:30
Arun Raghavan
7afb4a386a
openni2src: Open device on NULL->READY
...
https://bugzilla.gnome.org/show_bug.cgi?id=732535
2014-07-03 23:08:22 +05:30
Arun Raghavan
b6e07e77c2
openni2src: Fix deadlock when _get_caps() is called before READY
...
The object lock was not being dropped in the empty case. Restructured
the code a bit to make this sort of error less likely.
https://bugzilla.gnome.org/show_bug.cgi?id=732535
2014-07-03 23:08:22 +05:30
Arun Raghavan
65bddd1e0c
openni2src: Mark element as a live source
...
https://bugzilla.gnome.org/show_bug.cgi?id=732535
2014-07-03 23:08:22 +05:30
Jan Alexander Steffens (heftig)
86080cb5cc
rtmpsrc: Report limited bandwidth
...
Makes uridecodebin treat this source as a stream source,
allowing timeshifting.
https://bugzilla.gnome.org/show_bug.cgi?id=732335
2014-07-01 15:02:37 +02:00
Thiago Santos
f2400d7f16
faceblur: release the haar cascade
2014-06-30 11:54:41 -03:00
Sebastian Dröge
e77a93f6a8
segmentation: Release memory storage in finalize
2014-06-30 00:22:22 +02:00
Sebastian Dröge
d5e7c7bffe
textoverlay: Release memory storage and resize image when caps change
2014-06-30 00:18:20 +02:00
Sebastian Dröge
2683c87863
templatematch: Release cvImages when reloading templates are changing caps
2014-06-30 00:15:38 +02:00
Sebastian Dröge
7e0503ca89
pyramidsegment: Release image when changing caps or reusing the element
2014-06-30 00:12:26 +02:00
Sebastian Dröge
e1366c29be
handdetect: Release memory storage
2014-06-30 00:09:28 +02:00
Sebastian Dröge
ae1027297c
faceblur: Release memory storage
...
And also release cvImages and memory storage when changing caps or reusing the
element.
2014-06-30 00:07:22 +02:00
Sebastian Dröge
48e95f3d6f
edgedetect: Don't leak cvImages when caps are changing or the element is reused
2014-06-30 00:05:53 +02:00
Sebastian Dröge
45ac4ba663
pyramidsegment: Release memory storage when finalizing
2014-06-29 23:43:07 +02:00
Sebastian Dröge
7b63bd6348
schroenc: Remove obsolete FIXME comment
2014-06-29 23:33:20 +02:00
Sebastian Dröge
b4ef216f0b
schroenc: Don't leak all input buffers
2014-06-29 23:31:50 +02:00