USB Camera record and control


I have an PTZ USB camera which can be taken as a v4lsrc source to record a stream using g streamer. I’ve also found that while the video is taken from the USB interface, the camera can also be controlled via VISCA protocol using the same interface. This was tested on a windows PC with camera feed open along with another COM port open in a serial interface.

My question is whether this can be achieved in jetson nano also. Sending VISCA commands while recording a video feed from the same USB

Thanks in advance

I have no experience with VISCA controlled cameras, but my undetstanding would be that your camera would provide a separate serial interface over USB.
You may try to launch in a terminal:

dmesg --follow

type a few times Enter and plug your USB cam in. It should display information about the usbserial. Note that the kernel has support for most popular usbserial convert chips, but if not one of these you may have to build and install the appropriate driver.

If all works, you should have a tty dev node such as /dev/ttyUSB0. You may also use:

lsusb -t

for checking everything is ok.

Then you would try to download libvisca and build and install. Then you may be able to send VISCA commands to /dev/ttyUSB0, but I cannot help more.

Hi @Honey_Patouceul
Thank you very much for the help. I will try this method.
The camera has a separate serial interface for commands other than the video feed.

If your camera has a separate serial port, you would simply use a serial link. I cannot advise for TX2 serial ports, but be aware to check the voltage levels expected on both ends (some Jetson serial ports may use 3.3V while standard RS232 ports would expect 5V). If not the same, it would be mandatory to use a serial cable with level shifters.
Then try libvisca with the dev node (/dev/ttyS…) of your serial port on Jetson, configured for the speed/parity/stopBits and flow control expected by the camera serial interface.

1 Like