Skip to content

Release 1.0.0

Compare
Choose a tag to compare
@TIS-Edgar TIS-Edgar released this 01 Jun 09:58
· 149 commits to master since this release

Added

General:

  • internal dependency to fmt
  • environment variable TCAM_ARV_STREAM_OPTIONS, allows setting of ArvStream options
  • environment variable TCAM_GIGE_HEARTBEAT_MS, allows setting the heartbeat timeout
  • tiscamera threads now have names for easier identification during debugging.

CMake:

  • clang-format definition, call make clang-format for formatting
  • cmake flag TCAM_DOWNLOAD_MESON for legacy systems to allow modern aravis installations.
    for the referenced aravis version, meson-version=0.56 is necessary
  • Module configuration string to log and version info

GStreamer:

  • GstTcamDeviceProvider, see documentation for usage.
  • tcamconvert gstreamer conversion element
    replaces tcamwhitebalance and provides color-conversion services.
  • tcambin property conversion-element
    Used to select the internal conversion elements.
    Available options are tcamconvert, tcamdutils, tcamdutils-cuda and auto.
  • tcambin property available-caps to fetch available device caps
  • tcambin/tcamsrc property tcam-device to directly set a GstDevice instance to open
  • tcambin/tcamsrc property tcam-properties. GstStructure like description of properties.
    See documentation for more details.
  • tcambin/tcamsrc signals device-open/device-close
  • support for tcamdutils-cuda
  • example on how to retrieve GstMeta data in python
  • GstQuery for AcceptCaps and Caps in tcammainsrc

Tools:

  • tcam-ctrl --packages - list all installed 'The Imaging Source' packages and their version
  • tcam-ctrl --version now lists configured modules

Changed

General:

  • property API changed to tcam-property-1.0 (part of tiscamera)
  • device list API changed to GstDeviceProvider
  • aravis library minimum version is now 0.8.20.
  • logging now uses spdlog and is enabled via e.g. GST_DEBUG=tcam*:3
  • Filter for DFG/USB2pro. Device will no longer appear in device listings.

CMake:

  • output directory for binaries/libraries to /bin and /lib
  • installation variables are now all defined in CMakeInstall.cmake
  • cmake option TCAM_BUILD_ARAVIS now defaults to ON
  • cmake option TCAM_BUILD_DOCUMENTATION now defaults to ON
  • cmake option TCAM_ARAVIS_USB_VISION now defaults to ON

GStreamer:

  • gstreamer buffers are now marked as "live"
  • tcamsrc/tcammainsrc 'do-timestamp' default changed to false.
  • tcambin/tcamsrc/tcammainsrc must be in GST_STATE_READY or higher before you can access a device
  • tcambin/tcamsrc property-state renamed to tcam-properties-json
  • tcambin version tcamdutils does not check for parity anymore,
    but for minimum version to ensure compatability.
  • tcamautoexposure gstreamer element - functionality now in tcammainsrc
  • tcamwhitebalance gstreamer element - functionality now in tcammainsrc,
    application in tcamconvert/tcamdutils
  • tcamautofocus gstreamer element - functionality now in tcammainsrc
  • gstreamer resolution ranges now contain a step size
  • polarization caps have been renamed, check caps descriptions for new ones

Tools:

Fixed

  • "device-lost" notifications could take over 3 minutes for aravis cameras.
    Should now appear within 5 seconds.
  • generated debian packages are now installable when no systemd exists.
    This is only relevant when compiling with aravis.

Removed

  • gstreamer elements tcamautoexposure, tcamwhitebalance, tcamautofocus
  • tcamprop 0.1 API
  • firmware-update
    Moved to a separate repository: https://github.com/theimagingsource/tcam-firmware-update
  • camera-ip-conf
    Use tcam-gigetool instead.
  • tcambin property use-dutils
    Use tcambin property conversion-element instead.
  • environment variable TCAM_ARV_PACKET_REQUEST_RATIO, replaced with TCAM_ARV_STREAM_OPTIONS
  • environment variable TCAM_LOG, replaced with gstreamer logging category tcam-libtcam
  • unmaintained unit tests
  • TCAM_LOG environment variable.
    Use GST_DEBUG category tcam-libtcam instead.
  • Legacy uvc extension descriptions for uvcdynctrl

Known Issues

  • In camera Auto Functions ROI may not correctly lock properties
  • In camera Auto Functions ROI Top/Left/Width/Height may not correctly update when using preset
  • AFU050: image/jpeg,width=1280,height=960 may cause segfault when used.
    Cause is in external library.
  • GstQueryCaps for Usb3Vision devices via aravis does not work correctly