The Z-Cam flagship line has an API of sorts. This can be used to control the camera--via a StreamDeck, say.
This seems like a good enough reason to me to learn Go.
Ideally this is useful for someone besides me.
./zcam-controller [options] start
starts the camera recording
./zcam-controller [options] stop
starts the camera recording
./zcam-controller [options] download
downloads the files currently on the device's disk to a location you specify with the -o
flag. An optional --delete
at the end will then delete the files from the camera post-copy.
A -u
or --url
flag is required, and it expects either an IP address or a resolvable hostname for the z-cam.
Putting it all together, ./zcam-controller -u 192.168.1.128 -o "/tmp" download --delete
is what a command looks like.
If you're going to call this from a Stream Deck, you're in for a "fun" time. It doesn't support arguments to binaries, so you get to wrap it with an executable shell script--then set the System -> Open action to call that shell script instead of the binary directly.