Commit graph

42 commits

Author SHA1 Message Date
Aaron Boxer 6d3429af34 documentation: fixed a heap o' typos 2019-11-05 09:11:25 -05:00
Joshua M. Doe 912ff02a21 dshowsrcwrapper: refactor device selection, filter creation, and caps retrieval
This allows a future GstDeviceProvider to more easily query devices and caps.
2018-11-09 09:52:40 +00:00
Joshua M. Doe e70af38d4e dshowsrcwrapper: add get_property implementation to sources 2018-11-09 09:52:40 +00:00
Joshua M. Doe 8f7641bf3c dshowvideosrc: handle empty strings for device and device-name
The device and device-name properties should treat NULL and empty strings the same
2018-11-09 09:52:40 +00:00
Joshua M. Doe 73a84148d3 dshowvideosrc: delay selecting device until source is started
The previous behaviour had issues when setting one of the device properties
after _get_caps had been called. The device shouldn't be locked in until after
_start has been called.
2018-11-09 09:52:40 +00:00
Joshua M. Doe 4b4535b35c dshowvideosrc: fix template caps to reflect actual supported caps 2018-11-09 09:52:40 +00:00
Joshua M. Doe 659e5d08ac dshowsrcwrapper: add some helpful debug statements 2018-11-09 09:52:40 +00:00
Joshua M. Doe 6c7ba14247 dshowsrcwrapper: add device-index property to sources
This allows users to more easily select different devices without having
to first get the device or device-name.

https://bugzilla.gnome.org/show_bug.cgi?id=797338
2018-10-27 21:58:30 +01:00
Jerome Laheurte c7e0e8d6ab dshowsrcwrapper: fix DirectShow caps negotiation and set capture pin caps
Some cameras (IDS) have broken DirectShow drivers which incorrectly fill some
fields in the VIDEOINFOHEADER structure; comparison between suggested and
supported media types in CBaseRenderer should ignore deprecated and/or not
essential fields; additionaly explicitely setting the mediatype for the capture
pin before trying to connect it works around another IDS driver bug, and
should have been already done anyway.

https://bugzilla.gnome.org/show_bug.cgi?id=765428
2016-04-23 15:21:44 +01:00
Vineeth TM 8cdfb13658 bad: use new gst_element_class_add_static_pad_template()
https://bugzilla.gnome.org/show_bug.cgi?id=763081
2016-03-24 14:56:51 +02:00
Reynaldo H. Verdejo Pinochet 86ec812429 Remove unnecessary NULL checks before g_free()
g_free() is NULL-safe
2015-11-18 16:05:42 -08:00
Matthew Bader 0fc55436b3 dshowsrcwrapper: Added support for image/jpeg and h264
https://bugzilla.gnome.org/show_bug.cgi?id=741188
2014-12-16 23:17:25 +00:00
Matthew Bader d627f4b93b dshowsrcwrapper: Fixed null caps comparison
https://bugzilla.gnome.org/show_bug.cgi?id=741086
2014-12-04 18:04:11 +01:00
Joshua M. Doe 27eb6555d1 dshowsrcwrapper: avoid error when set_caps called twice
If set_caps is called in a running state, return immediately if the caps
haven't changed. If the pins are already connected, disconnect them.

https://bugzilla.gnome.org/show_bug.cgi?id=736926
2014-09-24 10:02:39 +03:00
Jerome Laheurte 4f60ecdd98 dshowsrcwrapper: Port to 1.0
https://bugzilla.gnome.org/show_bug.cgi?id=732283
2014-09-18 12:36:34 +03:00
Fabricio Costa Alisedo d7c6d240b5 dshowsrcwrapper: Added Graph Builder and Capture Builder to correctly create upstream needed filters by Analog TV Capture Devices. 2013-04-15 08:51:22 +02:00
Andoni Morales Alastruey d4c3fd8a7e dshowsrcwrapper: Add support for UYVY 2013-04-15 08:51:12 +02:00
Tim-Philipp Müller 9e1b75fda3 Fix FSF address
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:09:59 +00:00
Tim-Philipp Müller 32ba17cd0f Use gst_element_class_set_static_metadata()
where possible. Avoids some string copies. Also re-indent
some stuff. Also some indent fixes here and there.
2012-10-17 17:46:34 +01:00
Mark Nauwelaerts 578861abea replace gst_element_class_set_details_simple with gst_element_class_set_metadata 2012-09-14 17:27:49 +02:00
Wim Taymans de1f89bf07 GST_FLOW_WRONG_STATE -> GST_FLOW_FLUSHING 2012-02-08 16:37:13 +01:00
Andoni Morales b65da8ea96 dshowvideosrc: Add support for YUY2 input format
Fix bug #613708
2010-03-24 17:05:14 +01:00
Benjamin Otte 775c7584fd gst_element_class_set_details => gst_element_class_set_details_simple 2010-03-18 22:46:41 +01:00
Julien Isorce db3bd777e8 dshowsrcwrapper: cleanup push buffer callback 2009-10-28 17:37:44 +01:00
Jan Schmidt 3063de4e87 Revert "dshowsrcwrapper: cleanup push buffer callback"
gst-plugins-bad is still frozen for general commits.

This reverts commit 2e4131926f.
2009-10-22 14:00:10 +01:00
Julien Isorce 2e4131926f dshowsrcwrapper: cleanup push buffer callback 2009-10-22 14:26:30 +02:00
Julien Isorce 76e96c70bd dshowvideosrc: cache device caps 2009-09-09 14:34:03 +02:00
Julien Isorce 76304164bb dshowvideosrc: use IEnumMediaTypes when IAMStreamConfig is not usable
For some device drivers IAMStreamConfig is not supported.
But EnumMediatypes does not provide range size and framerate.
2009-09-09 12:41:17 +02:00
Julien Isorce 0518509f0a dshowsrcwrapper: indent 2009-09-07 10:59:53 +02:00
Julien Isorce 9844d73b37 dshowsrcwrapper: convert line ended characters to LF 2009-09-07 10:51:28 +02:00
Julien Isorce 910376e8dd dshowsrcwrapper: go back to previous mode 2009-09-07 10:31:54 +02:00
Julien Isorce e806e7aaeb dshowvideosrc: move VIDEO_STREAM_CONFIG_CAPS to GstCapturePinMediaType 2009-09-04 16:29:53 +02:00
Julien Isorce d321799bfb dshowvideosrc: move default video caps into GstCapturePinMediaType 2009-09-04 12:08:02 +02:00
Julien Isorce 9a1597e58b dshowvideosrc: factorize dshow format to gst caps conversion 2009-09-03 17:49:41 +02:00
Julien Isorce 0f10b769bf dshowvideosrc: factorize dshow video format parsing 2009-09-03 17:12:26 +02:00
Julien Isorce 2004db26d7 dshowsrcwrapper: use of default debug category and better dshow errors readability 2009-08-24 14:37:28 +02:00
Tim-Philipp Müller 1691621faf Remove execute flags from source files 2009-08-10 22:16:37 +01:00
Julien Isorce 8c37eed491 dshowsrcwrapper: can list more than 1 device
something like the following code now works:

vector<string> getVideoDeviceNames()
{
    vector<string> l_name;
    string property;

    GstElement* videodevicesrc = create_element("dshowvideosrc", "videodevicesrc");

    GstPropertyProbe* probe = GST_PROPERTY_PROBE (videodevicesrc);
    GValueArray* va = gst_property_probe_get_values_name (probe, "device-name");

    if (va)
    {
        for(size_t i=0; i < va->n_values; ++i)
        {
            GValue* v = g_value_array_get_nth(va, i);
            string name(g_value_get_string(v));
            l_name.push_back(name);
        }
    }

    if (videodevicesrc)
        gst_object_unref(GST_OBJECT (videodevicesrc));

    return l_name;
}
2009-08-10 16:35:36 +02:00
Julien Isorce 67dd6694a1 dshowsrcwrapper: add a helper function to check a media type 2009-08-10 16:03:17 +02:00
Julien Isorce 0a7c30f6c1 dshowvideosrc: can use other video sizes and framerates than the defaults
Even if the device could capture several video sizes at several framerates,
without this commit, it was only possible to use one video size and
one framerate: the default directshow values.
2009-08-10 14:23:14 +02:00
Julien Isorce dabb692e7c dshowsrcwrapper: remove use of IGstDshowInterface 2009-07-27 14:52:57 +02:00
Julien Isorce 779ac0d98e dshowvideosrc: converts code to C++ 2009-07-22 11:01:49 +02:00
Renamed from sys/dshowsrcwrapper/gstdshowvideosrc.c (Browse further)