Adding a camera to your AREDN mesh node is straightforward. There are several approaches, each with advantages and disadvantages.
The simplest approach is to dedicate a mesh node to an IP camera. IP cameras provide video streams in at least one, usually several, formats. Probably the most common is the Real-Time Streaming Protocol, or RTSP. At present, none of the popular Web browsers support playing RTSP streams; you need something in between to convert from RTSP to a stream that the browsers understand.
Media players, on the other hand, can display RTSP streams. I like the VLC Media Player (https://www.videolan.org/), a very capable, cross-platform open source player. This is what we’ll use in this simple approach.
You’ll want to check your IP camera to make sure it is working and to get it configured the way you want it. Every camera is different and there are write-ups and videos online about pretty much every camera, so I won’t go into that here. You’ll want your camera configured to get an IP address via DHCP.
Attach your IP camera directly to one of your AREDN nodes. (Unless your node can provide Power-over-Ethernet (PoE), you’ll need a power injector for the camera; one probably came with your camera, or you can get them online.) If your node is configured for Direct addressing on the LAN (such as “1 host Direct”), you are done. Your node will assign the camera an IP address and the camera’s alias will appear under the node name on the “Mesh Status” page.
On a computer attached to a different CVADN node, run VLC Media Player, do “Open Network Stream…”, and enter the RTSP URL for your camera. You should see your video stream. The URL for one of my cameras is:
“RTSP” sets the protocol. “username:password@” provides access control, if your camera requires it. “kq9p-benchcam.local.mesh” is the camera alias advertised by the mesh node. “:554” is the RTSP port. “/h264Preview_01_sub” tells the camera I want the low-resolution video stream, 640×480 on my camera. (While we can stream 4K and full-HD video over the CVADN, we probably don’t have the bandwidth to do very many such streams at one time; most of the time, we’ll want to use lower-resolution streams.)