Motion capture with "Motion" on file .mp4 with mask

I've read that the Motion program can process video files looking for motion.
I know he can do this by using masks that define precise areas to look at or ignore.
However, I absolutely cannot find an explanation of how to perform this operation on pre-existing .mp4 files, taken from security cameras.
What exactly I have to make Motion do is analyze existing files in .mp4 format, use a mask to select a precise area to be analyzed, in order to avoid movement of branches and leaves in the wind in other areas, and therefore produce video clips that contain movement as a result, also capturing 3 seconds before and 3 seconds after moving action in that area.
I know how to create the mask and configure it in the config file.
I know how to set the seconds before and after the motion detected in the config file.
I know how to set the output video format, quality, and save location in the configuration file.
But what I can't do is invoke Motion and command it to use my .mp4 file as input instead of starting waiting for a live stream from an active camera.
Motion always starts using a video stream from the camera, I can't get it to analyze the file.
I haven't found a precise tutorial on how to do this on the web.
I don't know if to specify the processing on an existing file you have to do it from the configuration file or from the command line with precise syntax.
Anyone have any idea how this question can be resolved?
Thanks in advance for your cooperation, bye.
[I have an OpenSUSE Linux machine]
Comments
-
Have you also asked OpenSUSE Forums? https://forums.opensuse.org/
0 -
Hello arochester.
Thanks for the advice.
For now I haven't asked anything in the OpenSUSE forum yet.
From a quick search it appears that no one has ever talked about Motion in the OpenSUSE forum, so I assumed that there is less chance of getting answers about using such software than there are likely to be answers here.
I would have turned to the OpenSUSE forum if the program had not worked, but since it works, the information that is useful to me is only operational, so I think one forum is as good as another, as long as there are those who have already taken care of it.
If I still can't solve it here, I could easily try it in other forums as well.
I think there is also a Motion forum, but from what I've seen it's a bit too technical for such a basic question as mine, and it's more focused on Motion's primary function, which is live streaming monitoring.
But eventually I will also try to ask for help there.
Apart, of course, the Motion forum, from my research, this is the only forum where the topic has been dealt with in the past, no other forum has talked about it.
I don't know if my research was thorough enough.
By.0 -
Hello everybody.
I solved the matter on my own by reading Motion's online documentation more carefully.
I don't know how the information escaped me the previous times.
In the Motion Online documentation, which can be found at this address
https://motion-project.github.io/motion_guide.html
selecting the item "Configuration"
there is a paragraph called "Static files" which contains just the information I was looking for.This section highlights two different methods for processing an existing video file.
One a method of reading the file directly, the other using a streaming system with a v4l2loopback device
Both are activated by modifying and customizing the configuration filemotion.conf
You can modify the configuration file present as default when Motion is installed or use your own copy, specifying its use from the command line when activating Motion.In the direct processing mode of the video file, the processing is cyclical, ie Motion when it reaches the end of the file restarts in loop from the beginning.
To find out when it finished processing I used a simple grep on the log file, something likecat motion-log.txt | grep "End of file"
The file name and path of the log file can also be specified when Motion is activated.
Since the processing of the file is cyclic, to notice if the saved motion events are repeated, i.e. if Motion has restarted from the beginning of the file and recognized the same motion scenes again, I use a grep on the log similar to this onecat motion-log.txt | grep "End of event"
I then compare the timing to know if the events are before or after the moment the processing reached the end of the file for the first time
Maybe a bit cumbersome but I don't think there is any other way, I don't know.
But it works well for me.Since I had not found other explanations I hope it will also be useful to someone else.
0 -
renedrive
To find out when Motion finished processing a video file for motion detection, I used a simple grep on the log file, something like
cat motion-log.txt | grep "End of file"
The file name and path of the log file can also be specified when Motion is activated.Assuming you run motion detection on a folder with multiple consecutive video files taken by the same security camera, can someone post a script sample on how to automate the processing, i.e. substitute the next file name to process with Motion upon reaching "End of file" for current file processing until all files in the folder are processed?
Also, to log file names with found motion into a separate log file one file name per line?
0 -
renedrive
Did you try to process a large files set faster by changing existing videos framerate in motion.conf as mentioned in the Motion Guide for static videos motion analysis? How long did it take to analyze one MP4 1080p 1min long video with Motion at original video framerate?
0 -
Unfortunately sambul29 I'm not a script guy.
Surely automatically processing all the files in a folder would have been useful to me but I have no idea how to do it, surely for those who know the script language it won't be difficult, but I don't have the knowledge.
Maybe with the help of an AI we could do it.
At the moment the task for which I needed the video analysis is no longer useful to me but if I still need to process videos to recognize movement maybe I'll try with an AI to create a script, you never know.
Regarding the issue of processing speed.
I also read, from the original documentation, that the processing speed can change if the frame rate at which the file is examined changes.
However, I didn't try because I needed maximum accuracy and I didn't have time problems because the analysis was done on a secondary machine.
The analysis, set to the original frame rate of the video, takes more or less the time it would take to display it at the standard speed, so more or less 1 minute for every minute of video, just a little less.
I'm sorry I couldn't be of much help to you.0 -
Thanks for the update. I found a Motion package fork by tosiara, who posted a Wiki with script examples on running motion detection on a folder with video files at 10x frame rate for much faster processing. Will try shortly, hope it works with default Motion install too. I may have to build own ffmpeg version following the above project's Wiki examples, if default Motion release can't recognize my Cam HEVC video format.
0 -
Good to know.
Thanks for the heads up.
It's definitely worth a try...sooner or later... ;-)0
Categories
- All Categories
- 232 LFX Mentorship
- 232 LFX Mentorship: Linux Kernel
- 812 Linux Foundation IT Professional Programs
- 365 Cloud Engineer IT Professional Program
- 183 Advanced Cloud Engineer IT Professional Program
- 82 DevOps Engineer IT Professional Program
- 151 Cloud Native Developer IT Professional Program
- 140 Express Training Courses & Microlearning
- 140 Express Courses - Discussion Forum
- Microlearning - Discussion Forum
- 6.4K Training Courses
- 48 LFC110 Class Forum - Discontinued
- 71 LFC131 Class Forum
- 47 LFD102 Class Forum
- 229 LFD103 Class Forum
- 20 LFD110 Class Forum
- 44 LFD121 Class Forum
- LFD125 Class Forum
- 18 LFD133 Class Forum
- 8 LFD134 Class Forum
- 18 LFD137 Class Forum
- 71 LFD201 Class Forum
- 5 LFD210 Class Forum
- 5 LFD210-CN Class Forum
- 2 LFD213 Class Forum - Discontinued
- 128 LFD232 Class Forum - Discontinued
- 2 LFD233 Class Forum
- 4 LFD237 Class Forum
- 24 LFD254 Class Forum
- 712 LFD259 Class Forum
- 111 LFD272 Class Forum - Discontinued
- 4 LFD272-JP クラス フォーラム
- 13 LFD273 Class Forum
- 201 LFS101 Class Forum
- 1 LFS111 Class Forum
- 3 LFS112 Class Forum
- 3 LFS116 Class Forum
- 7 LFS118 Class Forum
- LFS120 Class Forum
- 9 LFS142 Class Forum
- 8 LFS144 Class Forum
- 4 LFS145 Class Forum
- 3 LFS146 Class Forum
- 15 LFS148 Class Forum
- 15 LFS151 Class Forum
- 5 LFS157 Class Forum
- 49 LFS158 Class Forum
- LFS158-JP クラス フォーラム
- 10 LFS162 Class Forum
- 2 LFS166 Class Forum
- 5 LFS167 Class Forum
- 3 LFS170 Class Forum
- 2 LFS171 Class Forum
- 3 LFS178 Class Forum
- 3 LFS180 Class Forum
- 2 LFS182 Class Forum
- 5 LFS183 Class Forum
- 33 LFS200 Class Forum
- 737 LFS201 Class Forum - Discontinued
- 3 LFS201-JP クラス フォーラム - Discontinued
- 19 LFS203 Class Forum
- 135 LFS207 Class Forum
- 2 LFS207-DE-Klassenforum
- 2 LFS207-JP クラス フォーラム
- 302 LFS211 Class Forum
- 56 LFS216 Class Forum
- 52 LFS241 Class Forum
- 50 LFS242 Class Forum
- 38 LFS243 Class Forum
- 16 LFS244 Class Forum
- 5 LFS245 Class Forum
- LFS246 Class Forum
- LFS248 Class Forum
- 54 LFS250 Class Forum
- 2 LFS250-JP クラス フォーラム
- 1 LFS251 Class Forum
- 156 LFS253 Class Forum
- 1 LFS254 Class Forum
- 1 LFS255 Class Forum
- 10 LFS256 Class Forum
- 1 LFS257 Class Forum
- 1.3K LFS258 Class Forum
- 11 LFS258-JP クラス フォーラム
- 135 LFS260 Class Forum
- 160 LFS261 Class Forum
- 43 LFS262 Class Forum
- 82 LFS263 Class Forum - Discontinued
- 15 LFS264 Class Forum - Discontinued
- 11 LFS266 Class Forum - Discontinued
- 24 LFS267 Class Forum
- 25 LFS268 Class Forum
- 32 LFS269 Class Forum
- 6 LFS270 Class Forum
- 202 LFS272 Class Forum - Discontinued
- 2 LFS272-JP クラス フォーラム
- 4 LFS147 Class Forum
- 1 LFS274 Class Forum
- 4 LFS281 Class Forum
- 15 LFW111 Class Forum
- 262 LFW211 Class Forum
- 184 LFW212 Class Forum
- 15 SKF100 Class Forum
- 1 SKF200 Class Forum
- 2 SKF201 Class Forum
- 797 Hardware
- 199 Drivers
- 68 I/O Devices
- 37 Monitors
- 104 Multimedia
- 174 Networking
- 91 Printers & Scanners
- 85 Storage
- 759 Linux Distributions
- 82 Debian
- 67 Fedora
- 17 Linux Mint
- 13 Mageia
- 23 openSUSE
- 148 Red Hat Enterprise
- 31 Slackware
- 13 SUSE Enterprise
- 354 Ubuntu
- 470 Linux System Administration
- 39 Cloud Computing
- 71 Command Line/Scripting
- Github systems admin projects
- 95 Linux Security
- 78 Network Management
- 102 System Management
- 47 Web Management
- 69 Mobile Computing
- 18 Android
- 38 Development
- 1.2K New to Linux
- 1K Getting Started with Linux
- 377 Off Topic
- 115 Introductions
- 175 Small Talk
- 26 Study Material
- 807 Programming and Development
- 304 Kernel Development
- 485 Software Development
- 1.8K Software
- 263 Applications
- 183 Command Line
- 3 Compiling/Installing
- 988 Games
- 317 Installation
- 103 All In Program
- 103 All In Forum
Upcoming Training
-
August 20, 2018
Kubernetes Administration (LFS458)
-
August 20, 2018
Linux System Administration (LFS301)
-
August 27, 2018
Open Source Virtualization (LFS462)
-
August 27, 2018
Linux Kernel Debugging and Security (LFD440)