How to add an MJPEG Camera

MJPEG is the old school way of streaming. Shinobi supports it but it takes a little bit of know-how. Here's that know-how.

If your camera is capable of providing an H.264 Stream I suggest you take a look at these articles first.

Controlling the bitrate is similar to controlling a stream of water. With MJPEG, knowing how to do this is important. Keep in mind that these are recommendations and you don't have to use these settings.

  • Framerate (FPS) : High : 10 - 15 FPS, Low : 2-5 FPS
  • Bit Rate : between 256kbps and 1Mpbs

For the Connection section I used:

  • Input Type : MJPEG

For the Input section I used:

  • Analyzation Duration : 1000000
  • Probe Size : 1000000
  • Monitor Capture Rate : Should match the stream. Probe the stream if you need to find it.

For the Stream  section I used:

  • Stream Type : MJPEG or Base64 over Websocket
  • FPS (Frame Rate) : Should match the stream.

For the Record section I used:

  • Video Codec : libx264
  • Audio Codec : No Audio (MJPEG does not carry Audio)
  • FPS (Frame Rate) : Should match the stream.

For  Global Detector Settings section I used:

  • Send Frames : Yes
  • Save Events to SQL : Yes (if you want to view the dots in Power Video Viewer)
  • Feed-in Image Width : 640
  • Feed-in Image Height : 480
  • How to Record : Traditional Recording
  • Trigger Record : Yes
  • Recording Timeout : 2

For Motion Detection section I used:

  • Use Built-In : yes
  • Indifference : Varies based on camera view point
  • Full Frame Detection or Regions

For Traditional Recording section I used in combination with  Global Detector Settings:

  • Video Codec : libx264
  • Audio Codec :  No Audio (MJPEG does not carry Audio)
  • Segment Length :  2 (creates 5 second buffer)
  • HLS List Size : 3 to 10


All content is property of their respective owners.