|
Re: What does the Camera Slow Down?
If you want to lower the overhead of the Dashboard, open the source project and right click on the image display and toggle Visible>>Image Information to be off. You can achieve similar effect by deleting the chart or modifying the chart drawing region so that it is not overlapped by the Y scales.
The combination of these two drawing elements that invalidate in order to update, will cause a large section of the screen to be redrawn, not just the modified areas.
I don't know enough about the Java video to guarantee that this will get rid of the lag, but it will not hurt either.
As for using raw TCP to transfer video, the underlying camera uses ...
wait for it
...
wait for it
...
TCP.
Sorry, but I couldn't resist. My two year old now says that -- the wait for it part.
While I agree that it is not the ideal protocol, it isn't as bad as described, because it is the underlying IP packets that are acked and retransmitted, not the entire TCP message. Since it is not possible to decode a jpeg past a missing packet, incomplete jpegs do need to be detected and dealt with. Ideally, the images would be sent over RTP or a similar specialization of UDP.
Actually, as the topology of the robot network changes, the camera may someday be moved to be on a common switch so that the camera can serve up images to both the robot and DB, meaning that no image server is needed. That'd be nice.
Greg McKaskle
|