This method uses HTTP Live Streaming (HLS), which I have found to be stable and reliable in recent versions of Blue Iris. Here is the trick: Most web browsers do not support HLS natively. For the stream to work in most browsers, you will need to use a 3rd party player such as Clappr which is free and extremely easy to use!
Here in this Spoiler block is a basic example of a web page which embeds a live video stream using the Clappr player. You can create a new file named livestream.htm in your Blue Iris's www directory, and paste in the following to try it now.
Hints/Tips:
Here in this Spoiler block is a basic example of a web page which embeds a live video stream using the Clappr player. You can create a new file named livestream.htm in your Blue Iris's www directory, and paste in the following to try it now.
HTML:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Live Video</title>
<script type="text/javascript" src="https://cdn.jsdelivr.net/clappr/latest/clappr.min.js"></script>
</head>
<body>
<div id="player"></div>
<script type="text/javascript">
var player = new Clappr.Player(
{
source: "/h264/index/temp.m3u8"
, parentId: "#player"
, autoPlay: true
, width: 1280
, height: 720
});
</script>
</body>
</html>
Hints/Tips:
- If you don't want to stream the entire All Cameras group, change the word "index" in the example above to one of your other group names, or a camera short name.
- If you are going to embed the video player on a website not hosted by Blue Iris, you will need to change the video source URL to an absolute URL (include the http://hostname[B]:[/B]port/) and also you will need to have disabled authentication for all incoming connections in Blue Iris.
- You can change many aspects of the player by adding more arguments. This example only shows you the autoPlay, width, and height arguments, but the Clappr homepage has a more complete list.
- Some cameras with an embedded audio stream won't play for me, while other cameras will. I have not determined the cause for this, but if you have this problem you can probably work around it by making a clone of the camera in BI with the audio stream disabled for the clone.
- The video stream appears to always use the Streaming 0 encoder profile that you can set up in Blue Iris Options > Web server.
- Streaming to multiple viewers simultaneously does not seem to use much more CPU than streaming to only a single viewer.
- It takes several seconds for Blue Iris to begin streaming, if nobody else was already watching.
- There is about 10 to 15 seconds of delay from live. This is normal and there really isn't much you can do to reduce it.
- The frame rate may be low if you are streaming from a very high resolution camera. I suggest you configure the Streaming 0 encoder profile to limit the frame size to 1920x1080 or smaller.
- Using this method, you should be able to stream much more efficiently than previous JPEG or MJPEG-based methods.