We’re using the Analogue Camera Adaptor with our Apalis iMX6Q on the Ixora carrier board. We’ve got two cameras connected, and we switch between them using the
i2cset command like so:
i2cset -f -y 3 0x21 0x00 0x00 # first input
i2cset -f -y 3 0x21 0x00 0x01 # second input
This successfully switches input, but we get this weird behavior where the new camera input slowly scrolls down the screen on top of the old camera input. It sometimes takes over 5 seconds for it to fully switch over to the new camera. Seems like some sort of vertical sync has gone terribly wrong.
I’ve tried stopping and restarting the entire camera feed (
camera.stop() followed by
camera.start() in Qt) but this freezes the system for a few seconds and looks janky.
I’ve also looked into the fast switch mode in the ADV7280 within the Adaptor module (https://ez.analog.com/video/w/documents/703/fast-switch-mode--adv728x), but to no avail. The scripts they provide use I2C address
0x42 instead of
0x21 which I’ve seen used elsewhere, adding to the confusion.
I’ve seen several other threads with this issue, but none of them have been resolved. Anyone know what might be the issue?
Update: I’ve reproduced the issue on the default Toradex Linux v2.8b6 image installed via EasyInstaller. To display the feed, I run:
gst-launch-1.0 imxv4l2videosrc ! autovideosink