User Tools

Site Tools


software:zoneminder:picamera

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
software:zoneminder:picamera [2021/06/06 01:34] rodolicosoftware:zoneminder:picamera [2025/04/15 15:53] (current) rodolico
Line 7: Line 7:
 Anyway, no GUI needed, so I did the Raspberry Pi OS Lite (https://www.raspberrypi.org/software/operating-systems/) and set it up, then did the following. Ended up with a pretty decent camera that is not "phoning home" with all your images. Anyway, no GUI needed, so I did the Raspberry Pi OS Lite (https://www.raspberrypi.org/software/operating-systems/) and set it up, then did the following. Ended up with a pretty decent camera that is not "phoning home" with all your images.
  
 +===== Get raspbian image onto SD =====
 +
 +  - Download the Lite version of Raspbian from [[https://www.raspberrypi.org/downloads/raspbian/]]
 +  - write the downloaded image to the micro-sd (do not uncompress)
 +  - mount /boot from SD onto /mnt
 +<code bash>
 +touch /mnt/boot/ssh # enable ssh
 +# only do the following if you need wifi. Change country code, ssid and psk for your system
 +# see [[https://www.raspberrypi.org/documentation/configuration/wireless/headless.md]]
 +cat <<EOF >/mnt/boot/wpa_supplicant.conf
 +ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
 +update_config=1
 +country=<Insert country code here>
 +
 +network={
 + ssid="<Name of your WiFi>"
 + psk="<Password for your WiFi>"
 +}
 +EOF
 +</code>
 +
 +Insert SD into your Pi and boot up.
 ===== Configure Raspberry Pi ===== ===== Configure Raspberry Pi =====
  
-  - Enable wlan by adding the following to /etc/wpa_supplicant/wpa_supplicant.conf<code bash>country=US+Enable wlan by adding the following to /etc/wpa_supplicant/wpa_supplicant.conf 
 +<file> 
 +country=US
 network={ network={
    ssid="your ssid"    ssid="your ssid"
    psk="your psk"    psk="your psk"
-}</code> +
-  - Enable camera interface<code bash> +</file>
-raspi-config +
-# go to Interface, and enable camera +
-</code> +
-  - Verify camera works<code bash> +
-raspistill -v -o test.jpg +
-</code> +
- +
-===== Install v4l2rtspserver on camera =====+
  
 +Now, do the install
 <code bash> <code bash>
-# get pre-req's +Set up Camera 
-apt -install cmake liblog4cpp5-dev libv4l-dev git+raspi-config # go to Interface, and enable camera 
 +reboot 
 +ls -lh /dev/video* 
 +raspistill -v -o test.jpg # Verify camera works 
 +# Remove Swap File 
 +sudo systemctl stop dphys-swapfile.service 
 +sudo systemctl disable dphys-swapfile.service 
 +sudo systemctl mask dphys-swapfile.service 
 +sudo rm /var/swap 
 +# add zram for swap 
 +sudo apt-get install zram-tools 
 +sed -i 's\.*ALLOCATION=.*\ALLOCATION=100\g' /etc/default/zramswap 
 +sudo systemctl enable zramswap 
 +sudo systemctl restart zramswap 
 +# Set up ntp 
 +sudo apt-get install ntp 
 +sudo timedatectl set-timezone America/Chicago 
 +# add base packages needed 
 +sudo apt install \ 
 +liblivemedia-dev liblog4cpp5-dev libasound2-dev git gdebi-core cmake build-essential v4l-utils 
 +# get and build v4l2...
 git clone https://github.com/mpromonet/v4l2rtspserver git clone https://github.com/mpromonet/v4l2rtspserver
 cd v4l2rtspserver cd v4l2rtspserver
Line 32: Line 69:
 make make
 sudo make install sudo make install
-</code> +# do the install 
- +sudo gdebi v4l2rtspserver-0.2.0-6-g3542b6f-Linux-armv6l.deb 
-<code conf v4l2rtspserver.service>+# create systemd module 
 +cat <<EOF >/etc/systemd/system/v4l2rtspserver.service
 # systemd configuration for v4l2rtspserver # systemd configuration for v4l2rtspserver
 # /etc/systemd/system/v4l2rtspserver.service # /etc/systemd/system/v4l2rtspserver.service
 + 
 [Unit] [Unit]
 Description=v4l2rtspserver rtsp streaming server Description=v4l2rtspserver rtsp streaming server
 After=network.target After=network.target
 + 
 [Service] [Service]
 #ExecStartPre=/usr/bin/v4l2-ctl --set-ctrl vertical_flip=1 #ExecStartPre=/usr/bin/v4l2-ctl --set-ctrl vertical_flip=1
 ExecStartPre=/usr/bin/v4l2-ctl --set-ctrl h264_i_frame_period=5 ExecStartPre=/usr/bin/v4l2-ctl --set-ctrl h264_i_frame_period=5
-ExecStart=/usr/local/bin/v4l2rtspserver -F 5 -W 640 -H 480+ExecStart=/usr/local/bin/v4l2rtspserver -F 5 -W 1280 -H 720
 #ExecReload=/bin/kill -HUP $MAINPID #ExecReload=/bin/kill -HUP $MAINPID
 Type=simple Type=simple
Line 51: Line 89:
 Group=video Group=video
 Restart=always Restart=always
 + 
 [Install] [Install]
 WantedBy=multi-user.target WantedBy=multi-user.target
 +EOF
 +
 +# enable the service
 +sudo systemctl enable --now v4l2rtspserver.service
 </code> </code>
  
-<code bash> +At this point, you should be able to get an rtsp by pointing vlc to [[rtsp://{pi zero ip}:8554/unicast]]
-systemctl start v4l2rtspserver +
-</code>+
  
 ===== Zoneminder Configuration ===== ===== Zoneminder Configuration =====
software/zoneminder/picamera.txt · Last modified: 2025/04/15 15:53 by rodolico