Gstreamer: node 'GainAuto' not found

Hello,

I’m trying to use a Baumer TGX08C but I have an issue with the gstreamer part.

Using arv-viewer I can get the camera picture, set the gain and exposure.

Using:
aravissrc:6 gst-launch-1.0 aravissrc camera-name='Baumer Optronic-TXG08c-9077651119' ! video/x-raw,width=1028,height=772 ! videoconvert ! ximagesink sync="false"
I’m getting a black picture (wrong exposure I guess) and lots of Error packet.

[GvStream::process_packet] Error packet at dt = 314281, packet id = 475 frame id = 160
packet_type  = packet-unavailable (0x800c)
content_type = data-block (0x0003)
frame_id     =      160 
packet_id    =      475
data_size    =       10

Using:
GST_DEBUG=aravissrc:6 gst-launch-1.0 aravissrc camera-name='Baumer Optronic-TXG08c-9077651119' exposure=5000 exposure-auto=0 gain=15 gain-auto=0 ! video/x-raw,width=1028,height=772 ! videoconvert ! ximagesink sync="false"
I get the following:

0:00:00.028176933 410449 0x56444a0eb6c0 DEBUG              aravissrc gstaravis.c:678:gst_aravis_set_property:<aravis0> setting property camera-name
Found 0 USB3Vision device (among 7 USB devices)
[GvDiscoverSocket::new] Add interface 127.0.0.1
[GvDiscoverSocket::new] Add interface 192.168.10.167
[GvDiscoverSocket::new] Add interface 10.0.0.9
[GvDiscoverSocket::new] Add interface 192.168.254.1
[GvInterface::discovery] Device 'Baumer Optronic-TXG08c-9077651119' found (interface 192.168.10.167) user_id 'ipcam-indus-01' - MAC '00:06:be:0d:d9:f5'
[GvDevice::new] Interface address = 192.168.10.167
[GvDevice::new] Device address = 192.168.10.156
[GvDevice::load_genicam] xml url = 'Local:Baumer_TXG08c_B2111.zip;8006612c;335f' at 0x200
[GvDevice::load_genicam] Xml address = 0x8006612c - size = 0x335f - Baumer_TXG08c_B2111.zip
[GvDevice::load_genicam] Zipped xml data
[GcFeature::set_attribute] Unknown attribute 'StandardNameSpace'
[GcFeature::set_attribute] Unknown attribute 'ToolTip'
[GcFeature::set_attribute] Unknown attribute 'ProductGuid'
[GcFeature::set_attribute] Unknown attribute 'VersionGuid'
[GcFeature::set_attribute] Unknown attribute 'xmlns'
[GcFeature::set_attribute] Unknown attribute 'xmlns:xsi'
[GcFeature::set_attribute] Unknown attribute 'xsi:schemaLocation'
[Gc::set_default_node_data] Add 'GevSCSP'
[Gc::set_default_node_data] Add 'GevSCPAddrCalc'
[GvDevice::new] Packet resend = yes
[GvDevice::new] Write memory = yes
[GvDevice::new] Legacy endianness handling = yes
0:00:00.210562224 410449 0x56444a0eb6c0 LOG                aravissrc gstaravis.c:691:gst_aravis_set_property:<aravis0> Set camera name to Baumer Optronic-TXG08c-9077651119
0:00:00.210606167 410449 0x56444a0eb6c0 DEBUG              aravissrc gstaravis.c:678:gst_aravis_set_property:<aravis0> setting property exposure
0:00:00.211442316 410449 0x56444a0eb6c0 DEBUG              aravissrc gstaravis.c:678:gst_aravis_set_property:<aravis0> setting property exposure-auto
0:00:00.211461883 410449 0x56444a0eb6c0 DEBUG              aravissrc gstaravis.c:678:gst_aravis_set_property:<aravis0> setting property gain
0:00:00.216518363 410449 0x56444a0eb6c0 DEBUG              aravissrc gstaravis.c:678:gst_aravis_set_property:<aravis0> setting property gain-auto
0:00:00.219812846 410449 0x56444a0eb6c0 LOG                aravissrc gstaravis.c:179:gst_aravis_get_caps:<aravis0> Available caps = ANY
0:00:00.219873480 410449 0x56444a0eb6c0 LOG                aravissrc gstaravis.c:179:gst_aravis_get_caps:<aravis0> Available caps = ANY
0:00:00.221740584 410449 0x56444a0eb6c0 LOG                aravissrc gstaravis.c:179:gst_aravis_get_caps:<aravis0> Available caps = ANY
0:00:00.223862987 410449 0x56444a0eb6c0 LOG                aravissrc gstaravis.c:179:gst_aravis_get_caps:<aravis0> Available caps = ANY
0:00:00.224036052 410449 0x56444a0eb6c0 LOG                aravissrc gstaravis.c:179:gst_aravis_get_caps:<aravis0> Available caps = ANY
Setting pipeline to PAUSED ...
0:00:00.224983711 410449 0x56444a0eb6c0 LOG                aravissrc gstaravis.c:426:gst_aravis_start:<aravis0> Open camera 'Baumer Optronic-TXG08c-9077651119'
0:00:00.224996435 410449 0x56444a0eb6c0 LOG                aravissrc gstaravis.c:119:gst_aravis_get_all_camera_caps:<aravis0> Get all camera caps
[PixelFormat::to_gst_caps_string] 0x01100011 not found
[PixelFormat::to_gst_caps_string] 0x02180015 not found
[PixelFormat::to_gst_caps_string] 0x020c001e not found
[PixelFormat::to_gst_caps_string] 0x02180020 not found
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
0:00:00.227696973 410449 0x56444a14cb60 LOG                aravissrc gstaravis.c:179:gst_aravis_get_caps:<aravis0> Available caps = video/x-bayer, format=(string)rggb, width=(int)[ 4, 1028 ], height=(int)[ 1, 772 ], framerate=(fraction)[ 0/1, 152/1 ]; video/x-raw, format=(string)GRAY8, width=(int)[ 4, 1028 ], height=(int)[ 1, 772 ], framerate=(fraction)[ 0/1, 152/1 ]; video/x-raw, format=(string)RGB, width=(int)[ 4, 1028 ], height=(int)[ 1, 772 ], framerate=(fraction)[ 0/1, 152/1 ]; video/x-raw, format=(string)UYVY, width=(int)[ 4, 1028 ], height=(int)[ 1, 772 ], framerate=(fraction)[ 0/1, 152/1 ]
New clock: GstSystemClock
0:00:00.229849823 410449 0x56444a14cb60 LOG                aravissrc gstaravis.c:601:gst_aravis_fixate_caps:<aravis0> Fixate caps
0:00:00.229909816 410449 0x56444a14cb60 LOG                aravissrc gstaravis.c:202:gst_aravis_set_caps:<aravis0> Requested caps = video/x-raw, format=(string)GRAY8, width=(int)1028, height=(int)772, framerate=(fraction)152/1, pixel-aspect-ratio=(fraction)1/1
0:00:00.253384203 410449 0x56444a14cb60 DEBUG              aravissrc gstaravis.c:257:gst_aravis_set_caps:<aravis0> Frame rate = 152 Hz
0:00:00.256624574 410449 0x56444a14cb60 DEBUG              aravissrc gstaravis.c:268:gst_aravis_set_caps:<aravis0> Buffer timeout = 2000000 µs
0:00:00.257250038 410449 0x56444a14cb60 DEBUG              aravissrc gstaravis.c:271:gst_aravis_set_caps:<aravis0> Actual frame rate = 152 Hz
0:00:00.257273812 410449 0x56444a14cb60 DEBUG              aravissrc gstaravis.c:276:gst_aravis_set_caps:<aravis0> Auto Gain = Off
0:00:00.257287368 410449 0x56444a14cb60 DEBUG              aravissrc gstaravis.c:280:gst_aravis_set_caps:<aravis0> Gain = 15
0:00:00.259130527 410449 0x56444a14cb60 DEBUG              aravissrc gstaravis.c:285:gst_aravis_set_caps:<aravis0> Actual gain = 15
0:00:00.259153480 410449 0x56444a14cb60 DEBUG              aravissrc gstaravis.c:294:gst_aravis_set_caps:<aravis0> Exposure = 5000 µs
0:00:00.259743919 410449 0x56444a14cb60 DEBUG              aravissrc gstaravis.c:299:gst_aravis_set_caps:<aravis0> Actual exposure = 5000 µs
0:00:00.259783112 410449 0x56444a14cb60 WARN               aravissrc gstaravis.c:359:gst_aravis_set_caps:<aravis0> error: Could not set caps on camera "Baumer Optronic-TXG08c-9077651119": node 'GainAuto' not found
ERROR: from element /GstPipeline:pipeline0/GstAravis:aravis0: Could not set caps on camera "Baumer Optronic-TXG08c-9077651119": node 'GainAuto' not found
Additional debug info:
../gst/gstaravis.c(359): gst_aravis_set_caps (): /GstPipeline:pipeline0/GstAravis:aravis0
Execution ended after 0:00:00.032287136
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
0:00:00.260748935 410449 0x56444a0eb6c0 DEBUG              aravissrc gstaravis.c:460:gst_aravis_stop:<aravis0> Stop acquisition
Setting pipeline to NULL ...
Freeing pipeline ...

I can get a picture, with very slow framerate and few light without specifying exposure/gain and using video/x-raw,width=1028,height=772,framerate=1/4,format=GRAY8, but RGB or UYVY produce a black picture.

Same low framerate and few light with video/x-bayer,width=1028,height=772,framerate=1/4 ! bayer2rgb (still no exposure/gain option) .

Any ideas what can be wrong in the command, or is it a bug on the gstreamer plugin part ?

Here is my features list:

Baumer Optronic-TXG08c-9077651119 (192.168.10.156)
Category    : 'Root'
    Category    : 'DeviceControl'
        StringReg   : 'DeviceVendorName'
        StringReg   : 'DeviceModelName'
        StringReg   : 'DeviceManufacturerInfo'
        StringReg   : 'DeviceVersion'
        StringReg   : 'DeviceID'
        StringReg   : 'DeviceUserID'
        Enumeration : 'DeviceScanType'
            EnumEntry   : 'Linescan'
            EnumEntry   : 'Areascan'
        Enumeration : 'DeviceSensorType'
            EnumEntry   : 'CMOS'
            EnumEntry   : 'CCD'
        Integer     : 'ReadOutTime'
        Integer     : 'BoSpec0'
    Category    : 'ImageFormatControl'
        Integer     : 'SensorWidth'
        Integer     : 'SensorHeight'
        Integer     : 'WidthMax'
        Integer     : 'HeightMax'
        Integer     : 'Width'
        Integer     : 'Height'
        Integer     : 'OffsetX'
        Integer     : 'OffsetY'
        Integer     : 'BinningHorizontal'
        Integer     : 'BinningVertical'
        Enumeration : 'PixelFormat'
            EnumEntry   : 'YUV444Packed'
            EnumEntry   : 'YUV422Packed'
            EnumEntry   : 'YUV411Packed'
            EnumEntry   : 'BGR8Packed'
            EnumEntry   : 'RGB8Packed'
            EnumEntry   : 'Mono8'
            EnumEntry   : 'BayerRG12'
            EnumEntry   : 'BayerRG8'
        Enumeration : 'TestImageSelector'
            EnumEntry   : 'HorizontalAndVerticalLineMoving'
            EnumEntry   : 'HorizontalLineMoving'
            EnumEntry   : 'VerticalLineMoving'
            EnumEntry   : 'GreyVerticalRamp'
            EnumEntry   : 'GreyHorizontalRamp'
            EnumEntry   : 'Off'
        Enumeration : 'HqMode'
            EnumEntry   : 'Off'
            EnumEntry   : 'On'
    Category    : 'AcquisitionControl'
        Enumeration : 'AcquisitionMode'
            EnumEntry   : 'Continuous'
        Command     : 'AcquisitionStart'
        Command     : 'AcquisitionStop'
        Command     : 'AcquisitionAbort'
        Command     : 'AcquisitionPause'
        Command     : 'AcquisitionResume'
        Float       : 'AcquisitionFrameRate'
        Boolean     : 'AcquisitionFrameRateEnable'
        Enumeration : 'TriggerSelector'
            EnumEntry   : 'FrameStart'
        Enumeration : 'TriggerMode'
            EnumEntry   : 'Off'
            EnumEntry   : 'On'
        Command     : 'TriggerSoftware'
        Enumeration : 'TriggerSource'
            EnumEntry   : 'All'
            EnumEntry   : 'Action1'
            EnumEntry   : 'Line0'
            EnumEntry   : 'Software'
            EnumEntry   : 'Off'
        Enumeration : 'TriggerActivation'
            EnumEntry   : 'RisingEdge'
            EnumEntry   : 'FallingEdge'
        Enumeration : 'TriggerOverlap'
            EnumEntry   : 'ReadOut'
        Float       : 'TriggerDelay'
        Float       : 'TriggerDelayAbs'
        Integer     : 'TriggerDelayRaw'
        Float       : 'ExposureTime'
        Float       : 'ExposureTimeAbs'
    Category    : 'DigitalIOControl'
        Enumeration : 'LineSelector'
            EnumEntry   : 'Line1'
            EnumEntry   : 'Line0'
        Enumeration : 'LineMode'
            EnumEntry   : 'Input'
            EnumEntry   : 'Output' (Not available)
        Boolean     : 'LineInverter'
        Boolean     : 'LineStatus'
        Integer     : 'LineStatusAll'
        Enumeration : 'LineSource'
            EnumEntry   : 'Timer1Active'
            EnumEntry   : 'TriggerSkipped'
            EnumEntry   : 'TriggerOverlapped'
            EnumEntry   : 'TriggerReady'
            EnumEntry   : 'ReadoutActive'
            EnumEntry   : 'UserOutput0'
            EnumEntry   : 'ExposureActive'
            EnumEntry   : 'Off'
        Enumeration : 'UserOutputSelector'
            EnumEntry   : 'UserOutput0'
        Boolean     : 'UserOutputValue'
        Integer     : 'UserOutputValueAll'
        Float       : 'LineDebouncerHighTimeAbs'
        Float       : 'LineDebouncerLowTimeAbs'
        Enumeration : 'Flash'
            EnumEntry   : 'Off'
            EnumEntry   : 'On'
        Enumeration : 'FlashPolarity'
            EnumEntry   : 'lowActiv'
            EnumEntry   : 'highActiv'
    Category    : 'CounterAndTimerControl'
        Integer     : 'FrameCounter'
        Enumeration : 'TimerSelector'
            EnumEntry   : 'Timer1'
        Float       : 'TimerDuration'
        Float       : 'TimerDelay'
        Enumeration : 'TimerTriggerSource'
            EnumEntry   : 'TriggerSkipped'
            EnumEntry   : 'FrameEnd'
            EnumEntry   : 'FrameStart'
            EnumEntry   : 'ExposureEnd'
            EnumEntry   : 'ExposureStart'
            EnumEntry   : 'Action1'
            EnumEntry   : 'Software'
            EnumEntry   : 'Line0'
            EnumEntry   : 'Off'
        Enumeration : 'TimerTriggerActivation'
            EnumEntry   : 'RisingEdge'
    Category    : 'EventControl'
        Enumeration : 'EventSelector'
            EnumEntry   : 'TriggerSkipped'
            EnumEntry   : 'TriggerOverlapped'
            EnumEntry   : 'TriggerReady'
            EnumEntry   : 'FrameEnd'
            EnumEntry   : 'FrameStart'
            EnumEntry   : 'ExposureEnd'
            EnumEntry   : 'ExposureStart'
            EnumEntry   : 'Line1FallingEdge'
            EnumEntry   : 'Line1RisingEdge'
            EnumEntry   : 'Line0FallingEdge'
            EnumEntry   : 'Line0RisingEdge'
            EnumEntry   : 'PrimaryApplicationSwitch'
            EnumEntry   : 'EventDiscarded'
            EnumEntry   : 'GigEVisionHeartbeatTimeOut'
            EnumEntry   : 'EventLost'
            EnumEntry   : 'GigEVisionError'
        Enumeration : 'EventNotification'
            EnumEntry   : 'GigEVisionEvent'
            EnumEntry   : 'Off'
        Integer     : 'LostEventCounter'
        Integer     : 'DiscardedEventCounter'
    Category    : 'AnalogControl'
        Enumeration : 'GainSelector'
            EnumEntry   : 'Green'
            EnumEntry   : 'Blue'
            EnumEntry   : 'Red'
            EnumEntry   : 'All'
        Float       : 'Gain'
        Integer     : 'GainRaw'
        Float       : 'GainAbs'
        Float       : 'GainFactor'
        Enumeration : 'BlackLevelSelector'
            EnumEntry   : 'All'
        Integer     : 'BlackLevelRaw'
        Command     : 'WhiteBalance' (Not available)
    Category    : 'LUTControl'
        Boolean     : 'DefectPixelCorrection'
        Integer     : 'DefectPixelListIndex'
              * DefectPixelListEntryActive
              * DefectPixelListEntryPosX
              * DefectPixelListEntryPosY
        Boolean     : 'DefectPixelListEntryActive'
        Integer     : 'DefectPixelListEntryPosX'
        Integer     : 'DefectPixelListEntryPosY'
        Command     : 'DefectPixelListUpdate'
    Category    : 'TransportLayerControl'
        Integer     : 'PayloadSize'
        Integer     : 'GevVersionMajor'
        Integer     : 'GevVersionMinor'
        Boolean     : 'GevDeviceModeIsBigEndian'
        Enumeration : 'GevDeviceModeCharacterSet'
            EnumEntry   : 'UTF8'
        Integer     : 'GevInterfaceSelector'
              * GevMACAddress
              * GevSupportedIPConfigurationLLA
              * GevSupportedIPConfigurationDHCP
              * GevSupportedIPConfigurationPersistentIP
              * GevCurrentIPConfiguration
              * GevCurrentIPConfigurationLLA
              * GevCurrentIPConfigurationDHCP
              * GevCurrentIPConfigurationPersistentIP
              * GevCurrentIPAddress
              * GevCurrentSubnetMask
              * GevCurrentDefaultGateway
              * GevPersistentIPAddress
              * GevPersistentSubnetMask
              * GevPersistentDefaultGateway
              * GevLinkSpeed
        Integer     : 'GevMACAddress'
        Boolean     : 'GevSupportedIPConfigurationLLA'
        Boolean     : 'GevSupportedIPConfigurationDHCP'
        Boolean     : 'GevSupportedIPConfigurationPersistentIP'
        Boolean     : 'GevCurrentIPConfigurationLLA'
        Boolean     : 'GevCurrentIPConfigurationDHCP'
        Boolean     : 'GevCurrentIPConfigurationPersistentIP'
        Integer     : 'GevCurrentIPAddress'
        Integer     : 'GevCurrentSubnetMask'
        Integer     : 'GevCurrentDefaultGateway'
        StringReg   : 'GevFirstURL'
        StringReg   : 'GevSecondURL'
        Integer     : 'GevNumberOfInterfaces'
        Integer     : 'GevPersistentIPAddress'
        Integer     : 'GevPersistentSubnetMask'
        Integer     : 'GevPersistentDefaultGateway'
        Integer     : 'GevMessageChannelCount'
        Integer     : 'GevStreamChannelCount'
        Boolean     : 'GevSupportedOptionalCommandsUserDefinedName'
        Boolean     : 'GevSupportedOptionalCommandsSerialNumber'
        Boolean     : 'GevSupportedOptionalCommandsEVENTDATA'
        Boolean     : 'GevSupportedOptionalCommandsEVENT'
        Boolean     : 'GevSupportedOptionalCommandsPACKETRESEND'
        Boolean     : 'GevSupportedOptionalCommandsWRITEMEM'
        Boolean     : 'GevSupportedOptionalCommandsConcatenation'
        Integer     : 'GevHeartbeatTimeout'
        Integer     : 'GevTimestampTickFrequency'
        Command     : 'GevTimestampControlLatch'
        Command     : 'GevTimestampControlReset'
        Integer     : 'GevTimestampValue'
        Boolean     : 'GevGVCPPendingAck'
        Boolean     : 'GevGVCPHeartbeatDisable'
        Integer     : 'GevGVCPPendingTimeout'
        Enumeration : 'GevCCP'
            EnumEntry   : 'ExclusiveAccess'
            EnumEntry   : 'ControlAccess'
            EnumEntry   : 'OpenAccess'
        Integer     : 'GevPrimaryApplicationSocket'
        Integer     : 'GevPrimaryApplicationIPAddress'
        Integer     : 'GevMCPHostPort'
        Integer     : 'GevMCDA'
        Integer     : 'GevMCTT'
        Integer     : 'GevMCRC'
        Integer     : 'GevStreamChannelSelector'
              * GevSCPInterfaceIndex
              * GevSCPHostPort
              * GevSCPSDoNotFragment
              * GevSCPSBigEndian
              * GevSCPSPacketSize
              * GevSCPD
              * GevSCFTD
              * GevSCDA
        Integer     : 'GevSCPInterfaceIndex'
        Integer     : 'GevSCPHostPort'
        Boolean     : 'GevSCPSFireTestPacket'
        Boolean     : 'GevSCPSDoNotFragment'
        Boolean     : 'GevSCPSBigEndian'
        Integer     : 'GevSCPSPacketSize'
        Integer     : 'GevSCPD'
        Integer     : 'GevSCFTD'
        Integer     : 'GevSCDA'
        Integer     : 'TLParamsLocked'
    Category    : 'UserSetControl'
        Enumeration : 'UserSetSelector'
            EnumEntry   : 'UserSet3'
            EnumEntry   : 'UserSet2'
            EnumEntry   : 'UserSet1'
            EnumEntry   : 'Default'
        Command     : 'UserSetLoad'
        Command     : 'UserSetSave'
        Enumeration : 'UserSetDefaultSelector'
            EnumEntry   : 'UserSet3'
            EnumEntry   : 'UserSet2'
            EnumEntry   : 'UserSet1'
            EnumEntry   : 'Default'
    Category    : 'ChunkDataControl'
        Boolean     : 'ChunkModeActive'
        Enumeration : 'ChunkSelector'
            EnumEntry   : 'FreeformatHeader2'
            EnumEntry   : 'Image'
        Boolean     : 'ChunkEnable'
    Category    : 'ActionControl'
        Integer     : 'ActionDeviceKey'
        Integer     : 'ActionSelector'
              * ActionGroupKey
              * ActionGroupMask
        Integer     : 'ActionGroupMask'
        Integer     : 'ActionGroupKey'

Hi,

Sorry for the very late reply.

The GStreamer plugin in latest aravis release should not fail now trying to set a non existent GainAuto feature.

Did you manage to get a correctly exposed video since your message ?