I have a Pi3 and a 2TB purple drive that I want to use as an NVR, my main issue with most solutions is that they offer too much for my needs and what the pi can provide. Going beyond a raspberry pi 3 is not realistic, since right now I’m feeding it with 15W POE, tucked away on a difficult to find location in case someone breaks in.

The most common solutions like frigate and shinobi do transcoding by default or have advanced image recognition features. I do not require such things as a 1 or 2 week recording window is enough and all cameras are wired to a dedicated switch so bandwith is not an issue. My only requirements beyound that are playback (again, with no transcoding) and maybe external events, live viewing I’ve already taken care of so it’s not a requirement.

One project I was able to find is https://github.com/marcus-j-davies/nvr-js, which is described by the author as a light weight version of shinobi, it’s pretty much what I need but last commit was 2 years ago so I’m open to considering other options.

Do you know of any projects that fit this description? Were you able to turn frigate, shinobi or any other NVR into a get-and-store, read-and-send programs, no transcoding? If so, would you mind sharing how you did it?

  • HTTP_404_NotFound@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 months ago

    I am still a huge fan of Blue Iris.

    Yup. It has a price tag. But, in terms of NVR, there isn’t another comparable option, for the amount of features it includes.

    And- its extremely flexible. If you don’t want to transcode, it defaults to direct to disk encoding. If you slap in a GPU, or have intel quick sync, it is happy to use it.

    If you want object detection, codeproject.ai integrates flawlessly with it, and also works with either CPU/GPU algorithms, or can use a coral TPU.

    Normally- I recommend opensource projects- but, Blue Iris is rock solid. Its only real downside, is that it only runs on a windows box. But, there is a docker container which supposedly works for it too.

  • St0lz@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 months ago

    For 2 years I did exactly that with my Orange Pi (clone of Raspberry pi ) using Motion. The config option you are looking for is movie_passthrough on, which will store the video as the camera sends it (no transcoding).

  • janstadt@alien.topB
    link
    fedilink
    English
    arrow-up
    0
    ·
    10 months ago

    Frigate can do this. Just turn on recording and turn off motion/object detection. Transcoding can also be disabled i believe but i dont know the ffmpeg settings for that.

    • ovizii@alien.topB
      link
      fedilink
      English
      arrow-up
      1
      ·
      10 months ago

      As far as I can see, Frigate doesn’t transcode anything, the only time the codec is important is when it decodes the image for analysis. If you don’t enable detection it should not decode/transcode anything.

      As far as I understand recording simply passes the stream to ffmpeg to break it into segments (and re-merge segments later if required), but doesn’t transcode it.

      When you alter want to watch the recordings, its up to you how and with which tool you access it and whether your video player/browser/whatever can read the recorded format/codec.