Renames the subdevice property to just device, and has it
return the number of devices in the system in response to
a probe. This is useful both for using multiple capture
cards, and for detecting whether it's worth adding the
element to a pipeline.
Also cleans up the property descriptions.
The channel property allows multiple intersrc/sink pairs to find
each other. It's a free-form text string that must match among
various inter elements. Also fixed up documentation and latency
handling.
Would be nicer if one could just supplement the generic template
from the element template though.
Also, I would really have liked to just add those sections from the
pads template into the element templet directly (so I can cater for
src template caps == sink template caps), but that didn't seem to
work.
AC_CHECK_HEADERS() calls action-if-not-found also if just one of
the headers checked for is missing, which is not what we wanted.
Also, check for highgui_c.h instead of highgui.hpp.
https://bugzilla.gnome.org/show_bug.cgi?id=672226
When a face disappears, we seem to get a message from facedetect with
a face count of 0, which we want to just ignore instead of trying to
access face #-1, which causes nasty warnings.
Use generic and unspecififed rgb/caps for now. The exact caps
supported depend on the facedetect element and rsvgoverlay. It's
not clear how this worked before, since facedetect only accepts
24-bit RGB, but the caps advertised 32-bit ARGB/BGRA. In any case,
we don't want to force anything really, so that if any of those
elements acquires support for additional formats we pick those up
automatically.
The element would create normal pads in its instance_init function,
and then later in NULL->READY create the elements it needs, remove
the pads created in the instance_init function, and add new ghost
pads instead. Not without saving the external peer pads of the old
pads of course, which it would promptly re-link to the new ghost
pads. Do all of that a bit differently.
Fixes the generic/states.check unit test.
https://bugzilla.gnome.org/show_bug.cgi?id=670588
Where highgui.h doesn't exist any more, but only opencv2/highgui/highgui.hpp.
Also, not quite sure why we're checking for cvaux.h, it's not used anywhere.
This always happens with GstByteReader/Writer and friends when
not taking into account returned boolean of the _read/_write functions
(which is actually wrong).
Make use of the *_unchecked variant as much as possible, or take the
returned value into account.
... since it is specified in _finish_frame that input buffer may be invalidated
after calling it, and is as such not reliably available for further encoding.
Also, requesting or allowing several frames is only useful if subclass intends
to process these "in 1 run" (as in, 1 output buffer), not for having another
(inner) loop in subclass where the baseclass one will do just fine.