Commit Graph

201 Commits

Author SHA1 Message Date
Isaac Connor 9284e26512 get rid of the snapshot setting. If we aren't storing all frames, then we should always store the snapshot. 2018-01-13 15:15:14 -05:00
Isaac Connor 2922a86d23 fixes to new Storage Schemes code 2017-12-19 11:01:03 -05:00
Isaac Connor 8a8001f14a fix missingc_str() 2017-12-18 13:25:24 -05:00
Isaac Connor 705a98276f change StorageScheme to Scheme 2017-12-18 13:17:43 -05:00
Isaac Connor d312482a2b add StorageScheme to Storage and Events. Deprecate ZM_USE_DEEP_STORAGE 2017-12-18 12:52:26 -05:00
Isaac Connor 2df96bf6ee use the return value of stat 2017-12-12 12:51:54 -05:00
Isaac Connor 0eb2ae60f3 only try to write timecodes if the open was successful 2017-11-22 12:13:28 -08:00
Isaac Connor 3c55daaf36 Merge branch 'tesla' of github.com:connortechnology/ZoneMinder into tesla 2017-11-22 12:10:54 -08:00
Isaac Connor a1fe0c4de3 store the value of saveJpegs in the event 2017-11-21 23:56:22 -05:00
Isaac Connor 159c0a7165 moer cppcheck fixes 2017-11-17 07:52:26 -05:00
Isaac Connor 2d3aa08303 include <0 in test on event frame timestamp 2017-10-23 09:56:30 -04:00
Isaac Connor 666233af54 fix mving capture_file_format to staticCOnfig 2017-10-18 20:46:26 -04:00
Isaac Connor ad97023732 spacing 2017-10-12 08:54:43 -07:00
Isaac Connor 8ea335d45e whitespace 2017-10-10 15:08:24 -04:00
Isaac Connor 7b2163f824 add debug 2017-10-10 12:58:06 -04:00
Isaac Connor 219b7e0f36 output failing sql 2017-10-08 09:13:56 -04:00
Isaac Connor 869d2b4f16 make failure to symlink non-fatal. Someday we may want to use a file store that doesn't do symlinks 2017-09-25 16:22:41 -04:00
Isaac Connor c241b6dddd Merge branch 'split_zmeventstream' into storageareas 2017-06-22 10:46:32 -04:00
Isaac Connor 226514e887 split EventStream into it's own files 2017-06-22 10:10:28 -04:00
Isaac Connor 76f63686cb Merge branch 'fix_event_viewing' into storageareas 2017-06-22 09:24:31 -04:00
Isaac Connor 5e75588bfb Fix event viewing. Output a frame immediately on zoom in/out. Fix recursive loop on play/pause 2017-06-21 17:14:02 -04:00
Isaac Connor f0d80ddfd4 fix runstate merge 2017-06-13 21:18:09 -04:00
Isaac Connor 7a67a5e475 fix merge 2017-06-13 21:15:58 -04:00
Isaac Connor 085d239a6e Merge branch 'master' into storageareas 2017-06-13 18:02:28 -04:00
Andrew Bauer bf04a68085 Merge pull request #1752 from connortechnology/filter_by_runstate
rough in the ability to filter on RunState
2017-06-12 20:54:17 -05: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 01717a5c14 Merge branch 'master' into filter_by_runstate 2017-06-06 20:34:47 -04:00
Isaac Connor 9534c725d6 Merge branch 'master' into storageareas 2017-06-05 09:21:37 -04:00
Isaac Connor 187bec40ec Fix #1906 2017-06-05 09:05:17 -04:00
Isaac Connor a515041e14 Merge branch 'master' into storageareas 2017-05-23 15:17:46 -04:00
Isaac Connor 03495e8c23 fix 2017-05-20 09:54:03 -04:00
Isaac Connor 1ab8530aed use enum values to make code more readable. Better error message on event insertion failure 2017-05-20 08:34:46 -04:00
Isaac Connor 7ecbcd8f12 code documentation 2017-05-20 08:26:55 -04:00
Isaac Connor 7caeee6bf8 Merge branch 'master' into storageareas 2017-05-19 15:09:44 -04:00
Isaac Connor e7ca892efd merge more differences from SA 2017-05-19 15:07:41 -04:00
Isaac Connor 91138ba8a1 Merge branch 'master' into storageareas 2017-05-19 14:53:08 -04:00
Isaac Connor 44e5b6f829 remove redundant code 2017-05-19 14:52:45 -04:00
Isaac Connor 9e54efdfcf Merge branch 'master' into storageareas 2017-05-19 14:49:25 -04:00
Isaac Connor 7c889add76 cleanup sql to load event data. Don't need MonitorName 2017-05-19 14:43:49 -04:00
Isaac Connor 764c76f98a add loading the video filename when loading event data 2017-05-19 14:29:08 -04:00
Isaac Connor e79d2c5a00 Merge branch 'master' into storageareas 2017-05-19 14:26:28 -04:00
Isaac Connor 7dccbac78d clenaup 2017-05-19 14:25:44 -04:00
Isaac Connor ccc9f6fdf6 remove redundant code 2017-05-19 14:24:49 -04:00
Isaac Connor 1e4792e13d Merge branch 'master' into storageareas 2017-05-19 13:36:23 -04:00
Isaac Connor aab08db84b Merge branch 'master' into storageareas 2017-05-19 13:35:31 -04:00
Isaac Connor c4e68f8cfd fix some spacing problems caused by missing ; 2017-05-19 13:35:13 -04:00
Isaac Connor 5e2220efa0 add a missing ; at end of line, and remove end of line spaces 2017-05-19 13:30:08 -04:00
Isaac Connor 3fcca1021d add missing; and fix spacing 2017-05-19 13:28:34 -04:00
Isaac Connor bbb77ab7dd reorder lines to make diff from master cleaner 2017-05-19 13:27:18 -04:00
Isaac Connor cb3ee3484a remove work in progress crap from zm_event 2017-05-18 09:08:31 -04:00
Isaac Connor f4224bb88e Merge branch 'master' into storageareas 2017-05-17 17:47:39 -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
Isaac Connor 68aea50ca9 Merge branch 'storageareas' of github.com:ConnorTechnology/ZoneMinder into storageareas 2017-05-15 16:19:57 -04:00
Isaac Connor fd44ff4e60 Merge branch 'master' into storageareas 2017-05-10 13:16:08 -04:00
Andrew Bauer e6c60737e9 Merge pull request #1756 from SteveGilvarry/zmf_goodbye
Remove zmf
2017-05-10 07:07:22 -05:00
Isaac Connor 9ac20999b3 rough in 2017-05-05 21:11:23 -04:00
Isaac Connor 35b89b6ef0 When zms hits then end of an event, if in single event mode, reset the frame index to the beginning so it starts again 2017-05-05 14:04:57 -04:00
Isaac Connor 2660c8316a add a test for if the analysis image doesn't exist, fall back to the capture image when streaming. 2017-05-05 09:04:07 -04:00
Isaac Connor 273229858f Merge branch 'master' into storageareas 2017-04-16 11:26:18 -04:00
Andrew Bauer 6b0f587725 invert timestamp_on_capture condition 2017-04-13 15:51:50 -05:00
Isaac Connor 83219d3e34 define av_frame_free to av_freep on older ffmpeg. Undo c++11 requirements. 2017-04-13 09:47:19 -04:00
Isaac Connor 48d658790a Merge branch 'storageareas' into optimisations 2017-04-09 17:36:24 -04:00
Isaac Connor aae4a1f83b remove extraneous setting of NULL to videowriter which is already NULL 2017-02-04 11:20:21 -05:00
Isaac Connor 1f3644f6bd Merge branch 'storageareas' of github.com:ConnorTechnology/ZoneMinder into storageareas 2017-01-16 21:14:39 -05:00
Isaac Connor 19bc79a5ec move nRet into the block where it is used. Add a comment. 2017-01-16 21:11:28 -05:00
Isaac Connor f6d1707382 fix event insert 2017-01-16 21:08:13 -05:00
SteveGilvarry 2f3ebd80da Remove zmf, die..die..die 2017-01-16 13:20:05 -08:00
Isaac Connor 899b1b82b9 Merge branch 'filter_by_runstate' into storageareas 2017-01-14 17:07:20 -05:00
Isaac Connor 242e5a56d8 rough in the ability to filter on RunState 2017-01-14 16:55:28 -05:00
Isaac Connor 8ae02b9ac0 use a FrameType enum instead of string comparisons 2017-01-08 16:53:29 -05:00
Isaac Connor 5ae34a7561 Merge branch 'master' into storageareas 2017-01-02 09:39:10 -05:00
Andy Bauer 254fcbcef7 update gpl 2 mailing address in source files 2016-12-26 09:23:16 -06:00
Isaac Connor 5b8b9c5345 merge update 2016-10-12 09:24:10 -04:00
Isaac Connor 9656a7c3e8 Store Oriention on event creation 2016-10-12 09:12:09 -04:00
Isaac Connor cf9fa78ca3 work on fixing event view 2016-09-29 09:28:48 -04:00
Isaac Connor 13e8979a98 refactor some redundant code 2016-09-27 09:47:19 -04:00
Isaac Connor 0a4eee323b Use a subquery instead of a join to fix group by errors when sql_mode=only_full_group_by 2016-06-27 10:26:52 -04:00
Isaac Connor e29a0ebe71 Merge branch 'feature-h264-videostorage' into storageareas 2016-06-21 13:48:32 -04:00
Isaac Connor 910fd8212f Merge branch 'fix_1526' into storageareas 2016-06-13 09:45:34 -04:00
Isaac Connor 472973e975 connect needs a +1 2016-06-12 15:45:24 -04:00
Steve Gilvarry b9a6273f32 Fix dropped part of sql query. 2016-05-01 15:59:53 +10:00
Steve Gilvarry da157f5a1a Merge remote-tracking branch 'upstream/master' into feature-h264-videostorage 2016-04-30 22:27:10 +10:00
Isaac Connor 819dad455e whitespace/tabs 2016-04-29 09:11:14 -04:00
Isaac Connor 59406fd03a Merge branch 'master' into storageareas 2016-04-28 09:24:36 -04:00
Isaac Connor 24e3306955 master master 2016-04-28 09:20:56 -04:00
abi 9aff84fbbb unbreak build under FreeBSD 32 bit II 2016-04-26 21:53:50 +03:00
Isaac Connor 9a795432cf merge all the commits from the messed up iconnor_video branch 2016-04-05 17:14:46 -04:00
Isaac Connor a60a0959fc fix SQL for inserting event. output the sql on error 2016-04-04 17:41:06 -04:00
Isaac Connor de5b9c6dae I don't know what the Name of an event is, but the column count and value count are off 2016-04-04 16:56:40 -04:00
Isaac Connor 03b1ced568 tabs to spaces and use 2space indenting 2016-04-04 10:11:48 -04:00
Isaac Connor 03cae9d2f2 Add video file to event data. 2016-04-01 14:06:28 -04:00
Isaac Connor abcf48b65c Merge branch 'master' into feature-h264-videostorage 2016-04-01 08:53:45 -04:00
Isaac Connor 56d95bb949 Merge branch 'iconnor_video' into storageareas 2016-03-31 14:02:56 -04:00
Isaac Connor c26dbb9028 rough in record_audio, and do lots of whitespace cleanups 2016-03-31 12:54:56 -04:00
Isaac Connor c9a1a9020d Merge h264 2016-03-31 11:03:36 -04:00
Isaac Connor e5a36c02bd Merge remote-tracking branch 'origin/master' into video_remote 2016-03-30 16:55:24 -04:00
Isaac Connor ea49dc20d1 Merge branch 'master' into storageareas 2016-03-30 10:58:07 -04:00
Isaac Connor 1262e831ac rework zmu to load data from the last event with frames when it can't connect to zmc 2016-03-29 14:36:16 -04:00
Isaac Connor 0c32ae61ef Merge branch 'master' into fix_coverity_issues 2016-03-24 09:42:01 -04:00