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

Support for isochronous transfers #47

Open
alufers opened this issue Mar 5, 2024 · 2 comments
Open

Support for isochronous transfers #47

alufers opened this issue Mar 5, 2024 · 2 comments
Labels
feature-request New feature or request

Comments

@alufers
Copy link

alufers commented Mar 5, 2024

Hi!

I am in progress of creating a Rust application to display a feed from thermal cameras. They are UVC devices (with some nasty non standard features, which require an userspace driver), which use isochronous transfers to send the video.

It would be very nice to have a native Rust API for receiving isochronous data, since rusb doesn't wrap libusb for that and playing around with unsafe code, callbacks, and such is required.

PS: If you think this is out of scope to this project, feel free to close this issue. Many thanks for your library!

@kevinmehall
Copy link
Owner

This is definitely in scope, but not something I'm going to be able to prioritize in the near future.

If you (or someone else reading this) is interested in working on this, the first step is to figure out what the API should be. I think it probably makes most sense to build on Queue as isochronous is generally used for streaming and requires multiple submitted transfers to not lose packets. MacOS and Linux have per-packet metadata that must be dealt with when allocating and submitting transfers. Windows has this for IN transfers only, but requires that OUT transfers are contiguous in the buffer. Windows also requires a mechanism for pre-registering buffers (maybe like #11?).

@andreysaf
Copy link

Would love to have support for isochronous transfer. I am interested in web route and seeing it added it to cross-usb later.

Great library indeed! Thank you.

@kevinmehall kevinmehall added the feature-request New feature or request label Oct 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-request New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants