gen2brain / cam2ip

Turn any webcam into an IP camera
GNU General Public License v3.0
872 stars 90 forks source link
camera mjpeg webcam

cam2ip

Turn any webcam into an IP camera.

Example (in web browser):

http://localhost:56000/html

or

http://localhost:56000/mjpeg

You can also use apps like ffplay or vlc:

ffplay -i http://localhost:56000/mjpeg

Requirements

Build tags

Download

Binaries are compiled with static OpenCV/libjpeg-turbo libraries, they should just work:

Installation

go get -v github.com/gen2brain/cam2ip/cmd/cam2ip

This will install app in $GOPATH/bin/cam2ip.

Run in Docker container

docker run --device=/dev/video0:/dev/video0 -p56000:56000 -it gen2brain/cam2ip # on RPi use gen2brain/cam2ip:arm

Usage

Usage of cam2ip:
  -bind-addr string
    Bind address [CAM2IP_BIND_ADDR] (default ":56000")
  -delay int
    Delay between frames, in milliseconds [CAM2IP_DELAY] (default 10)
  -height float
    Frame height [CAM2IP_HEIGHT] (default 480)
  -htpasswd-file string
    Path to htpasswd file, if empty auth is disabled [CAM2IP_HTPASSWD_FILE]
  -index int
    Camera index [CAM2IP_INDEX]
  -nowebgl
    Disable WebGL drawing of images (html handler) [CAM2IP_NOWEBGL]
  -rotate int
    Rotate image, valid values are 90, 180, 270 [CAM2IP_ROTATE]
  -timestamp
    Draws timestamp on images [CAM2IP_TIMESTAMP]
  -width float
    Frame width [CAM2IP_WIDTH] (default 640)

Handlers