Can I test libusb async branch?

Hi Emmanuel and Folks,

Recently I started to look into Aravis to utilize USB3 vision devices only with the OSS software stack.
Aravis has done great work!

At the same time, I’ve faced a performance issue for Mono12 FullHD at 60fps.
It only runs at ~50fps even though some proprietary userland-based libraries can transfer with 60fps.

I’ve found some USB async branches and topics on this forum, and I want to try it to improve performance.
Where can I start it?

Thanks

Hi,

On which hardware are you running Aravis ? On a regular laptop, the USB performance should not be an issue.

I’ve found some USB async branches and topics on this forum, and I want to try it to improve performance.

It is just a proof of concept, meant for testing. It has shown it improves performance greatly on underpowered platform like raspberry pi or nvidia jetson boards.

I would be more than happy if someone could resume this work.

By the way, the branch is: GitHub - AravisProject/aravis at wip/async-usb

Hi,

Currently, I’m running on a powerful x86 desktop, but eventually, we will test on some embedded board.
Additionally, our camera device is something special, high-fps/resolution and stereo devices.
That’s why we need to improve the performance.

By the way, the branch is: GitHub - AravisProject/aravis at wip/async-usb

Thanks for the pointer.
I do want to test it and I would like to contribute to this work.
Can I ask your opinions what is the rest of the items we need to achieve?
And how is that branch related to these PRs (#328, #334)?

Thanks,
Takuro

That would be great.

I don’t remember the difference between the 2 PRs :frowning, but #334 should be the most recent, and probably more up to date than the branch I have mentioned.

I think, thanks to makelinux most of the work is done. What I would like before the integration to the main branch is:

  • obviously a port to the current main branhc state
  • an API for async/sync mode selection, sync by default for now
  • some sanity check at stream thread destruction the UBS async commands are done (I’m not sure something is needed)

Do you plan to work on this in the near future ?

Emmanuel.

Do you plan to work on this in the near future?

Yes, I’m planning to be involved in the next few months.
I will make PR on GitHub it will be ready.

Thanks,
Takuro