Commit Graph

885 Commits

Author SHA1 Message Date
Isaac Connor
46ec4e75d4 Check codec type instead of stream_index to determine video/audio 2021-03-03 09:52:27 -05:00
Admin
4ff016c991 Make capturing/analysing log lines follow same pattern 2021-03-02 20:51:16 +01:00
Isaac Connor
be1b439dcc Add State_Strings and code cleanup. Fix not going into alarm state when already recording. Fixes #3184 2021-03-02 14:42:54 -05:00
Isaac Connor
f35a1c70c0 fix build with old avcodec for xenial 2021-03-02 12:07:51 -05:00
Isaac Connor
c03d9b2987 Set state before we write packets to event so that the event knows that it is alarmed 2021-03-02 11:47:55 -05:00
Isaac Connor
71d65685b9 Can't clear image data early. Might be needed for snapshot and pre alarm farmes 2021-03-02 11:12:57 -05:00
Isaac Connor
46743ebaab Silence compile warning 2021-03-02 10:00:48 -05:00
Isaac Connor
832eabbd79 Don't both updating analysis fps unless we are doing motion detection 2021-03-02 09:59:32 -05:00
Isaac Connor
1bc5abb9e9 Only include video packets in analysis_image_count 2021-03-01 17:07:09 -05:00
Isaac Connor
51c19912f8 Use analysis_image_count in opening new event log line 2021-03-01 16:56:47 -05:00
Isaac Connor
9302c9506e Add audio_frequency and audio_channels to shared mem and set them in PrimeCapture 2021-03-01 16:49:27 -05:00
Isaac Connor
6e73c08a21 add fifo's for video and audio. Write the packet data to them. Update FifoStream->Fifo 2021-03-01 16:49:26 -05:00
Isaac Connor
6c6d6c51b0 Add RTSPSTreamName loading and write packet data to the video and audio fifos 2021-03-01 16:46:48 -05:00
Isaac Connor
33dbcc449a Merge pull request #3181 from Carbenium/rgb-const
rgb: Convert some constant defines to constexpr
2021-03-01 09:40:39 -05:00
Isaac Connor
71d864d77b Merge pull request #3182 from Carbenium/monitor-includes
monitor: Move system includes back to their original location
2021-03-01 09:40:08 -05:00
Peter Keresztes Schmidt
3b3ecb89b2 monitor: Move system includes back to their original location
41dc0212e0 moved the system includes to work around some compilation problems.
The underlying cause has been fixed in cf9406a1e8.
Thus we can move the includes back so the follow the project-wide order.
2021-03-01 00:45:57 +01:00
Peter Keresztes Schmidt
76e6c468e8 rgb: Convert some constant defines to constexpr
Using defines interferes with fmt.
Also rename them according to the Google styleguide.
2021-03-01 00:38:21 +01:00
Admin
741e67e8cd ALERT also mean warming up with alarm_frame_count value before returning to ALARM.... 2021-02-28 22:42:29 +01:00
Peter Keresztes Schmidt
6a47780f60 Fix a warning reported by -Wextra
/home/peterke/DEV/zoneminder/src/zm_monitor.h: In member function ‘Monitor::TriggerState Monitor::GetTriggerState() const’:
/home/peterke/DEV/zoneminder/src/zm_monitor.h:499:76: warning: enumerated and non-enumerated type in conditional expression [-Wextra]
  499 |   TriggerState GetTriggerState() const { return (TriggerState)(trigger_data?trigger_data->trigger_state:TRIGGER_CANCEL); }
      |                                                                ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2021-02-27 01:27:58 +01:00
Peter Keresztes Schmidt
403061a39c Fix warnings reported by -Wmissing-field-initializers 2021-02-26 22:46:09 +01:00
Isaac Connor
3ce4b3e657 Keep capture_delay in useconds instead of msecs. Fix fps by adding back in the previous sleep_time. Fix crash due to capture_image not being asigned for local cameras 2021-02-25 16:58:54 -05:00
Isaac Connor
224fcd2cd3 Merge branch 'master' of github.com:ZoneMinder/zoneminder 2021-02-25 14:58:45 -05:00
Isaac Connor
8aeb4ab758 Switch db_mutex to a std::mutex. Use modern locking with it. Use zmDbDo or dbQueue.push where appropriate. code cleanup. 2021-02-25 12:26:26 -05:00
Isaac Connor
6c013f0e65 Put back includes needed on FreeBSD. Fixes #3165 2021-02-22 08:03:10 -05:00
Isaac Connor
86d424baf0 Move closeEvent to Close(). If we are closing the camera, we have to close the event as well. 2021-02-19 20:42:36 -05:00
Isaac Connor
b9669ad69f Log new signal on signal change 2021-02-19 15:56:30 -05:00
Isaac Connor
4ba290a9ca Use zmDbDo where appropriate and fix some logging while holding the lock 2021-02-19 12:08:19 -05:00
Isaac Connor
045cd219f8 Move clear packetqueue logic to it's own function and call it from the analysis thread. 2021-02-18 19:25:40 -05:00
Isaac Connor
0b0df96271 Merge branch 'master' of github.com:ZoneMinder/zoneminder 2021-02-18 16:05:10 -05:00
Isaac Connor
c7dede0083 Cleanups in connect/disconnect 2021-02-18 13:47:27 -05:00
Isaac Connor
b1f337b6e7 Move setMaxVideoPackets down to where pre_event_count has a value 2021-02-18 11:54:32 -05:00
Isaac Connor
2a49bd124f Add VNC monitor type 2021-02-17 16:39:16 -05:00
Isaac Connor
33b9dae0f2 fix use of uint32_t for buffer indexes 2021-02-17 13:38:52 -05:00
Isaac Connor
59cdf971fa convert last_read_index and last_write_index to int32_t so that we can have -1 as a value in other functions. 2021-02-16 14:43:52 -05:00
Isaac Connor
41dc0212e0 Move include of algorithm up to top to hopefully fix issues with min and max being defined elsewhere and so compile fails 2021-02-16 10:39:04 -05:00
Isaac Connor
a82247b105 Some cleanups in disconnect 2021-02-16 10:39:04 -05:00
Isaac Connor
5a910c4a4b use lock_guard instead of unique_lock 2021-02-12 10:45:32 -05:00
Isaac Connor
2cb6d21faf get rid of while loop in ::Analyze. Switch login on if Ready() to bail early so we don't indent so much. 2021-02-12 10:38:21 -05:00
Isaac Connor
4915e940b7 clean out old mutex. Add event_mutex to protect around event creation/deletion 2021-02-12 10:14:35 -05:00
Peter Keresztes Schmidt
3d759e1fe0 Monitor: Some reformatting of previously touched lines 2021-02-11 20:02:08 +01:00
Peter Keresztes Schmidt
c0151caa64 Monitor: Signal by making the camera a unique_ptr the ownership relation
In addition we get RAII and thus automatic destruction of the camera when the monitor is destructed.

Monitor API change: getCamera -> LoadCamera
If additional properties of the camera are needed externally they should be exposed directly via Monitor.
2021-02-11 19:22:22 +01:00
Peter Keresztes Schmidt
91aeb325dd Monitor: Close monitor on destruction
This ensures the proper shutdown sequence when not calling Close() externally (e.g when reconnecting).
2021-02-11 19:22:22 +01:00
Peter Keresztes Schmidt
0a665c0710 Monitor: Close the associated camera when closing the monitor
The camera is owned by the monitor. There is no reason to keep the camera open, when the owner is closed.
2021-02-11 19:22:22 +01:00
Isaac Connor
cca4d18d26 need <algorithm> for std::max 2021-02-10 17:29:51 -05:00
Isaac Connor
51f2d120e4 Free raw image after motion detection when doing passthrough and not saving jpegs 2021-02-10 17:07:58 -05:00
Isaac Connor
393e8b582a Move the logic of whether to queue a packet into packetqueue::queuePacket 2021-02-10 14:11:00 -05:00
Isaac Connor
0a1bd3537d ready_count is now max(warmup_count,pre_event_count). This should ensure that we have enough packets in the packet queue when creating an event. 2021-02-10 13:54:20 -05:00
Peter Keresztes Schmidt
2f5dff7244 Monitor: Don't push packets into the packet queue when in Monitor mode
There is no consumer for the packets in this mode, so don't queue them up. This saves quite a bit of RAM for mode of operation.
2021-02-10 16:13:47 +01:00
Isaac Connor
fab7efa003 Fix PrimeCapture on local cams. We need to be able to call it for each monitor 2021-02-09 20:29:37 -05:00
Isaac Connor
727594e3af Fix rotated images by allocating image with camera dimensions 2021-02-09 14:53:14 -05:00