17 Commits

Author SHA1 Message Date
Joshua M. Doe
76e67ee5fc pleorasrc: set caps before _create to avoid bad negotiation
Caps must be fixated before _create, otherwise initial caps is
width=1,height=1 which cause some sinks to create incorrect window
sizes.
2019-11-07 09:17:49 -05:00
Joshua M. Doe
88f7a82818 pleorasrc: cache caps if width, height, and pixel type don't change 2019-11-07 09:17:49 -05:00
Joshua M. Doe
19ce118c96 pleorasrc: add config-file and config-file-connect properties
If config-file is set to the filepath of a XML file, such as is
generated by eBUS Player, it will be used to restore configuration
to the device and stream. By default, the device and stream will be
connected using the information from the config-file. Set
config-file-connect=false to connect to the camera using other element
properties, and then apply the configuration changes from the
config-file.
2019-11-07 09:17:49 -05:00
Joshua M. Doe
e4ae64b44b pleorasrc: add packet-size property
Also, if auto-negotiate (packet-size=0) is used (the default), and
negotiation fails, use the safe packet size of 1476 bytes.
2019-11-07 09:17:49 -05:00
Joshua M. Doe
351aab12d8 pleorasrc: add more and better useful error feedback to user
Try to return most useful error message to user via GST_ELEMENT_ERROR
instead of using GST_WARNING_OBJECT.
2019-11-07 09:17:49 -05:00
Joshua M. Doe
8b7b405381 pleorasrc: add support for IYU1 and IYU2 pixel formats
This also needed a change to calculating the strides, as IYU1 is 12bpp,
and GstVideoInfo defines pixel stride in bytes, so for IYU2 the stride
was calculated as zero. Instead use Pleora's own definition of pixel
stride to calculate Pleora's row stride.
2019-10-10 07:38:52 -04:00
Joshua M. Doe
ef1242fd81 pleorasrc: run gst-indent 2019-10-02 10:58:17 -04:00
Joshua M. Doe
e1d0574ecf pleorasrc: more useful error messages 2019-10-02 10:58:01 -04:00
Joshua M. Doe
a7f4657547 pleorasrc: add support for compiling against eBUS SDK 5
Unfortunately eBUS SDK 5 breaks API, but only in a few minor ways.
2019-10-02 10:55:24 -04:00
Joshua M. Doe
e364cfe4d5 pleorasrc: fix handling of strides that aren't 32-bit aligned
For example, a Mono8 642x482 would have failed to work, as GStreamer
expects the stride to be a multiple of 4-bytes, that is 644 bytes in
this example, while Pleora doesn't do this alignment. This incurs a copy
unfortunately, and there might be a way with memory meta to avoid this,
however eventually most elements will need to have the data 4-byte
aligned.
2019-08-29 14:56:18 -04:00
Joshua M. Doe
64866758a2 "pleorasrc: open devices by default in unicast mode
When multicast was added, it was always used. Set default
multicast-group to "0.0.0.0" now, which implies unicast.
2019-08-29 12:26:36 -04:00
Joshua M. Doe
bcb80f3b87 pleorasrc: run gst-indent 2018-10-04 13:05:17 -04:00
Joshua M. Doe
5546ea432a pleorasrc: avoid releasing buffer if pipeline is destroyed 2018-10-04 13:02:47 -04:00
Joshua M. Doe
5e6a0eea99 pleorasrc: add RGBa8 support as RGBx 2018-07-10 14:56:10 -04:00
Joshua M. Doe
2588c7b836 pleorasrc: fix detection-timeout property 2018-07-10 14:56:09 -04:00
Joshua M. Doe
c5ee1a5706 pleorasrc: add multicast and receiver-only support 2018-07-10 14:56:08 -04:00
Joshua M. Doe
1bc0829d81 pleorasrc: initial working plugin for Pleora eBUS SDK U3V and GEV cameras 2018-05-21 06:50:57 -04:00