Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

On both Linux and Windows platforms, unable to open the video stream from the Hikvision decoder. #862

Open
souldown0 opened this issue Jan 28, 2024 · 1 comment
Labels
1. bug Problems, incorrect behavior or appearance 1. Device support 5. Genicam 1.0 legacy mode Issue in legacy read/write register handling

Comments

@souldown0
Copy link

Describe the bug
Regardless of the version of aravis I run on either Linux or Windows, when it comes to the MV-SC2005AM-02WBN Ethernet camera decoder, it only shows the name and icon of the decoder. Clicking on it only displays three parameters that cannot be modified, and the image acquisition button is also disabled. Why is this happening?

I also ran arv-test-0.8, and here are the results.
Found 1 device Testing 'Hikrobot:MV-SC2005AM-02WBN' Genicam:Load SUCCESS Genicam:Schema SUCCESS Schema validation disabled Properties:SensorSizeReadout SUCCESS Properties:SensorSizeCheck IGNORED Properties:GainAvailable SUCCESS Properties:GainReadout SUCCESS Properties:ExposureTimeAvailable SUCCESS Properties:ExposureTimeReadout SUCCESS MultipleAcquisitionA:BufferCheck FAILURE [AcquisitionMode] [AcquisitionMode] No available entry found SingleAcquisition:BufferCheck FAILURE [AcquisitionMode] [AcquisitionMode] No available entry found SoftwareTrigger:NoSupport FAILURE MultipleAcquisitionB:BufferCheck FAILURE [AcquisitionMode] [AcquisitionMode] No available entry found Multipart:NoSupport SUCCESS Chunks:NoSupport FAILURE GigEVision:NNetworkInterfaces FAILURE 16777216 GigEVision:NStreamChannels FAILURE 16777216 GigEVision:StreamChannel SUCCESS
The camera can be pinged and the firewalls have also been disabled.

To Reproduce
I compiled and installed aravis separately on Linux and Windows, and then launched the camera decoder.

Expected behavior
I hope aravis can properly read and display the camera's video stream.

Camera description:

  • Hikrobot
  • MV-SC2005AM-02WBN-00DA0436939
  • GIGE network

Platform description:

  • Aravis 0.8
  • OS: Ubutu20.04/Windows11
  • Hardware laptop

Additional context
I also tried running arv-camera-test. The output is as follows:
$ arv-camera-test-0.8 -d all
Looking for the first available camera
[13:47:48.043] 🅸 interface> Found 0 USB3Vision device (among 4 USB devices)
[13:47:48.044] 🅸 interface> [GvDiscoverSocket::new] Add interface 127.0.0.1 (127.0.0.1)
[13:47:48.045] 🅸 interface> [GvDiscoverSocket::new] Add interface 169.254.113.9 (169.254.113.255)
[13:47:48.049] 🅸 interface> [GvInterface::discovery] Device 'Hikrobot-MV-SC2005AM-02WBN-00DA0436939' found (interface 169.254.113.9) user_id '' - MAC '34:bd:20:24:d7:6e'
[13:47:48.049] 🅸 device> [GvDevice::new] Interface address = 169.254.113.9
[13:47:48.049] 🅸 device> [GvDevice::new] Device address = 169.254.113.42
[13:47:48.052] 🅸 device> [GvDevice::load_genicam] xml url = 'Local:Hikvision_GigE_Vision_1_V3_0_0.zip;100000;11570' at 0x200
[13:47:48.052] 🅸 device> [GvDevice::load_genicam] Xml address = 0x100000 - size = 0x11570 - Hikvision_GigE_Vision_1_V3_0_0.zip
[13:47:48.365] 🅸 device> [GvDevice::load_genicam] Zipped xml data
[13:47:48.369] 🅸 dom> [GcFeature::set_attribute] Unknown attribute 'xmlns:mstns'
[13:47:48.421] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevCurrentIPConfigurationLLA'
[13:47:48.422] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevCurrentIPConfigurationDHCP'
[13:47:48.424] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevCurrentIPConfigurationPersistentIP'
[13:47:48.424] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevCurrentIPAddress'
[13:47:48.424] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevCurrentSubnetMask'
[13:47:48.424] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevCurrentDefaultGateway'
[13:47:48.425] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevNumberOfNetworkInterfaces'
[13:47:48.426] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevPersistentIPAddress'
[13:47:48.426] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevPersistentSubnetMask'
[13:47:48.427] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevPersistentDefaultGateway'
[13:47:48.428] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevStreamChannelCount'
[13:47:48.428] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevStreamChannelSelector'
[13:47:48.428] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevSCPAddrCalc'
[13:47:48.429] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevTimestampTickFrequency'
[13:47:48.429] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevSCPHostPort'
[13:47:48.430] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevSCPSFireTestPacket'
[13:47:48.430] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevSCPSDoNotFragment'
[13:47:48.431] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevSCPSBigEndian'
[13:47:48.431] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevSCPSPacketSize'
[13:47:48.432] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevSCPD'
[13:47:48.433] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevSCDA'
[13:47:48.433] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevSCSP'
[13:47:48.434] 🅸 genicam> [Gc::set_default_node_data] Add 'ArvGevSCCFGMultipart'
[13:47:48.441] 🅸 device> [GvDevice::new] Device endianness = little
[13:47:48.441] 🅸 device> [GvDevice::new] Packet resend = yes
[13:47:48.441] 🅸 device> [GvDevice::new] Write memory = yes
[13:47:48.441] 🅸 device> [GvDevice::new] Legacy endianness handling = no
vendor name = Hikrobot
model name = MV-SC2005AM-02WBN
device serial number = 00DA0436939
image width = 537067520
image height = 1476526080
exposure = 4.1943e+09 µs
gain = 83886080 dB
payload = 5441280 bytes
gv n_stream channels = 16777216
gv current channel = 0
gv packet delay = 1113690985 ns
[13:47:48.501] 🅸 device> [GvDevice::create_stream] Number of stream channels = 16777216
[13:47:48.507] 🆆 device> [GvDevice::auto_packet_size] Invalid ArvGevSCPSPacketSize properties
[13:47:48.510] 🅸 stream> [GvStream::stream_new] Stream channel = 0
[13:47:48.517] 🅸 stream> [GvStream::stream_new] Packet size = 64 byte(s)
[13:47:48.527] 🅸 stream> [GvStream::stream_new] Destination stream port = 45061
[13:47:48.527] 🅸 stream> [GvStream::stream_new] Source stream port = 0
[13:47:48.528] 🅸 stream> [GvStream::loop] Standard socket method
gv packet size = 64 bytes
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
0 frame/s - 0 MiB/s
^C 0 frame/s - 0 MiB/s
n_completed_buffers = 0
n_failures = 0
n_underruns = 0
n_timeouts = 0
n_aborted = 0
n_missing_frames = 0
n_size_mismatch_errors = 0
n_received_packets = 0
n_missing_packets = 0
n_error_packets = 0
n_ignored_packets = 0
n_resend_requests = 0
n_resent_packets = 0
n_resend_ratio_reached = 0
n_resend_disabled = 0
n_duplicated_packets = 0
n_transferred_bytes = 0
n_ignored_bytes = 0
[13:48:15.592] 🅸 stream> bins ;frame_retent; packet_time;inter_packet
0; 0; 0; 0
-------------
>= 2000; 0; 0; 0
< 0; 0; 0; 0
min : n/a; n/a; n/a
max : n/a; n/a; n/a
last max at : 0; 0; 0
counter : 0: 0: 0
[13:48:15.592] 🅸 stream> [GvStream::finalize] n_completed_buffers = 0
[13:48:15.592] 🅸 stream> [GvStream::finalize] n_failures = 0
[13:48:15.592] 🅸 stream> [GvStream::finalize] n_underruns = 0
[13:48:15.592] 🅸 stream> [GvStream::finalize] n_timeouts = 0
[13:48:15.592] 🅸 stream> [GvStream::finalize] n_aborted = 0
[13:48:15.593] 🅸 stream> [GvStream::finalize] n_missing_frames = 0
[13:48:15.593] 🅸 stream> [GvStream::finalize] n_size_mismatch_errors = 0
[13:48:15.593] 🅸 stream> [GvStream::finalize] n_received_packets = 0
[13:48:15.593] 🅸 stream> [GvStream::finalize] n_missing_packets = 0
[13:48:15.593] 🅸 stream> [GvStream::finalize] n_error_packets = 0
[13:48:15.593] 🅸 stream> [GvStream::finalize] n_ignored_packets = 0
[13:48:15.593] 🅸 stream> [GvStream::finalize] n_resend_requests = 0
[13:48:15.593] 🅸 stream> [GvStream::finalize] n_resent_packets = 0
[13:48:15.593] 🅸 stream> [GvStream::finalize] n_resend_ratio_reached = 0
[13:48:15.593] 🅸 stream> [GvStream::finalize] n_resend_disabled = 0
[13:48:15.593] 🅸 stream> [GvStream::finalize] n_duplicated_packets = 0
[13:48:15.593] 🅸 stream> [GvStream::finalize] n_transferred_bytes = 0
[13:48:15.593] 🅸 stream> [GvStream::finalize] n_ignored_bytes = 0
[13:48:15.593] 🅸 stream> [Stream::finalize] Flush 50 buffer[s] in input queue
[13:48:15.593] 🅸 stream> [Stream::finalize] Flush 0 buffer[s] in output queue
How can I make the camera work with aravis?
Thank you very much.

@EmmanuelP
Copy link
Contributor

Hi,

Thanks for the report. It is probably another instance of the legacy endianness support issue. You device should be added to the exception list in arvgcport.c, like what is done in this merge request: https://github.com/AravisProject/aravis/pull/860/files

@EmmanuelP EmmanuelP added 1. bug Problems, incorrect behavior or appearance 1. Device support 5. Genicam 1.0 legacy mode Issue in legacy read/write register handling labels Feb 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1. bug Problems, incorrect behavior or appearance 1. Device support 5. Genicam 1.0 legacy mode Issue in legacy read/write register handling
Projects
None yet
Development

No branches or pull requests

2 participants