I’m putting the security camera project on hold for a while, as I realized that the project I was about to implement requires that Motion Pie image is installed on SD card. I’m not so fond of re-formatting my SD card now that I have everything set up, so I figured I will try Motion Pie once I order second SD card.
But there is a need for streaming video when taking time lapse images, to position the camera. After some web searches, I found instructions how to set up Motion JPEG-Streamer. Read more about how it works from here. The idea is simple, sequential JPG images are taken using raspistill and streamed over HTTP by mjpg_streamer to be displayed in web browser. Similar to time lapse, if you will.
I followed the instructions and it was very easy to set up. And again I created couple of scripts to ease up starting and stopping streaming and they can be found here. Again, modify it for your needs.
Note: I have two different scripts for starting the stream. Usually I use the startStreaming, as it uses TCP port 8080, as it is available for my home network only. But sometime I want to access stream for outside my home network, and then I use startPublicStreaming, which uses port 500, which is open to outside.
When positioning camera for time lapse: first start streaming, position camera, stop streaming and then start time lapse. This is not ideal, I’m considering building Android or web app that could start and stop streaming and start and stop taking time lapse, and would display stream or last taken time lapse pic on the screen. Everything would be within single app and no need to use scripts and manually starting and stopping applications. But while waiting for that to happen, this solution is good enough.