Dafang-Hacks / Main

138 stars 63 forks source link

motion capture and performance of system() #69

Closed claud9999 closed 3 years ago

claud9999 commented 3 years ago

The system() calls to detectionOn.sh and detectionOff.sh have huge performance impacts (process creation, particularly memory allocation, plus execution of a shell script...note the man page for system(), which states "The main cost of system() is inefficiency".) Motion capture is a time-critical component and I believe the system() call is causing significant loss of image/video data.

claud9999 commented 3 years ago

I would like to re-architect the way the motion detection triggers scripts and created this ticket to open up for discussion. Here's what I propose:

Install the Mosquitto server and run it locally on the camera. Have a master shell script that subscribes to a topic and replace the system() calls with mosquitto publish API calls.

Alternatively, use dbus or shared memory or signals (although signals have their own performance concerns.)

nik0 commented 3 years ago

Seems to be a good idea Did you manage to compile ?

claud9999 commented 3 years ago

Seems to be a good idea Did you manage to compile ?

Alas, not yet (I'll update the other ticket if/when I do. I'm thinking it'd be good to update to the current API but I don't know the Live555 API at all and I wanted to bring up this issue so folks can ruminate on it before I start developing it.)