Isaac Connor
2308bfab8e
Add groovy and hirsute to ubuntu builds
2021-02-09 23:32:27 -05:00
Isaac Connor
8f783c0ec4
Must also include cstdarg for va_start etc al
2021-02-09 23:32:27 -05:00
Isaac Connor
9879a40c4b
Must include cstring
2021-02-09 23:32:27 -05:00
Andrew Bauer
2a440685eb
remove zma binary from rpm specfile
2021-02-09 20:55:52 -06:00
Isaac Connor
b18522b6c0
Merge branch 'master' of github.com:ZoneMinder/zoneminder
2021-02-09 20:29:45 -05: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
dcf1ff3133
Merge pull request #3152 from Carbenium/ffmpeg-warnings
...
Fix some ffmpeg deprecation warnings
2021-02-09 20:15:41 -05:00
Isaac Connor
7ed7ee887b
Merge pull request #3151 from Carbenium/analysis-thread-crash
...
AnalysisThread: Make the class un-movable
2021-02-09 18:21:35 -05:00
Peter Keresztes Schmidt
a66a9a6f10
Rtsp: Use AvStream.codecpar if available
...
.codec has been deprecated in libavf 57.33.100
2021-02-10 00:21:23 +01:00
Peter Keresztes Schmidt
e18f9e1f03
FFmpeg: Drop function which is not needed with supported ffmpeg versions
...
avformat_alloc_output_context2 was introduced in libavformat 53.2 (2011). Drop our own implementation which was used if the library version wasn't available. It isn't used anymore an causes compile warnings.
2021-02-10 00:21:23 +01:00
Peter Keresztes Schmidt
d0b80d63c3
FFmpeg: Fix a version check to avoid deprecation warnings on newer systems
2021-02-10 00:20:34 +01:00
Peter Keresztes Schmidt
0380bee130
AnalysisThread: Make the class un-movable
...
We depend on an unchanged value of "this" after the creation of the thread otherwise undefined values would be accessed within the std::thread.
2021-02-09 23:54:50 +01:00
Peter Keresztes Schmidt
8fa1249b33
Utils: Add some helper to create unique_ptrs
...
They follow the C++14 API and can be removed once the language level is increased.
2021-02-09 23:52:13 +01:00
Isaac Connor
67cd038a4f
Include pre-alarm frames in db
2021-02-09 15:33:09 -05:00
Isaac Connor
727594e3af
Fix rotated images by allocating image with camera dimensions
2021-02-09 14:53:14 -05:00
Isaac Connor
13d72bdec6
Merge branch 'master' of github.com:ZoneMinder/zoneminder
2021-02-09 14:24:20 -05:00
Isaac Connor
470739e1d5
Add debugging if streamStatus.status doesn't exist
2021-02-09 14:24:09 -05:00
Isaac Connor
79ac92c76d
spacing
2021-02-09 14:23:47 -05:00
Isaac Connor
1780cfbff1
Add frames_duration
2021-02-09 14:23:34 -05:00
Isaac Connor
c2ac171811
truncate file when logging to 255 chars so it gets into the db
2021-02-09 14:23:15 -05:00
Isaac Connor
9b3d423f3d
Separate duration==endtime-starttime from Frames Duration
2021-02-09 14:22:23 -05:00
Isaac Connor
a5519075f5
Also save ALERT frames to db
2021-02-09 14:22:02 -05:00
Isaac Isaac
c233bf3463
spacing and a fix for duplicated for loop setting up rtsp server
2021-02-09 13:18:34 -05:00
Isaac Isaac
032420beb2
Don't need to init mVideoStream etc as they are done in Camera(). Set stream_index in packet.
2021-02-09 13:16:19 -05:00
Isaac Connor
05b5927f01
Don't queue audio packets if we aren't saving audio
2021-02-09 11:54:38 -05:00
Isaac Connor
1bce4f6bfa
When flushing queues, will return 0 when done. Handle it. Also set next dts from pkt, not opkt
2021-02-09 11:30:42 -05:00
Isaac Connor
e3eebeb9dd
Must return ret to handle case where ret=0.
2021-02-09 11:30:06 -05:00
Isaac Connor
aab3aed791
Merge pull request #3145 from Carbenium/analysis-thread
...
AnalysisThread: Move it over to std::thread
2021-02-09 09:26:47 -05:00
Isaac Connor
1bd2fd639e
Merge pull request #3147 from Carbenium/issue-3146
...
Build: Work around CMake version on Xenial not supporting cxx_std_* flags
2021-02-09 09:26:22 -05:00
Isaac Connor
98d030a5d8
Merge pull request #3148 from Carbenium/comms-namespace
...
Fix some RTSP server related crashes
2021-02-09 09:16:51 -05:00
Peter Keresztes Schmidt
23a4b5087c
RTSPServerThread: Fix a crash during construction
...
It's a bad idea to use a shared_ptr instance from which the data just got moved away. Rename the instance variable to distinguish them.
2021-02-09 14:50:07 +01:00
Peter Keresztes Schmidt
4056782954
Comms: Move all classes to ZM:: namespace
...
The Socket class collides with a class named the same way from liblive555. This confuses the linker and links the wrong object leading to a crash when connecting to the RTSP server.
2021-02-09 14:45:33 +01:00
Peter Keresztes Schmidt
426cace32e
Build: Raise required CMake version to 3.5.0
...
This is the version found in Xenial which is the oldest we support.
2021-02-09 13:20:27 +01:00
Peter Keresztes Schmidt
4ebfbdef5d
Build: Work around CMake version on Xenial not supporting cxx_std_* flags
...
Closes #3146
2021-02-09 13:20:27 +01:00
Peter Keresztes Schmidt
888ddc5d63
AnalysisThread: Sprinkle some more std::chrono
2021-02-09 12:26:53 +01:00
Peter Keresztes Schmidt
3ba8ff604f
AnalysisThread: Use std::this_thread::sleep_for instead of usleep
2021-02-09 12:26:53 +01:00
Peter Keresztes Schmidt
4cd70fec1a
Utils: Add some typedefs for std::chrono durations
2021-02-09 12:26:53 +01:00
Peter Keresztes Schmidt
b22dbd4788
AnalysisThread: Move it over to std::thread
2021-02-09 12:26:53 +01:00
Isaac Connor
11d6de1aca
Merge pull request #3144 from Carbenium/asan
...
Build: Add support for compiler specific options and ASan support
2021-02-08 17:28:18 -05:00
Peter Keresztes Schmidt
424e6e14f6
Build: Add -DASAN option to build with AddressSanitizer support
...
Use this option only for debugging purposes.
2021-02-08 23:13:31 +01:00
Peter Keresztes Schmidt
825ca07561
Build: Use zm-* interfaces to set cxx standard and warning flags
2021-02-08 23:08:22 +01:00
Peter Keresztes Schmidt
00104b020c
Build: Link our libs and executable targets against zm-core-interface
2021-02-08 23:08:22 +01:00
Peter Keresztes Schmidt
44be2ccf6c
Build: Add a set of interface targets which can be used to set compilation options
...
zm-compile-option-interface:
Use to set various compiler/linker flags
zm-feature-interface:
Use to set required compiler features.
See https://cmake.org/cmake/help/latest/prop_gbl/CMAKE_CXX_KNOWN_FEATURES.html
zm-warning-interface:
Use to set compiler warning flags. If need be a zm-no-warning-interface can be added which suppresses all warning for targets linked against it. Useful for in-tree dependencies from which we don't want compiler warnings.
zm-core-interface:
That's the interface one should normally link against to get all the options.
2021-02-08 23:08:22 +01:00
Peter Keresztes Schmidt
407ea70991
Build: Add support for compiler detection
...
Using this system we can separate settings for different compilers nicely.
2021-02-08 23:08:22 +01:00
Peter Keresztes Schmidt
36253048f5
Build: Move platform detection to its own module
2021-02-08 23:08:22 +01:00
Isaac Connor
4d0800151a
Merge pull request #3143 from Carbenium/close-event-crash
...
Monitor: Don't segfault in closeEvent if mmap is already unmapped
2021-02-08 15:32:38 -05:00
Isaac Connor
a7da2e9b8a
Merge pull request #3142 from Carbenium/log-db-lock
...
Logger: Try harder to obtain the DB lock
2021-02-08 15:30:22 -05:00
Peter Keresztes Schmidt
6fd6654488
Monitor: Don't segfault in closeEvent if mmap is already unmapped
2021-02-08 19:47:40 +01:00
Peter Keresztes Schmidt
7e7b1a0b1f
Logger: Try harder to obtain the DB lock
...
Since we are now multi-threaded it can happen quite easily that a log message should be written to the DB on one thread while the other thread executes another query. Don't bail out immediately in the logging code, instead try to obtain the lock within 1s.
2021-02-08 19:07:01 +01:00
Peter Keresztes Schmidt
70fbc25dbd
Mutex: Change method signatures so they resemble std::unique_lock a bit more
...
try_lock_for should specify in their return value whether obtaining the lock succeeded.
2021-02-08 18:59:25 +01:00