Problem:  Want to stream video from a Raspberry Pi and have access to the Pi’s camera using Blue Iris, a windows application.

Solution:  Use Linux Motion to stream the video on the Pi.  Motion will be configured to not capture movies or individual frames.  Blue Iris (BI) will stream the http://{raspberrypi_host_name}:port_#_defined (in Linux Motion config file) of the Pi’s video stream and BI will capture any movement detected and record it.  This will in effect make the Pi with USB camera an IP camera.  It will be viewable through both the BI software and a browser using the above URL.

change the Pi’s /etc/default/motion

from: start_motion_daemon=no
to: start_motion_daemon=yes

change the Pi’s /etc/motion/motion.conf file:

target directory: /var/lib/motion <— videos and jpegs if enabled go here – default.

stream port 8081 i.e., http://hostname:8081
webcontrol port 8080

from: stream_localhost on
to: stream_localhost off

from: output_pictures on
to: output_pictures off

from: ffmpeg_output_movies on
to: ffmpeg_output_movies off

from: stream_localhost on
to: stream_localhost off

from: webcontrol_localhost on
to: webcontrol_localhost off

from: framerate 2
to: framerate 30

from: v4l2_palette 17 (default value)
to: v4l2_palette 8

Note the following:

You are running Linux Motion as a service (based upon the changes made above) so anytime you change the contents of the /etc/motion/motion.conf file you will have to restart the service “to pick up those changes”.  You do this by:

“sudo service motion restart”.

Failing to do this will make it appear as if your change(s) did not take effect.

Make the following Blue Iris changes when defining the Pi’s video camera:

In the following select the “Network IP” button.  Other values are default.  The “blocked content” in blue scribble is my IP address for the Pi or its hostname.  If using hostname make sure you have an entry for it in your windows /etc/hosts file or it will fail.   Yours (name/IP) will be different from mine..

bi1

In the following image note the blocked content in blue scribble.  It is your Pi’s IP address or your Pi’s hostname with the trailing port that is configured in the Linux Application:  Motion.  8081 is the default port (at least in my distribution of Linux).  If you change it to some other value in Motion then you would have to make changes here.  Also note the port number in the “Media/video/RTSP port” field.

Other important fields are “Make” = Generic

“Model” = MJPEG stream

“Path” = /mjpeg.cgi <— this should be set when you select “MJPEG stream above

other values are default.

bi2

Here is a “snippet” of the Blue Iris output with 4 streams.  The Pi Zero camera is top left.

bi3

Below is the Pi Zero with the USB camera module attached.  The Pi Zero uses a “stackable” USB hubs to which the USB Camera, and WIFI dongle are attached. 

pi0_withcam

Bad Behavior has blocked 159 access attempts in the last 7 days.