Commit Graph

237 Commits

Author SHA1 Message Date
Isaac Connor 2d5d87839f Fix warnings about hashed authentication not being available when using gnutls. Also set cmake_policy(SET CMP0054 NEW) to quiet warnings 2020-04-05 13:35:21 -04:00
hax0kartik eed45ae66c Fix 2892 2020-03-26 12:08:44 -04:00
Isaac Connor bb72e3000c Merge pull request #2867 from veprbl/pr/cmake_install_full
cmake: use CMAKE_INSTALL_FULL_
2020-03-06 15:05:50 -05:00
Isaac Connor 3a129a8818 Merge pull request #2874 from hax0kartik/2810-libjwt
Add libjwt and remove gnutls-openssl wrapper
2020-03-06 14:48:45 -05:00
Andrew Bauer 82672d9b86 stop bcrypt files from installing with zm 2019-06-23 13:20:08 -05:00
Andrew Bauer 00183b535a rename bcrypt to libbcrypt to reflect name of the project 2019-06-23 12:56:04 -05:00
Andrew Bauer 8b37c0e9b0 remove bcrypt & jwt-cpp as submodules, bring in statically under src 2019-06-23 12:12:12 -05:00
Isaac Connor c4d76f03c9 Introduce ZM_PATH_SHUTDOWN to cmake config 2019-05-27 12:09:32 -04:00
Pliable Pixels d252a8ba30 build bcrypt as static 2019-05-02 10:52:21 -04:00
Pliable Pixels 65a57feedb absolute path 2019-05-01 14:30:00 -04:00
Pliable Pixels c663246f0a try add_library instead 2019-05-01 14:22:10 -04:00
Pliable Pixels a5de45419f added sha1 and bcrypt submodules 2019-05-01 13:08:52 -04:00
Andrew Bauer 3258d8e590 remove ZM_DIR_IMAGES (#2374) 2018-12-29 09:52:58 -05:00
Andrew Bauer 893048c306 remove option to build with no ffmpeg (#2365) 2018-12-28 10:46:27 -05:00
Isaac Connor 6ee72aa2d9 Implement libswresample support as an alternative to libavresample, which is deprecated 2018-12-20 14:06:56 -05:00
Andrew Bauer db81465fa2 allow one to set manpage destination 2018-12-07 09:47:00 -06:00
Andrew Bauer 18c3618e28 Arp tool (#2155)
* let cmake set path to arp

* declare cameras array

* fix probeV4L function

* typo

* fix another typo - my machine is possessed.

* update redhat, debian, ubuntu build dependencies
2018-07-11 15:43:59 -04:00
Andy Bauer 02f8493b39 rpm packaging - remove support for sysvinit aka el6 2018-04-22 07:25:06 -05:00
Andrew Bauer 3c225c9f1c Migrate Webcache out of webroot (#2083)
* migrate webcache folder out of webroot, migrate htaccess files

* rpm specfile - add missing reference to cache folder

* fix submodule mixup
2018-04-19 15:01:46 -04:00
Andrew Bauer be5161391a patching crud no longer needed 2018-04-18 15:02:42 -05:00
Andrew Bauer 8bf502ee4f upgrade to cakephp 2.10.8 (#2067)
* upgrade lib folder to cakephp 2.10.8

* recreate bootstrap.php.in

* Bump Crud module 3.0.10 -> 3.1.0

* fix CrudBaseObject.php
2018-04-17 21:24:14 -04:00
Isaac 6efffe62b8 add c++-11 support for older CMAKE 2018-04-06 19:48:17 +02:00
Isaac Connor 27736fb5d9 Merge ../ZoneMinder.master into storageareas 2018-03-15 11:04:41 -04:00
Matthew Trescott 3475bfb672 Fix compilation on Ubuntu 18.04
I'm not entirely sure why this wasn't a problem with icconor's source package on launchpad. But, even unfamiliar as I am with CMake, it doesn't make sense to me to throw a fatal error by checking for a header that is already known to be unavailable.
2018-03-05 18:46:52 -05:00
Isaac Connor 865649d785 Turn on c++11 2018-03-01 19:20:00 -08:00
Isaac Connor 642c3f053a We are not using boost at this time. 2018-01-02 09:16:37 -08:00
Isaac Connor e679a8cfaa Fix conf.d dir 2017-09-23 13:40:43 -04:00
Isaac Connor 676c4b7ddc Merge branch 'master' into storageareas 2017-08-22 09:52:14 -04:00
Andrew Bauer 613bbfb65b arm neon-check "uname -m" if CMAKE_SYSTEM_PROCESSOR is not what we expect (#1966)
* arm neon - check "uname -m" if CMAKE_SYSTEM_PROCESSOR is not what we expect

* skip arm neon check it not on linux
2017-08-21 12:02:28 -04:00
Isaac Connor da5438a6ff detect hardware accel capabilities 2017-08-16 12:16:15 -04:00
Isaac Connor 49464d381a Merge branch 'master' into storageareas 2017-08-14 10:44:40 -04:00
Andrew Bauer c353d5d17b Update CMakeLists.txt
fix erroneous creation of /etc/zm/conf.d/conf.d during an out-of-source build
2017-08-14 08:45:03 -05:00
Isaac Connor cfbfc0dd44 Merge branch 'master' into storageareas 2017-07-21 11:04:32 -04:00
Andrew Bauer 91ccba137f Don't create symlinks in ZoneMinder webroot (#1923)
* don't create symlinks during rpm packaging

* don't use symlinks when pacakging debs

* change default values for zm_dir_events and zm_dir_images

* remove zm_contentdir cmake var from debian packaging

* change default for zm_config_subdir

* update INSTALL documentation
2017-07-21 08:18:13 -04:00
Andrew Bauer 4bca799d43 reorganize zm config files (#1937)
* reogranize config files

* process 01-system-paths.conf.in

* exclude .in files in install directive
2017-07-17 09:11:36 -04:00
Isaac Connor 085d239a6e Merge branch 'master' into storageareas 2017-06-13 18:02:28 -04:00
Andrew Bauer bacf65ae9a Migrate values from Options -> Paths to zm.conf (#1908)
* initial commit to migrate contents of Options->Paths to zm.conf

* remove paths items from configdata.pm

* remove paths tab from options

* update deb packaging scripts with new cmake vars

* remove extraneous file

* save custom paths variables to config file before dB is freshened

* don't check configs if the dB version is >= 1.31.0
2017-06-12 21:39:37 -04:00
Isaac Connor 371b86300a Merge branch 'master' into storageareas 2017-06-08 14:23:40 -04:00
Andy Bauer 0892be3970 further consolidation of ZM_TARGET_DISTRO 2017-06-06 11:59:56 -05:00
Andy Bauer 54312fa994 consolidate ZM_TARGET_DISTRO parameters 2017-06-06 11:56:53 -05:00
Andrew Bauer 2bc6f1627e Add support for conf.d subfolder (#1902)
* cmake changes to support conf.d

* php changes to support conf.d

* perl changes to support conf.d

* C changes to support conf.d

* add conf.d support to rpmspecfile

* fix typo

* specify ZM_CONFIG_SUBDIR in relevant target distros

* put back my config_file perl definition

* remove quotes from ZM macros

* fix snprintf

* add README to conf.d folder

* adjust rpm specfile

* remove custom permissions from README in rpmspecfile

* modify rpm README documentation to reflect conf.d support

* set ZM_CONFIG_SUBDIR in debian rules file
2017-06-05 16:39:19 -04:00
Isaac Connor 1404785eeb revert my attempt to make it rename zm.conf to zm.conf.new on install 2017-05-18 12:07:04 -04:00
Isaac Connor 6d58fe5d74 Revert back to just installing //etc/zm/zm.conf 2017-05-18 12:04:55 -04:00
Isaac Connor 67c2784522 try putting it into a script 2017-05-18 12:00:45 -04:00
Isaac Connor fc704f5864 try putting it into a script 2017-05-18 11:52:58 -04:00
Isaac Connor f84d363e1a Don't rename zm.conf.new back to zm.conf 2017-05-18 10:28:11 -04:00
Isaac Connor 273a527356 fixup matching endif 2017-05-18 10:03:12 -04:00
Isaac Connor dd75c4676b trivial updates (#1887)
* merge some trivial updates from storageareas

* fix the code to do zm.conf.new
2017-05-16 14:16:32 -04:00
Isaac Connor b1f8485969 Fix videostorage (#1885)
* merge relevant c bits to make h264 recording work

* h264 code requires libavresample and boost

* Need libavresample
2017-05-16 12:04:56 -04:00
Isaac Connor c859f7291c Feature h264 videostorage (#1882)
* Moved writing of configure options from Controller to Model.  Fixes #191.

* Initial commit for saving events as videos :)

* Add zm_video.cpp to autotools

* Add zm_video.h to autotools

* Search for MP4V2 header file 3 times: mp4v2/mp4v2.h, mp4v2.h, mp4.h

* Fix serve memory leak

* Few minor code improvements

* Added the ability to override preset, tune, profile and few other improvements

* Correctly write SPS & PPS from x264 encoder headers

* Remove unnessecary SPS & PPS writing code

* Imported missing files from master to feature-h264-videostorage

* Audio support including fixes for dts/pts, split on keyframe and update to mkv extension to prevent ffmpeg problems writing rtsp audio to mp4 containter (header problem)

* Updates to make gcc happy

* Add html5 video control to timeline and event to support mkv playback

* Add zm_videostore.cpp to CMakeLists.txt

* Remove Modern Branch for now

* Fix minor bug

* Option handled added in master, removing duplicate declaration

* Add CaptureandRecord from zm_camera.h

* Putting placeholder in for CaptureAndRecord function

* Removed duplicate code and brackets

* add digest auth file for cmake

Conflicts:
	src/CMakeLists.txt

* Add web dir back into Makefile.am
Revert "Removed web from SUBDIRS in Makefile.am"

This reverts commit d9bbcdf3a9.

* Add CaptureAndRecord to vlc, still need to make it record

* Resolve SegFault on videostore

* Swap to mp4 container

* mp4 changes

* spaces to tabs, hide video stuff if video writer is turned off

* Make timeline open event.mp4 instead of mkv

* Missed mkv in timeline.js

* Fix some issues from the merge conflict

* Resolve post merge build issues with braces

* Fix whitespace

* Update Jpeg and Video options for passthrough options

* Whitespace fix zm_camera.h

* Fix array mkssing comma

* Add support for Jpeg save options for h264 branch snapshot. Might remove altogether if snapshots not needed

* Update VideoStoreData memory size comment

* Change from config.use_mkv_storage to per monitor option VideoWriter from video branch

* Fix bracket issues post merge

* Clean up comments and add av_free_packet

* Convert from event_directory to event file as per Video branch

* Testing videojs for video playback

* Fixed a missing bracket post merge and also SQL_values now used for EventID and Monitors

* bring recent improvements in ffmpeg capture function into captureandrecord

* Remove pict from writeAudioFramePacket as not used

* Add translate options for h264 Storage options in Monitor and update en_gb file

* Cherry-Pick from iconnor - make it compile on ubuntu 15.04.  Which is libav 56.1.0

Conflicts:
	src/zm_ffmpeg.cpp
	src/zm_remote_camera_rtsp.cpp

Conflicts:
	distros/ubuntu1204/changelog

* Clean up videostore code and remove lots of unused code

* proof of concept for dynamic/automatic video rotation using video-js plugin zoomrotate

Conflicts:
	web/skins/classic/views/event.php

* removed redundant field in sql query

Conflicts:
	web/skins/classic/views/event.php

* local storage of video js plugin

* Beautify!

Make the code somewhat readable.

* added missing videojs.zoomrotate.js file

added missing videojs.zoomrotate.js file

* Typo

added missing "

* Added missing brackets

* fix to display thumbnails when only storing snapshot.jpg

* added control for video playback rate

Conflicts:
	web/skins/classic/views/event.php

* dynamically create jpegs from video file for viewing in browser

* fix timeline view for SaveJPEGs monitors (without enabled VideoWriter)

* only expose monitor info which are being used in client

* fix segmentation fault in zma with ubuntu 14.04 and ffmpeg 2.5.8 (gcc 4.8)

when libx264 is not installed

* better way of detecting showing image or video in timeline and event view

instead of Monitor.VideoWriter, Event.DefaultVideo is used, so even if
VideoWriter/SaveJPEG option is changed, a valid image or video will always be
displayed for historical events in both timeline and event view

this also fixes loading videos in timeline view

* Fixes problem of crashing zmc when bad packet arrives causing av_interleaved_write_frame() to return non-zero (-22).  Prefilters common packet issues. Add metadata title to generated video file

* Remove syslog.h

* fixed SaveJPEGs are not working

which is caused in errors introduced when merging with master

* Update README.md

* Fix build warnings specific to h264 branch, unused FrameImg, unused ret and int64_t snprintf issues

* Fix PRId64 issue in travis, builds locally fine, but I can see a gcc version issue here

* Fix PRId64 issue in travis, another try

* Try "STDC_FORMAT_MACROS" to see if that helps Travis on gcc 4.6.3

* Revert space removal around PRId64

* video branch ffmpeg 2.9 fixes

ffmpeg 2.9 patched removed SSE2 CPU

* Add FFMPEGInit back

* use webvvt to overlay timestamp (honoring Monitor.LabelFormat) to videos in timeline and event

also fixed bug which prevented seeking in timeline video preview

* ffmpeg 3.0 API build failure fixes

* Update README.md

* merge all the commits from the messed up iconnor_video branch

* fix whitespace

* revert

* whitespace fixes

* spelling fix

* put back some text

* add these back

* fix spelling mistake

* Steal some packet dumping routines from ffmpeg. Convert them to use our logging routines

* add a test and error message if the codec is not h264

* these have been removed in master

* add a view to check auth and just send the video

* add some comments, and dump filename and AVFormatContext on failure to write header

* add the toggle for RecordAudio so that the checkbox works to turn off Audio

* Must init videoStore in constuctor

* more debug and comments, return checking

* Fix dropped part of sql query.

* fix extra else and some whitespace

* Fix missing } from merge that was preventing building.

* fix tabs

* get rid of use of separator, just use \n

* Restore lost fixes for deprecation

* Why are these failing

* Respect record_audio flag when setting up video file so dont try and initiliase mp4 with unsupported audio

* Forgot that I was trying to solve case of stream is true and record_audio
is false.

* Pass swscale_ctx back in to getCachedContext or it will create new
context every frame and leak memory like a mofo.

* Add libx264-dev and libmp4v2-dev to build requires to save hassle of
ensuring they are installed before build.

* Merge my Rotation/Orientation work and fixes for bad h264 streams

* need arpa/inet for reverse lookups

* pull in the new byte range code for viewing videos

* Move our recording flag deeper into closeevent

* add braces and only call closeEvent if there is an event

* deprecate the z_frame_rate stuff which is deprecated in ffmpeg

* remark out some debugging

* fix for video on stream 1

* fix audio_stream to audio_st

* Ignore bad decodes

* fix problems with content-length causing viewing to not work in chrome/android

* change logic of sending file contents to handle an off by one and be more readable

* Some fixes pointed out by Maxim Romanov.  Also simply the loading of events to not join the Monitors table

* fix to sql for timeline

* added RecordAudio to sql in README

* Use sub queries instead of joins to fix errors when using new mysql defaults.

* fix sql queries

* Dockerfile to build feature-h264-videostorage

* Must cast codec

* add php-acpu as a dependency

* require php5-acpu

* fix typo

* remove extra /

* Add a line for out-of-tree builds to do api/lib/Cake/bootstrap.php

* delete merge conflict files

* delete merge conflict files
2017-05-15 22:02:48 -04:00