Answer the question
In order to leave comments, you need to log in
How to increase USB video bandwidth?
I am programming a device - a custom USB 2.0 video camera.
Stream - uncompressed
resolution 1280*480
color space YUYV (16 bits per pixel)
Wrote a test that works with the maximum frequency
responding to each isochronous marker
. The maximum frame rate is 6.5 frames per
second
. bandwidth 8 megabytes per second (64 megabits).
At the same time, the USB HS bandwidth is 480 megabits per second.
There is stock.
The video is transmitted using an isochronous protocol.
Clocking one packet every 125 microseconds
results in 8,000 kilobyte packets per second, which is consistent with measurements
However. I found in the documentation that there is a field in the descriptor
that tells the host to send additional isochronous tokens.
wMaxPacketSize bits 11..12
That is, up to 3 isochronous packets can be transferred in one frame of the USB protocol
The flag is set.
lsusb -v shows a frame size of 3x 1024
And actually the baud rate hasn't changed.
Who has experienced this effect?
Maybe there are some other bits that I do not take into account?
Answer the question
In order to leave comments, you need to log in
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question