🥳 Aravis 0.8.20 stable release


I have released Aravis 0.8.20, a bug fix release with a small set of API additions.

  • camera: make set_frame_rate more robust for Basler cameras (Thies)
  • misc: add runtime version API (Emmanuel)
  • misc: ignore leading spaces in genicam data url (Emmanuel)
  • misc: add get_device_manufacturer_info API (Emmanuel)
  • qa: fix incorrect memory access (Jose)
  • gstreamer: allow to select asynchronous USB mode (Christian)
  • windows: fix thread priority helpers (Garfeng)
  • meson: fix compilation using meson 0.60 (Emmanuel)
  • doc: ubuntu 20.04 build do cimprovements (Brian)

Have fun using Aravis.



I tried installing the newest version and got to the point of sudo ninja install on debian but i got this error:
aravis-0.8.20/build/…/viewer/arvviewer.c:904: undefined reference to `g_content_type_is_mime_type’
wrong glib version?
Edit:i found this apt-get install gstreamer1.0* is not working on 16.04 · Issue #4303 · mavlink/qgroundcontrol · GitHub and think that my debian version is too old? I just uncommented the viewer in the meson.build which solved the build problem


Yes, aravis uses g_content_type_get_mime_type(), which was introduced in glib 2.52. I have just bumped the version in main branch meson configuration to reflect this requirement.

I’m afraid it will break the build completely for your platform, and you will not be able to even build the library. But glib 2.52 is already 5 years old, and is available in CentOS7, which is not we can call a bleeding edge distribution.

I will accept a patch that introduce different required glib2 versions for the library and for the viewer though. Or may be a simpler patch that removes the save to file feature of the viewer if glib is < 2.52.


1 Like

I updated my version from 8.10 to 8.20 for my Lucid Vision Labs PHX016S-M but
now some settings can’t be changed anymore with identical code.

trigger source
trigger mode

and subsequently the frame rate.
This worked before and now it doesn’t. Any idea why?

	feature = arv_device_get_feature(device, "AcquisitionFrameRateEnable");
	arv_gc_boolean_set_value(ARV_GC_BOOLEAN(feature), TRUE, NULL);
	feature = arv_device_get_feature(device, "TriggerMode");
	arv_gc_feature_node_set_value_from_string(ARV_GC_FEATURE_NODE(feature), "On", NULL);
	arv_camera_set_trigger(camera, "Software", NULL);


You should provide a GError to your function calls, and display the message in case of errors.

You may also try to enable the debug output by setting ARV_DEBUG to all:3 for example.

As a side node, you should consider using the ArvCamera accessors: arv_camera_get_boolean, arv_camera_get_float


1 Like