Does anyone know of any good, reasonably fast software to scan through a load of video files. Hours/weeks of footage to sift out any motion detected reasonably quickly. Preferably with a GUI.

I have tried a few, and DVR-SCAN seems to do a decent job, but it’s very slow, and without the GUI, I need to manually open every video file that it has saved (taking up a ton of space) to see if they have what i am looking for.

Ideally free software, as I am broke. But if there are good recommended paid options I will happily consider them, My head is close to exploding digging through these. I am using Linux Mint, but will happily use any distro that may help me better. Hopefully this post it allowed here, if not could someone please point me in the right direction. Thanks.

  • solrize@lemmy.ml
    link
    fedilink
    arrow-up
    3
    ·
    23 hours ago

    I have to wonder if there’s a faster way than literally decoding the video and analyzing the decoded frames, if that’s how you’re doing it with ffmpeg. Video compression revolves around motion estimation so maybe it’s possible to just scan the file and find frames where the motion vectors (the data saying how the stuff in the picture is changing at a given frame) suddenly get larger. I assume this is for something like a security video that usually shows a static picture, and OP wants to flag when someone enters the room. In that case there will be almost no motion most of the time, and suddenly there will be some.

    • doodoo_wizard@lemmy.ml
      link
      fedilink
      arrow-up
      3
      ·
      19 hours ago

      Not to get too awful off topic, but you can do that and it doesn’t work good.

      There are two problems with what you’re suggesting being fast: the first is that there are elements of motion or color change in the video that you don’t wanna trigger on, like the shadows of leaves blowing in the wind or the colors slowly getting orange because the sun is setting and afaik there’s not a good method to figure out if the change in bitrate you’re catching is because an imperceptible swarm of gnats moved under a street lamp and caused the sidewalk underneath to move exactly one bit down the chroma scale or because a man in a trenchcoat stepped out from behind the pole that lamp is mounted on. The second is that the video is already compressed so you gotta uncompress it to figure out what is on the frame to then figure out if the change from that frame to the next is enough to call “motion” and start flagging.

      It’s one of the reasons why you super want to be working with raw or minimally compressed video when you’re editing something because simple things are much harder from a computation perspective.

      E: the script to use ffmpeg another person posted checks every few seconds so it doesn’t actually crunch through all the frames, so sort and path finding techniques like that can be used to make it faster.

      • solrize@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        19 hours ago

        So find the places where the bitrate changes and decode and analyze those frames. Outdoors, true, leaves blow around, there is wildlife etc. A harder problem. I was thinking more of an indoor security camera. As for examining the bit rate, I guess it depends on the encoding, but e.g. in .mp4 there is a “key frame” every so often and then a bunch of delta frames, and if stuff is changing too fast iirc the key frames become more frequent. But I believe there is a fast way to scan for them, that is needed for fast forwarding in video.