f = gst_bin_get_by_name_recurse_up(GST_BIN(pipeline), "filter");
if (GST_IS_ELEMENT(f)) {
g_object_set(G_OBJECT(f), "caps", new_caps, NULL);
}
g_object_unref(f);
gst_caps_unref(new_caps);
But when I run this program for the Pylonsrc library on a machine with ARM architecture, I get a Segmentation Fault that comes from the library and only occurs when I try to modify the caps element.
The error that i receive in GDB is:
0 0x0000fffff5ed84e8 in () at /opt/BASLER/lib/libpylonbase.so.7.4
1 0x0000fffff5eda7d8 in () at /opt/BASLER/lib/libpylonbase.so.7.4
2 0x0000fffff5d9271c in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() ()
at /opt/BASLER/lib/libpylonbase.so.7.4
3 0x0000fffff5ed69e8 in () at /opt/BASLER/lib/libpylonbase.so.7.4
4 0x0000fffff5ed363c in () at /opt/BASLER/lib/libpylonbase.so.7.4
5 0x0000fffff5edb158 in () at /opt/BASLER/lib/libpylonbase.so.7.4
6 0x0000fffff5d9271c in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() ()
at /opt/BASLER/lib/libpylonbase.so.7.4
7 0x0000fffff5ed2608 in Pylon::CGrabResultPtr::~CGrabResultPtr() ()
at /opt/BASLER/lib/libpylonbase.so.7.4
8 0x0000fffff6be4074 in Pylon::CDeviceSpecificGrabResultPtr::~CDeviceSpecificGrabResultPtr() (this=0xffffc8000fc0, __in_chrg=)
at /opt/BASLER/include/pylon/private/DeviceSpecificGrabResultPtr.h:277
Hi,
My camera is Basler daA3840-45uc (USB Model).
I am trying to modify the parameters of the capsfilter element of pylonsrc and I do it as follows:
GstCaps new_caps; GstElement f; gchar * caps_description;
caps_description = g_strdup_printf("video/x-raw, width=(int)1920, height=(int)1080"); new_caps = gst_caps_from_string(caps_description); g_free (caps_description);
f = gst_bin_get_by_name_recurse_up(GST_BIN(pipeline), "filter");
if (GST_IS_ELEMENT(f)) { g_object_set(G_OBJECT(f), "caps", new_caps, NULL); }
g_object_unref(f); gst_caps_unref(new_caps);
But when I run this program for the Pylonsrc library on a machine with ARM architecture, I get a Segmentation Fault that comes from the library and only occurs when I try to modify the caps element.
The error that i receive in GDB is:
0 0x0000fffff5ed84e8 in () at /opt/BASLER/lib/libpylonbase.so.7.4
1 0x0000fffff5eda7d8 in () at /opt/BASLER/lib/libpylonbase.so.7.4
2 0x0000fffff5d9271c in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() ()
3 0x0000fffff5ed69e8 in () at /opt/BASLER/lib/libpylonbase.so.7.4
4 0x0000fffff5ed363c in () at /opt/BASLER/lib/libpylonbase.so.7.4
5 0x0000fffff5edb158 in () at /opt/BASLER/lib/libpylonbase.so.7.4
6 0x0000fffff5d9271c in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() ()
7 0x0000fffff5ed2608 in Pylon::CGrabResultPtr::~CGrabResultPtr() ()
8 0x0000fffff6be4074 in Pylon::CDeviceSpecificGrabResultPtr::~CDeviceSpecificGrabResultPtr() (this=0xffffc8000fc0, __in_chrg=)
9 Pylon::CBaslerUniversalGrabResultPtr::~CBaslerUniversalGrabResultPtr()
10 Pylon::CBaslerUniversalGrabResultPtr::~CBaslerUniversalGrabResultPtr()
11 free_ptr_grab_result(gpointer) (data=0xffffc8000fc0) at ../ext/pylon/gstpylon.cpp:474
12 0x0000fffff7e8e5c0 in () at /usr/lib/aarch64-linux-gnu/libgstreamer-1.0.so.0
13 0x0000fffff7ed83a0 in () at /usr/lib/aarch64-linux-gnu/libgstreamer-1.0.so.0
14 0x0000fffff7e9a188 in () at /usr/lib/aarch64-linux-gnu/libgstreamer-1.0.so.0
15 0x0000fffff6b4067c in () at /usr/lib/aarch64-linux-gnu/libgstbase-1.0.so.0
16 0x0000fffff6b3fd74 in () at /usr/lib/aarch64-linux-gnu/libgstbase-1.0.so.0
17 0x0000fffff7edcbf0 in () at /usr/lib/aarch64-linux-gnu/libgstreamer-1.0.so.0
18 0x0000fffff7edec38 in () at /usr/lib/aarch64-linux-gnu/libgstreamer-1.0.so.0
19 0x0000fffff7ee6728 in gst_pad_push () at /usr/lib/aarch64-linux-gnu/libgstreamer-1.0.so.0
20 0x0000fffff6b3fe84 in () at /usr/lib/aarch64-linux-gnu/libgstbase-1.0.so.0
21 0x0000fffff7edcbf0 in () at /usr/lib/aarch64-linux-gnu/libgstreamer-1.0.so.0
22 0x0000fffff7edec38 in () at /usr/lib/aarch64-linux-gnu/libgstreamer-1.0.so.0
23 0x0000fffff7ee6728 in gst_pad_push () at /usr/lib/aarch64-linux-gnu/libgstreamer-1.0.so.0
24 0x0000fffff6b3b75c in () at /usr/lib/aarch64-linux-gnu/libgstbase-1.0.so.0
25 0x0000fffff7f1902c in () at /usr/lib/aarch64-linux-gnu/libgstreamer-1.0.so.0
26 0x0000fffff7d1e3c8 in () at /usr/lib/aarch64-linux-gnu/libglib-2.0.so.0
27 0x0000fffff7d1d8f4 in () at /usr/lib/aarch64-linux-gnu/libglib-2.0.so.0
28 0x0000fffff7c76648 in start_thread (arg=0xfffff09a0ab0) at pthread_create.c:477
29 0x0000fffff7bccfdc in thread_start () at ../sysdeps/unix/sysv/linux/aarch64/clone.S:78
Has anyone else had something similar happen to them? Or am I doing something wrong in changing the caps parameters?
Thank you!