Commit Graph

3363 Commits

Author SHA1 Message Date
Isaac Connor 788b5b480b hack to make sync work on resample 2019-09-12 17:59:08 -04:00
Isaac Connor d9d4c6b4ca fix build 2019-09-12 17:26:19 -04:00
Isaac Connor 0a8aba2b76 rework how pts/dts is handled. We still use video_first_pts, but if the result is negative, normalize it to 0. Also now use audio_next_pts/dts to calculate pts when resampling and re-encoding. I believe this resolves the issues with wrong duration in the audio stream. 2019-09-12 16:52:59 -04:00
Isaac Connor 8fb55cdbff Add codec name to zm_dump_codec and zm_dump_codecpar add new functions zm_receive_packet 2019-09-12 16:51:33 -04:00
Isaac Connor 6c6b2d7c6f Fix build 2019-09-09 17:10:40 -04:00
Isaac Connor 097ce5e778 add const to cast 2019-09-09 17:09:01 -04:00
Isaac Connor 792af28c54 return a value from write_packet 2019-09-09 16:55:22 -04:00
Isaac Connor d5aa95e45f cpplint fixes 2019-09-09 16:13:32 -04:00
Isaac Connor d5d4d9d19b ret should be a heap var, not a member of the object. Somehow this also seems to fix crashing on debian buster. I assume the compiler is confused 2019-09-08 16:10:57 -04:00
Isaac Connor 8215fe1c0f Some versions off avcodec libs have pkt_pts and pkt_dts but they have been deprecated and weren't of any use anyways 2019-09-08 16:10:20 -04:00
Isaac Connor 85e0a086b3 fixes #2694 2019-09-03 11:55:37 -04:00
Isaac Connor c80ef0e0ab spacing 2019-08-28 12:20:03 -04:00
Isaac Connor bd3395ac98 introduce VideoStore::write_packet to refactor out duplicated code. Add the ability to receive multiple packets from audio encoder per input packet 2019-08-28 12:19:54 -04:00
Isaac Connor efb8711c02 Merge branch 'master' of github.com:ZoneMinder/zoneminder 2019-08-28 11:43:59 -04:00
Isaac Connor 5f0080ef92 Fix crash when using auth_relay=none 2019-08-28 10:34:30 -04:00
Isaac Connor 64d024b0c0 Fix spacing 2019-08-28 10:33:18 -04:00
Isaac Connor 505a041c88 Don't add a final db frame to the event, because there is no jpg for the frame. I don't know why this code was originally added. 2019-08-28 10:17:23 -04:00
Isaac Connor 59940ab675 report pixformat names instead of just #'s on error 2019-08-28 09:19:57 -04:00
Isaac Connor 39620c01ff Add rescaling of pkt pts/dts from audio_out_ctx to audio_out_stream 2019-08-26 16:37:32 -04:00
Isaac Connor b26ed9bf62 Yet more debugging. Also, move pts adjustment to before audio encoding 2019-08-26 16:17:45 -04:00
Isaac Connor 2fe9442257 Fix time_base conversion when flushing audio queue. Add more debugging. COrrect pkt_Duration when resampling audio 2019-08-23 18:17:26 -04:00
Isaac Connor 886a203bf1 Support hwaccel for non-passthrough case as well 2019-08-21 10:11:58 -04:00
Isaac Connor 01e988ffba remove some redundant debugs. Improve some messages 2019-08-20 14:09:47 -04:00
Isaac Connor 4a82ce83a7 quit a bit earlier when stream is broken. 2019-08-20 11:13:38 -04:00
Isaac Connor ed190340b9 fix typo 2019-08-19 11:12:47 -04:00
Isaac Connor 369dd03909 remove errant i 2019-08-18 21:32:19 -04:00
Isaac Connor 503cf6cd24 More backticking of SQL 2019-08-17 14:37:19 -04:00
Isaac Connor efa264e0c7 Fix playing in reverse. Fix not sending first frame. Fix sql problem with backticks. Not being able to open a frame image is now non-fatal. 2019-08-16 10:24:51 -04:00
Isaac Connor c7b6db9be7 Put backticks around all columns and tables in sql to deal with mysql 8 2019-08-14 16:18:21 -04:00
Isaac Connor c1984ad7cb Fix problem calculating mem_size using an int from ImageSize. With camera resolutions going up, width*height*colour could exceed 32bits. So use a guarnteed 53bit type, which fixes the memsize calculations. Fixes #2682 2019-08-11 20:21:37 -04:00
Isaac Connor 5b62c91cc2 Improve some debugging to try to diagnose recent segfault report 2019-08-10 14:46:05 -04:00
Isaac Connor 0cdb43e165 make dump_video_frame a define instead of a function, fix linesize 2019-08-10 14:45:45 -04:00
Isaac Connor bb6d2631c9 Fix hwaccel compile on pi 2019-08-08 09:26:40 -04:00
Isaac Connor 6a9464044b Demote warnings about fixing non-monotonic dts to debug 2019-08-02 08:03:02 -04:00
Isaac Connor 14ed777eeb fix segfault when debbing is turned on for zma 2019-07-31 17:17:54 -04:00
Isaac Connor 90cb5d018a
Fix 2673 (#2675)
* Change MaxFPS to DECIMAL(5,3) to handle values like 1/60 = 0.017

* When fps < 1 we may need to wait longer than 10s.  Also, we cannot sleep for a long time, because we may need to send a keep alive or check the command queue. So limit the sleep to 1s

* Bump version

* Update MaxFPS to Decimal(5,3)

* Fix missing ;
2019-07-31 11:42:38 -04:00
Isaac Connor 48ad8d47fc Add capture_max_fps to monitor object instead of just calculating the delay. 2019-07-31 11:23:02 -04:00
Isaac Connor 4b89ced889 Warn about waiting more than .5s instead of .1 2019-07-26 12:24:36 -04:00
Isaac Connor e5c194e9ee Fix return 403 status code 2019-07-26 12:22:04 -04:00
Isaac Connor 09934ed7f5 Fix sendTextFrame 2019-07-26 12:21:25 -04:00
Isaac Connor 3da12fd141 Add a bunch of debugging 2019-07-26 12:21:15 -04:00
Isaac Connor 0643108ba4 Use fputs instead of fprintf. Spacing and google code style changes 2019-07-26 10:53:48 -04:00
Isaac Connor 1e0c39c632 mostly spacing cleanups. Don't bother setting pkt_duration on resampled frame 2019-07-19 16:28:18 -04:00
Isaac Connor 9a31f8792c return proper error codes when failed auth or fail permissions 2019-07-19 13:55:35 -04:00
Isaac Connor f3166663a5 unref hw_device_ctx on Close. I think this should release all the other hwaccel related stuff 2019-07-19 12:51:31 -04:00
Isaac Connor fcee031785 Merge branch 'master' of github.com:ZoneMinder/zoneminder 2019-07-17 21:10:46 -04:00
Isaac Connor 542d88b6a4 fix compile without HWCONTEXT 2019-07-17 21:10:24 -04:00
Pliable Pixels a9d01ba3d2 Alarm api (#2665)
* fixed alarm api to use tokens if present

* clearer debug logs for tokens

* space
2019-07-17 20:38:58 -04:00
Pliable Pixels 2b7610a5ac fixed ffmpeg log association to zm log levels (#2664) 2019-07-17 20:37:27 -04:00
Isaac Connor 75af397223 hwFrame isn't defined unless we have HWCONTEXT_H 2019-07-17 20:33:23 -04:00
Isaac Connor 34c141304d Merge branch 'master' of github.com:ZoneMinder/zoneminder 2019-07-17 10:07:29 -04:00
Isaac Connor ef9fe2dbd6 Free up hwFrame, preventing memleak 2019-07-17 10:06:30 -04:00
Pliable Pixels 67168a2387 demote token log (#2663) 2019-07-12 14:31:39 -04:00
Isaac Connor 05be9008c7 use FFMPEGInit to initialise ffmpeg instead of doing it ourselves 2019-07-11 17:57:11 -04:00
Isaac Connor 13c91bdf60 Add pts adjustment to the delayed flushed encoder packets 2019-07-11 17:56:53 -04:00
Isaac Connor 288f2f3e8f Convert zm_dump_frame from a function to a define, this way we get line #'s from where we call zm_dump_frame instead of from the line in zm_ffmpeg where the function was. 2019-07-11 17:56:22 -04:00
Isaac Connor 94cc85aa36 Sorta fix pts on encoded audio packets. Sync is off, but at least it is close 2019-07-07 08:57:22 -04:00
Isaac Connor 0f35d86efb implement zm_send_frame which sends a frame and receives a packet 2019-07-07 08:56:39 -04:00
Isaac Connor 726e5c6dd5 Merge branch 'master' of github.com:ZoneMinder/zoneminder 2019-07-03 09:50:49 -04:00
Isaac Connor a9579484b8 gracefully handle failure to config hw pix fmt and debug a bit more 2019-07-03 09:49:53 -04:00
Isaac Connor 5ea5bd9bde Only do audio_first_pts if we have audio_in_stream 2019-07-02 12:26:33 -04:00
Isaac Connor 4e8ac47060 Use the video_first_pts to set the audio_first_pts 2019-07-02 11:58:22 -04:00
Isaac Connor 2dc60196c5 Code cleanup and cpplint 2019-07-02 11:14:24 -04:00
Isaac Connor 268bc2264b Merge branch 'storageareas' 2019-07-02 10:19:03 -04:00
Isaac Connor d972ab6006 add min_section_length test to alarmed events that go unalarmed 2019-06-27 21:50:12 -04:00
Isaac Connor 0ab4f9fce0 More debugging in packetqueue. 2019-06-27 21:49:43 -04:00
Isaac Connor 3bd4486b65 Start event when alarm frames >= alarm_frame_count-1 because it is 1based. Add some debug. 2019-06-27 15:48:10 -04:00
Isaac Connor ac7d4869de We need to seek back pre_event_count video frames, not any frames 2019-06-27 15:36:13 -04:00
Daniel Schaefer 158b9438d7 Explicitly link with libdl (#2649)
Otherwise on some systems linking would fail with

  undefined reference to symbol 'dlclose@@GLIBC_2.2.5'
2019-06-27 15:08:29 -04:00
Isaac Connor dd57fd95ce Clean up cruft from videostore api. Fix packetqueue clear_unwanted_packets to take a pre_event_count and take it into consideration when finding the right spot in the queue to start recording. 2019-06-27 11:11:14 -04:00
Isaac Connor 6ed29a3d56 Google code style, ifdef out all the extra includs that shouldn't be in the .h 2019-06-27 10:29:47 -04:00
Isaac Connor 6a87ae0fa7 fix compile warning by copying two bytes, which will grab the \0 after the \n 2019-06-27 10:24:51 -04:00
Isaac Connor 763fe16a04 Google code style, merge some fprintf's 2019-06-27 10:20:23 -04:00
Isaac Connor 0686f487ac %s => %d for error count 2019-06-27 04:18:25 -04:00
Isaac Connor d26286a170 fix test for hwtransfer needed 2019-06-27 03:40:18 -04:00
Isaac Connor 2a65b339c1 init hw_pix_fmt in constructor 2019-06-25 22:19:09 -04:00
Isaac Connor 86e8b58561 move hw_device_ctx under ifdef for HWCONTEXT_H 2019-06-25 22:06:00 -04:00
Isaac Connor 7389bbcb25 better debug in selecting hw_format, add CUDA, add setting device for hwaccel 2019-06-25 21:47:19 -04:00
Isaac Connor a44631a59d rough in support for ffmpeg 3.4 2019-06-25 16:35:07 -04:00
Isaac Connor 5ab4414b11 Only include hwaccel support if LIBAVUTIL_HWCONTEXT_H is deifned 2019-06-25 15:58:55 -04:00
Isaac Connor 679b6b1b2d remove old qsv code 2019-06-25 15:47:23 -04:00
Isaac Connor 46f3aabc25 Merge branch 'hwdecode' into storageareas 2019-06-25 15:35:56 -04:00
Isaac Connor 86c4051c44 handle zm_receive_frame returning AVERROR instead of boolean 2019-06-25 15:34:36 -04:00
Isaac Connor 434bbce954 Add loading decoder_hwaccel in Monitor 2019-06-25 15:34:17 -04:00
Isaac Connor d0abd16494 add passing hwaccel name and device. use av_make_error_string(ret).c_str() to reduce code and increase consistency 2019-06-25 15:34:01 -04:00
Isaac Connor cf7f3e8a88 add passing hwaccel name and device. use av_make_error_string(ret).c_str() to reduce code and increase consistency 2019-06-25 15:33:54 -04:00
Isaac Connor 6a87d9a875 change zm_receive_frame to return AVERROR instead of boolean 2019-06-25 15:32:47 -04:00
Isaac Connor 2cbcaeebbc clean out old hwdecode stuff. refactor common code out 2019-06-25 14:11:59 -04:00
Isaac Connor bfb7238edb Merge branch 'master' into hwdecode 2019-06-25 09:09:57 -04:00
Isaac Connor c3135accbb Make events close on a section length time boundary only if event_close_mode == CLOSE_TIME. When an alarm happens in event_close_mode==ALARM, close the continuous event regardless of the # of pre-event frames in the event. Add some debugging 2019-06-24 21:11:52 -04:00
Isaac Connor 246b4cb9d1 working hwdecode 2019-06-24 17:22:59 -04:00
Isaac Connor 2d80283844 simplify some logic in Analyze and prevent segfault when we close continuous event to start alarm event 2019-06-24 13:13:46 -04:00
Isaac Connor 9a353d0b6d don't set frame size 2019-06-24 11:44:21 -04:00
Isaac Connor 44e4d93445 Merge branch 'master' into storageareas 2019-06-24 11:35:36 -04:00
Isaac Connor 6ed0074077
End continuous events on alarm (#2644)
* Reference /run/zm instead of /var/run/zm because systemd-tmpfiles complains about it

* Spacing, google code style and tabs to spaces

* add update script to add MinSectionLength

* Add min_section_length to enforce a minimum event length when closing continuous events on alarm
2019-06-24 11:29:00 -04:00
Pliable Pixels 299f994506 Fix zmcrypt message (#2645)
* added more clarity on zm_crypt authentication errors

* fixed variable name
2019-06-24 11:28:32 -04:00
Isaac Connor dab9544845
Revert audio sync fixes (#2646)
* Reference /run/zm instead of /var/run/zm because systemd-tmpfiles complains about it

* Spacing, google code style and tabs to spaces

* Revert the work I did to srt packets by dts after changing their time_base.  It doesn't work.  Instead since dts doesn't actually matter to playback, only ffmpeg storing, munge it to whatever is neccessary to make ffmpeg happy.
2019-06-24 11:27:47 -04:00
Isaac Connor 9713d908fb Spacing, google code style and tabs to spaces 2019-06-24 10:28:11 -04: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 55d98e4a9f fix crash 2019-06-20 15:56:25 -04:00
Isaac Connor 470da03322 Merge sync fixes from storageareas 2019-06-20 15:14:20 -04:00
Isaac Connor f6960726b8 Don't check cause.length because we know it hasn't been used yet. check event_close_mode before closing the continuous unalarmed event 2019-06-20 15:12:32 -04:00
Isaac Connor 4c8b8d0c16 Only check pts vs dts if pts isn't AV_NOPTS_VALUE. Also set frame_size in output codec when doing passthrough 2019-06-20 15:09:30 -04:00
Isaac Connor 8b95ba8b3c it is ok for pts to be AV_NOPT_VALUE. It is not yet deprecated and doesn't mess anything up. 2019-06-20 15:08:38 -04:00
Isaac Connor 540a114c4b spacing google code style 2019-06-19 10:31:53 -04:00
Isaac Connor cc35e3f187 add dumpQueue to packetqueue to print out the contents 2019-06-19 09:51:06 -04:00
Isaac Connor 16b035f76c Use common first_dts/pts instead of separate video and audio first pts/dts 2019-06-19 09:22:21 -04:00
Isaac Connor 9727d0ed9f spaces 2019-06-19 09:22:21 -04:00
Isaac Connor 847cd9f347 Print out an error when a monitor is in MONITOR mode because we can't handle alarms. Allow signals to terminate zmu by checking zm_terminate. 2019-06-19 09:22:21 -04:00
Isaac Connor 33951ae584 Print out an error when a monitor is in MONITOR mode because we can't handle alarms. Allow signals to terminate zmu by checking zm_terminate. 2019-06-19 08:36:37 -04:00
Isaac Connor 695bdfc1c6 big ::Analyze logic cleanup. Also implement close continuous event before starting motion event in MOCORD 2019-06-13 15:48:41 -04:00
Isaac Connor b073505146 If either pts or dts is AV_NOPTS_VALUE then set equal to the other 2019-06-13 15:47:58 -04:00
Isaac Connor 30a210f68f also need to adjust dts of last packet when switching events 2019-06-12 10:05:08 -04:00
Isaac Connor 222f145230 Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2019-06-11 13:56:13 -04:00
Isaac Connor 0a9ae1d4f9 Include pixdesc.h to get av_get_pix_fmt_name(AVPixelFormat) 2019-06-11 13:55:57 -04:00
Isaac Connor acb95709e6 Fix issues with too much audio in events by storing packets in the queue with their timestamps converted to AV_TIME_BASE_Q, so that we can sort video and audio packets together. 2019-06-11 10:19:42 -04:00
Isaac Connor ee80b086af log the # of db entries being written before doing the writing so that we know the # being written 2019-06-10 14:13:21 -04:00
Isaac Connor 50436c5ea1 Correct debug line listing how many frames are being written to db 2019-06-10 13:59:01 -04:00
Isaac Connor ebc9a77c9d When saving jpegs, do a db write on the first frame. Fix test for writing frame info to db. Because we increment frames, it is essentially 1-based. So the test needs to be ==1 instead of ! 2019-06-10 12:57:57 -04:00
Isaac Connor a16d29740c Fix final frame of event having same id as the second last 2019-06-06 13:49:01 -04:00
Isaac Connor 4b8a2a94e3 reduce frame send time too slow to a warning instead of error 2019-06-05 10:12:56 -04:00
Gleb Popov 1d132b5923 When writing MP4 sample, save buffer.size() into a temporary variable before calling buffer.extract(). (#2628) 2019-06-01 16:43:29 -04:00
Isaac Connor 7b06f58559 Limit Connection error logs to every 10 minutes instead of every 10 seconds. Connection attempts still happen at 10 second intervals 2019-05-27 17:16:23 -04:00
Isaac Connor 049b70a624 junk bad code in zm_eventstream that tried to figure out how long to sleep by considering the wall clock time since play start. No good as soon as we seek. 2019-05-27 17:15:46 -04:00
Isaac Connor c44967f770 fix push to push_front 2019-05-27 12:47:38 -04:00
Isaac Connor 663f941963 If we can't find a packet before ours in the queue, then stick it at the front of the queue, not the end. 2019-05-27 12:31:18 -04:00
Isaac Connor 8b4fddadfb out_frame->pts is calculated in resample_audio 2019-05-27 12:29:29 -04:00
Isaac Connor 67b8ca8bfb Fix superfast playback after replay 2019-05-24 13:45:48 -04:00
Isaac Connor 0a8b7c24db don't check for alarmed zones to record stats for unless we are alarmed 2019-05-24 10:52:31 -04:00
Isaac Connor 93aeceecfc Merge branch 'crypt-replacement' of https://github.com/pliablepixels/ZoneMinder into pliablepixels-crypt-replacement 2019-05-17 10:18:15 -04:00
Isaac Connor 3888d140a8 Merge branch 'master' into storageareas 2019-05-17 10:16:29 -04:00
Pliable Pixels 06eb9a3bb2 merge typo 2019-05-16 16:15:16 -04:00
Pliable Pixels 915e9f05a9 merged fifo changes 2019-05-16 16:14:06 -04:00
Mitch Capper eb005e8b9c FIFO support for zoneminder zone debugging (#2594)
Adds fifo options for diagnostic images for much lower impact diagnostics mode.  Diagnostic images are only written when there is a client listening for them (otherwise they are skipped).  Also added a json stream for the detection data so you can see in real time the pixels or blobs detected for the motion.  This allows for easy real time stream of both delta and reference images (as video streams) along with the detection numbers.
2019-05-16 15:37:03 -04:00
Isaac Connor 4f44db8cbf
ifdef HAVE_ZLIB_H around code that uses Image->Zip (#2597) 2019-05-16 15:35:19 -04:00
Isaac Connor c257fb46f6 Merge branch 'storageareas' of github.com:connortechnology/zoneminder into storageareas 2019-05-13 10:34:45 -04:00
Isaac Connor 74095963cc Merge branch 'master' into storageareas 2019-05-12 19:39:09 -04:00
Pliable Pixels 21710b6e49 demote logs 2019-05-12 15:45:39 -04:00
Pliable Pixels cc0d23ce4e move token index after adding password 2019-05-12 15:01:49 -04:00
Pliable Pixels 9a8aa5453b add Password back so User object indexes don't change 2019-05-12 14:48:23 -04:00
Isaac Connor 22c5d46c65 rescale audio packet duration and pts before feeding to codec after resample 2019-05-12 12:14:03 -04:00
Isaac Connor d7daf8550f Merge branch 'master' into storageareas 2019-05-12 09:37:41 -04:00
Isaac Connor 453bc2afd8 more frame dumping in resample 2019-05-12 09:36:26 -04:00
Isaac Connor aada171440 clean up some logic in Analyse 2019-05-12 09:35:48 -04:00
Pliable Pixels 8499958767 typo 2019-05-12 05:57:17 -04:00
Pliable Pixels 225893fcd6 add mintokenexpiry to DB seek 2019-05-12 05:50:19 -04:00
Pliable Pixels 1f22c38453 more fixes 2019-05-12 05:10:20 -04:00
Pliable Pixels 6ab31dfe4b more fixes 2019-05-12 05:03:16 -04:00
Pliable Pixels 3e66be27a8 use strtoul for conversion 2019-05-11 16:09:42 -04:00
Pliable Pixels 053e57af62 use strtoul for conversion 2019-05-11 16:01:05 -04:00
Pliable Pixels 96fa6149a8 use strtoul for conversion 2019-05-11 15:58:07 -04:00
Pliable Pixels ae14be916c initial plumbing to introduce token expiry and API bans per user 2019-05-11 13:39:40 -04:00
Isaac Connor 67c20aa976 fix frame->duration to frame->pkt_duration 2019-05-10 12:58:54 -04:00
Isaac Connor d3a680aaa3 Set out_frame duration when resampling. Better error message if failed to write to fifo 2019-05-10 12:31:10 -04:00
Pliable Pixels 8461852e27 move out sha header 2019-05-08 19:32:58 -04:00
Pliable Pixels 0bb5ff934e move sha headers out 2019-05-08 19:17:31 -04:00
Pliable Pixels 4ab0c35962 move JWT/Bcrypt inside zm_crypt 2019-05-08 16:45:28 -04:00
Pliable Pixels 2212244882 fix absolute path 2019-05-08 15:47:38 -04:00
Pliable Pixels c41a2d067c fixed type conversion 2019-05-08 14:29:44 -04:00
Pliable Pixels bc050fe330 support refresh tokens as well for increased security 2019-05-08 13:38:42 -04:00
Pliable Pixels 27e6e46f84 remove allowing auth_hash_ip for token 2019-05-08 12:11:32 -04:00
Pliable Pixels 3c6d0131ff fix db read, forgot to exec query 2019-05-08 12:06:37 -04:00
Pliable Pixels 04c3bebef9 exception handling for try/catch 2019-05-08 11:44:15 -04:00
Pliable Pixels 3a67217972 move decode inside try/catch 2019-05-08 11:29:34 -04:00
Pliable Pixels bb18c305ab add token to command line for zmu 2019-05-08 11:08:27 -04:00
Pliable Pixels b293592e4c added token validation to zms/zmu/zmuser 2019-05-08 10:55:32 -04:00
Isaac Connor 4c8a29e8d3 Merge branch 'storageareas' of github.com:connortechnology/ZoneMinder into storageareas 2019-05-08 06:06:28 -04:00
Isaac Connor 3a7b49560a spacing 2019-05-06 12:16:06 -04:00
Isaac Connor 9469ce8c71 Merge branch 'section_length_when_modect' into storageareas 2019-05-06 10:50:41 -04:00
Isaac Connor 9ef912f2ba add missing new event status info 2019-05-06 10:50:12 -04:00
Pliable Pixels 4c8d20db64 typo 2019-05-04 15:27:00 -04:00
Pliable Pixels 983e050fd7 fixed SHA1 algo 2019-05-04 15:20:31 -04:00
Pliable Pixels d952fe7117 Moved to openSSL SHA1, initial JWT plugin 2019-05-04 11:52:53 -04:00
Isaac Connor 50070a9a7c Merge branch 'storageareas' of github.com:connortechnology/ZoneMinder into storageareas 2019-05-03 14:59:14 -04:00
Isaac Connor 1e08b333b4 choose cur_dts instead of 0 for dts 2019-05-03 14:59:09 -04:00
Isaac Connor 4ecf41f2b4 Merge branch 'sort_packets' into storageareas 2019-05-03 14:58:34 -04:00
Isaac Connor c91da4a7f5 if no packet found, still append to end 2019-05-03 14:58:29 -04:00
Isaac Connor 21999cf943 Merge branch 'sort_packets' into storageareas 2019-05-03 13:48:23 -04:00
Isaac Connor aec8311deb implement sorting incoming packets in the packetqueue 2019-05-03 13:48:05 -04:00
Pliable Pixels ca2e7ea97c logs tweak 2019-05-03 12:01:13 -04:00
Pliable Pixels 72325d12b7 move to wrapper 2019-05-03 11:40:35 -04:00
Isaac Connor 63a970d49f Merge branch 'fix_no_zlib' into storageareas 2019-05-03 09:42:06 -04:00
Isaac Connor aaf4665909 Merge branch 'section_length_when_modect' into storageareas 2019-05-03 09:41:41 -04:00
Isaac Connor f6b6daafab close and reopen event when we hit section_length 2019-05-03 09:41:29 -04:00
Isaac Connor fee95c2316 ifdef HAVE_ZLIB_H around code that uses Image->Zip 2019-05-03 09:04:31 -04:00
Pliable Pixels 45b7814124 absolute path 2019-05-01 14:33:36 -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 ca24b504d4 fixed typo 2019-05-01 13:46:54 -04:00
Pliable Pixels 8bbddadc12 put link_dir ahead of add_executable 2019-05-01 13:43:41 -04:00
Pliable Pixels 07be830f94 added bcrypt to others 2019-05-01 13:35:18 -04:00
Pliable Pixels dd63fe86ce add sha source 2019-05-01 13:28:39 -04:00
Pliable Pixels ddb7752226 added include path 2019-05-01 13:24:50 -04:00
Pliable Pixels 1ba1bf0c45 added test sha1 and bcrypt code to validate working 2019-05-01 13:18:51 -04:00
Pliable Pixels c4b1bc19e0 added bcrypt and sha to src build process 2019-05-01 13:15:07 -04:00
Isaac Connor 25614bb75e Merge branch 'master' into storageareas 2019-05-01 08:57:20 -04:00
Isaac Connor 847d4c5e80 Merge branch 'master' of github.com:/ZoneMinder/ZoneMinder 2019-04-29 12:50:31 -04:00
Isaac Connor 28269eccc3 Fix Remote RTSP Method on newer ffmpeg 2019-04-28 12:05:32 -04:00
Isaac Connor 626342f00e Merge branch 'master' into storageareas 2019-04-26 10:44:00 -04:00
Isaac Connor c4fb2cc407 Merge branch 'master' of github.com:ZoneMinder/zoneminder 2019-04-25 18:45:54 -04:00
Isaac Connor 18285e1b94 fix using in_frame->nb_samples instead of out_frame->nb_samples in resample fifo. 2019-04-25 18:45:43 -04:00
Pliable Pixels ea7c38ceff Alarm cause fix (#2582)
* move alarm cause code to when the alarm flag is set

* formatting

* added temp info log

* char* not string in log

* merged alarm clause into info message about alarm

* add a comma only if there are more active zones

* JB tweak to slightly optimize leading comma processing
2019-04-24 13:55:57 -04:00
Isaac Connor eb76cd87bb
Revert "Alarm cause fix (#2580)" (#2581)
This reverts commit 6923382485.
2019-04-17 13:53:11 -04:00
Pliable Pixels 6923382485 Alarm cause fix (#2580)
* move alarm cause code to when the alarm flag is set

* formatting

* added temp info log

* char* not string in log
2019-04-17 13:33:38 -04:00
Isaac Connor 70ed4a4646 Must unlock mutex before destructor as we do some logging in the mutex destructor when we destroy it while locked. 2019-04-16 11:51:10 -04:00
Isaac Connor 22adb243ec Fix crash when reporting an event longer than section length when event was just closed so event is null. 2019-04-16 11:50:41 -04:00
Isaac Connor 2ff1e7ed6d Fix crash when reporting an event longer than section length when event was just closed so event is null. 2019-04-16 11:30:18 -04:00
Isaac Connor 98a9c68b8b spacing and code documentation 2019-04-15 17:54:30 -04:00
Isaac Connor 293ec20824 Must unlock mutex before destructor as we do some logging in the mutex destructor when we destroy it while locked. 2019-04-15 17:54:17 -04:00
Isaac Connor 3664084862 Handle out of order dts in writeAudioFrame 2019-04-15 13:27:13 -04:00
Isaac Connor f28af7b729 store diag_path in the object and initialize them in constructor instead of constantly checking to see if they have been initialized in DetectMotion. Also use a string instead of a static char[MAX_PATH]. Also split it into diag_path_r and diag_path_d to fix the bug that only diag_path_r would ever get created and would be overwritten by the delta image. 2019-04-15 13:26:55 -04:00
Isaac Connor 93f0a03d8b spacing and code comments 2019-04-15 12:55:28 -04:00
Isaac Connor 7c8b37e08c fix mutex hang on Fatal 2019-04-15 11:21:23 -04:00
Isaac Connor 439a7b3ab3 Don't set bitrate, etc when h264. Causing crashes in ffmpeg 4.11. 2019-04-14 13:50:10 -04:00
Isaac Connor 69f812f5cc force section end when seconds % section_length == 0 which is the old behaviour. 2019-04-09 19:42:24 -04:00
Isaac Connor 7671f59d2f Add error counting on decoding 2019-04-09 12:27:40 -04:00
Isaac Connor fab548b119 Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2019-04-08 16:46:28 -04:00
Isaac Connor 1b98f3529f allow non-increasing dts in muxer 2019-04-08 14:18:59 -04:00
Isaac Connor 7f2440177b remove duplicate dump_codec 2019-04-08 13:51:55 -04:00
Isaac Connor accaeadb18 code cleanup. dump_codecs 2019-04-08 13:51:41 -04:00
Isaac Connor e81c216b4a add more fields in dump_codec. 2019-04-08 13:51:13 -04:00
Isaac Connor 3c57d79669 Go back to using video_first_dts 2019-04-08 10:04:26 -04:00
Isaac Connor f719dd9acc always commit buffered db_frames when we have a new max score image or alarm cause image 2019-04-07 10:29:02 -04:00
Isaac Connor 9faaba9300 Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2019-04-05 15:18:39 -04:00
Isaac Connor 9ae6acf532 Fix for opening audio_in_codec 2019-04-04 17:20:21 -04:00
Isaac Connor d97dd6cdd9 Should close videostore before closing input codecs/streams. 2019-04-04 14:11:56 -04:00
Isaac Connor 7955a1c9b2 fix version check to get rid of deprecated av_register_all 2019-04-04 12:56:00 -04:00
Isaac Connor bc62493096 Increase sql buffer space because we are using path strings that are PATH_MAX size. 2019-04-04 12:55:35 -04:00
Isaac Connor f6d5038586 we only use event_file if we are writing out a jpg, so only generate the event_file string if we are writing out jpgs 2019-04-04 12:37:25 -04:00
Isaac Connor 271937f005 store the snapshot_file and alarm_file strings in the boject during construction so that we don't have to do it everytime we write out an image 2019-04-04 12:28:08 -04:00
Isaac Connor f3d0c4e643 Merge branch 'master' of github.com:zoneminder/ZoneMinder 2019-04-04 09:37:13 -04:00
Isaac Connor 8de7d576a5 spacing and use Error instead of fprintf(stderr) so that things get logged. 2019-04-04 09:35:37 -04:00
Isaac Connor 8d3fa807e2 compilation fixes for old ffmpeg 2019-04-03 16:51:41 -04:00
Isaac Connor 12631abd46 when copying a packet (for old ffmpeg) copy pts, dts and duration too 2019-04-03 16:51:27 -04:00
Isaac Connor 94479fc850 copy pkt flags as well. When pts is NOPTS_VALUE set it to zero 2019-04-03 16:03:21 -04:00
Isaac Connor 055efdc950 Merge branch 'master' of github.com:ConnorTechnology/ZoneMinder 2019-04-03 14:56:18 -04:00
Isaac Connor bd9b5afe46 old ffmpeg doesn't have av_frame_unref and it doesn't seem to be needed 2019-04-03 14:56:14 -04:00
Isaac Connor 2e7fd7c9a2 handle really old ffmpeg not having pkt_duration 2019-04-03 14:55:29 -04:00
Isaac Connor b53e4aa803 fix segfault 2019-04-03 14:51:10 -04:00
Isaac Connor b6f35db4de put back codec closing in destructure, testing with bionic 2019-04-03 14:25:18 -04:00
Isaac Connor aece64049f We cannot avcodec_open2 a context that has been duped. This code currently works without crashes and leaks on ffmpeg 2.8 2019-04-03 13:23:00 -04:00
Isaac Connor f78e95f5d4 add is_video_context and is_audio_context and use them in zm_revceive_frame to add audio decoding support 2019-04-03 13:21:52 -04:00
Isaac Connor bd412fa9ca Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2019-04-02 14:25:50 -04:00
Isaac Connor 036560e3e9 Allow packets with pts=AV_NOPTS_VALUE 2019-04-02 14:23:49 -04:00
Isaac Connor cd28559c03 when encoding audio, pts and dts have to come from the encoder. 2019-04-02 14:08:46 -04:00
Isaac Connor 87cb716500 Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2019-04-01 14:02:46 -04:00
Isaac Connor cb33318c4a fix invalid memory access due to incorrect opening/closing/copying of contexts 2019-04-01 14:02:39 -04:00
Isaac Connor a6998cbc9e Use FFMPEGDeInit instead of avformat_network_deinit 2019-04-01 13:39:11 -04:00
Isaac Connor c9985107ee Add a deinit function to handle avformat_network_deinit 2019-04-01 13:38:13 -04:00
Isaac Connor ed5a448a1d Correct pts on audio frame before sending it to the encoder so that when we flush the encoder the resulting packets have the right pts. 2019-04-01 11:13:14 -04:00
Isaac Connor 90e97ff135 Merge branch 'master' into storageareas 2019-03-28 11:20:29 -04:00
Isaac Connor e6547953b0 fix segfault using old ffmpeg 2019-03-28 09:24:32 -04:00
Isaac Connor acb9070b04 Add a warning when an event exceeds section length 2019-03-25 12:33:30 -04:00
Isaac Connor 5615cafc19 fix compile on old ffmpeg 2019-03-21 17:50:17 -04:00
Isaac Connor c159dd8d10 cleanup and fix code that assumed H264 2019-03-21 14:13:56 -04:00
Isaac Connor c791f136da Merge branch 'storageareas' of github.com:ConnorTechnology/ZoneMinder into storageareas 2019-03-21 10:43:54 -04:00
Isaac Connor a30c4d9551 rework ffmpeg_input to not use pkt_duration which doesn't exist in avconv 2019-03-21 10:41:59 -04:00
Isaac Connor fcb9f76561 Fix out_frame->pts being nothing because we freed in_frame 2019-03-20 16:06:55 -04:00
Isaac Connor 05976b3227 Add pts to zm_dump_frame 2019-03-20 16:06:31 -04:00
Isaac Connor 3931baa2b6 fix build on old ffmpeg 2019-03-20 10:21:43 -04:00
Isaac Connor a437c407a7 fix video_out_ctx init so that ffmpeg doesn't complain 2019-03-19 13:17:26 -04:00
Isaac Connor f89654f442 Merge branch 'storageareas' of github.com:ConnorTechnology/ZoneMinder into storageareas 2019-03-19 10:50:05 -04:00
Isaac Connor 520c41da23 Merge ../ZoneMinder.connortechnology.bad into storageareas 2019-03-18 14:40:03 -04:00
Isaac Connor b794c2ca20 fix crash by checking username without checking if it is NULL 2019-03-18 12:01:51 -04:00
Isaac Connor dde911d16a add more debug about command queue 2019-03-18 10:55:21 -04:00
Isaac Connor 8417230690 debug where the comms sock is 2019-03-18 10:55:08 -04:00
Isaac Connor 9b713a489d fix sleep time by using a comparison between the frame display time and the distance between now and when we started playing.
handle infinite fps
2019-03-06 14:50:36 -05:00
Isaac Connor 6c8eac1ac8 Merge branch 'storageareas' into h265 2019-03-06 11:10:01 -05:00
Isaac Connor abfb5642c8 cleanup and document updateFrameRate 2019-03-06 09:46:28 -05:00
Isaac Connor 24665264a2 Merge branch 'storageareas' of github.com:/ConnorTechnology/ZoneMinder into storageareas 2019-03-05 20:16:05 -05:00
Isaac Connor 73ae3f49ed Merge branch 'master' into storageareas 2019-03-05 11:35:55 -05:00
Isaac Connor b1838de701 test turning off frag_custom 2019-03-05 11:35:16 -05:00
rpdrewes 0bf001be3c Fix for file and curl camera sources (#2545) 2019-03-05 09:59:36 -05:00
Isaac Connor 778707c8df Merge branch 'master' into storageareas 2019-03-04 14:33:28 -05:00
Isaac Connor 903f5af1ef invalid parameters should be a debug not a warning 2019-03-04 13:35:36 -05:00
Isaac Connor 95567e07a4 Merge branch 'storageareas' of github.com:/ConnorTechnology/ZoneMinder into storageareas 2019-02-26 11:43:07 -05:00
Isaac Connor a38fcf5297 Add debug and use alternate way of figuring out how long to sleep to maintain fps 2019-02-26 11:41:02 -05:00
Isaac Connor f7dd1b049d Merge branch 'master' into storageareas 2019-02-26 10:16:11 -05:00
Isaac Connor 705468dfc4 if we don't have a connkey, comms will not be open so don't touch the sock file or call checkCommandQueue 2019-02-26 10:08:07 -05:00
Isaac Connor fd310c0f0a Merge branch 'master' into storageareas 2019-02-22 11:33:47 -05:00
Isaac Connor 443fd35d99
Fix imagesize requirements (#2404)
* introduce non-loop-unrolled version of function and use them when the image size is not a multiple of 12 or 16

* Remove tests for imagesize being a multiple of 16 or 12 to handle functions with unrolled loops

* Use non-unrolled functions when image size is not a multiple of 12 or 16

* use std_blend when image is odd size
2019-02-22 09:44:57 -05:00
Isaac Connor c626b0fb8e if adding a closing frame, queue it with the rest of the frames so they get written all at once. Queue 20 frames instead of 10 2019-02-19 12:00:17 -05:00
Isaac Connor 5029d7214a Merge branch 'master' into storageareas 2019-02-18 17:00:45 -05:00
Isaac Connor 9996b3e718 Merge branch 'master' into break_videostorage 2019-02-17 12:10:32 -05:00
Isaac Connor baba438ce1 use image_count when reporting earlier than fps_report_interval 2019-02-16 11:49:28 -05:00
Isaac Connor 9656032906 spacing 2019-02-15 17:52:51 -05:00
Isaac Connor 96906734b8 add an audio_fifo to handle input audio < 1024 samples per frame 2019-02-15 17:26:30 -05:00
Isaac Connor 6156aa2af9 Merge branch 'storageareas' of github.com:/ConnorTechnology/ZoneMinder into storageareas 2019-02-15 10:49:06 -05:00
Isaac Connor 4e463c9354 use swr_convert_frame instead of swr_convert 2019-02-14 17:48:58 -05:00
Isaac Connor 281775cc80 try setting out_frame pts from in_frame 2019-02-14 15:54:47 -05:00
Isaac Connor 9e07d5cd17 try setting out_frame pts from in_frame 2019-02-14 15:54:00 -05:00
Isaac Connor a11349bffe Merge branch 'storageareas' of github.com:ConnorTechnology/ZoneMinder into storageareas 2019-02-13 11:38:44 -05:00
Isaac Connor a41e8a8834 Merge branch 'master' into storageareas 2019-02-13 11:38:38 -05:00
Isaac Connor 31a11a6992 init log earlier in zms 2019-02-13 11:34:47 -05:00
Isaac Connor 78b97303a3 Merge branch 'storageareas' of github.com:/ConnorTechnology/ZoneMinder into storageareas 2019-02-13 11:32:40 -05:00
Isaac Connor 2563951c1f comment out the signal blocking. I still can't figure out why we would want it 2019-02-13 11:32:34 -05:00
Isaac Connor 42011e96e6 Merge branch 'storageareas' of github.com:/connortechnology/ZoneMinder into storageareas 2019-02-13 11:29:12 -05:00
Isaac Connor 1aad1f765d slep for 1 second if there is an error in capturing 2019-02-13 11:28:18 -05:00
Steve Gilvarry 924d5235d0 Validate zmu Username and Password lengths (#2484)
* Validate zmu Username and Password lengths
Ensure user provided values are not larger than allowed and error if
they are, therefore further preventing overflow.

* Check username and password functions for zmu and zms

* Check username and password functions for zmu and zms
2019-02-13 10:40:43 -05:00
Isaac Connor 060751602b fix missing ; 2019-02-13 10:34:09 -05:00
Isaac Connor d1b3b23c09 Merge branch 'master' into storageareas 2019-02-13 09:42:03 -05:00
Isaac Connor 0bfaf87d27 Mostly code style and whitespacing. However, I do setup more values in the output frame when doing audio resampling 2019-02-12 16:40:27 -05:00
Isaac Connor 3177764db4 spacing 2019-02-12 14:20:33 -05:00
Isaac Connor ed6b22ac06 spacing 2019-02-11 16:29:36 -05:00
Isaac Connor d33e094526 Merge branch 'master' into storageareas 2019-02-06 17:03:41 -05:00
Isaac Connor e90f49deb9 Merge branch 'storageareas' of github.com:ConnorTechnology/ZoneMinder into storageareas 2019-01-30 15:17:32 -05:00
Isaac Connor 533d021dea Merge branch 'master' into storageareas 2019-01-30 15:17:27 -05:00
Isaac Connor 6d7660cdbd Now that we are dynamically allocating safer_username and safer_password, need to free them. Also, don't strlen them multiple times for efficiency 2019-01-25 08:46:40 -05:00
Steve Gilvarry a81e7c5221 Safer_username and safer_login should be based on the username and login (#2482)
(lengths * 2)+1. Control input lengths at user input
2019-01-25 08:33:30 -05:00
Isaac Connor ad69915e4a fix build on libav 9, ubuntu trusty 2019-01-22 13:30:40 -05:00
Isaac Connor 7260f823cb Merge branch 'master' into storageareas 2019-01-21 13:52:38 -05:00
Isaac Connor a81428f701 add a test for a 0 fps passed in to updateFrameRate which would cause an infinite loop. Fixes #2427 2019-01-21 13:30:00 -05:00
Isaac Connor 189e78b42d add comments and a test for zm_terminate in the checkCommandQueue while loop 2019-01-21 13:29:20 -05:00
Isaac Connor 83a652aade add comments and a test for zm_terminate in the checkCommandQueue while loop 2019-01-21 13:29:14 -05:00
Isaac Connor 9f588d5758 prevent returning infinity from GetFPS 2019-01-21 13:00:10 -05:00
Isaac Connor a39b92154c wip 2019-01-17 08:49:48 -05:00
Isaac Connor 87d1390fed Merge branch 'storageareas' into h265 2019-01-16 15:20:17 -05:00
Isaac Connor f49dd93b6a Merge branch 'master' into storageareas 2019-01-16 14:39:56 -05:00
Isaac Connor 2b21fe3640 increase sql var size to MED to hold the largest possible sql string. 2019-01-16 11:48:31 -05:00
Isaac Connor 3560d6247f whitespace and comments. 2019-01-16 11:20:10 -05:00
Isaac Connor 345e2fef0f start only used in eventstream 2019-01-15 16:44:58 -05:00
Isaac Connor 92066aaf4f add stream start timeval 2019-01-15 16:33:27 -05:00
Isaac Connor 34224a957b cleanup error string 2019-01-15 11:36:13 -05:00
Isaac Connor 5f6bcec4ca Use start_pts instead of start_dts when calculating output pkt.dts. Because start_dts is often lower than start_pts, we can get into a situation where we calculate a dts that is > pts. 2019-01-15 11:35:37 -05:00
Isaac Connor d068d019fb turn section_length into seconds instead of frames 2019-01-15 11:34:17 -05:00
Isaac Connor 8c53f778b6 Start and stop events not just on keyframe. This means we must always queue packets 2019-01-15 11:32:44 -05:00
Isaac Connor 6608cb4e35 use frame delta to determine how much to sleep 2019-01-15 11:25:22 -05:00
Isaac Connor 84c812725e spacing, improve debug. WHen looking for starting keyframe in packetqueue, use <= instead of <. 2019-01-14 14:00:45 -05:00
Isaac Connor f726666f54 Merge branch 'master' into h265 2019-01-14 12:36:11 -05:00
Isaac Connor 9f8be169f9 set channels and sample rate in output frame. Use new zm_dump_frame() 2019-01-14 10:48:29 -05:00
Isaac Connor a46b443d4a create zm_dump_frame to print out useful frame info. 2019-01-14 10:48:06 -05:00
Isaac Connor d0cca01c4c setup url instead of filename in the AVFormatContext to satisfy filename being deprecated 2019-01-14 10:47:53 -05:00
Isaac Connor c97eb16942 create zm_dump_frame to print out useful frame info. 2019-01-14 10:47:22 -05:00
Isaac Connor fc7403fe3d Merge branch 'master' into storageareas 2019-01-13 14:53:34 -05:00
Isaac Connor 730ced60d8 specify which input we are setting standard on. Not sure it is required, but the api docs do it 2019-01-10 12:08:51 -05:00
Isaac Connor 4a82f460b2 add some parenthesis to make logic at more clear if not more correct. Potentially fix #2405 2019-01-09 16:39:53 -05:00
Andrew Bauer 9811679cc0
Merge pull request #2401 from connortechnology/vlc_logging
add a logging callback to the libvlc camera
2019-01-08 13:49:51 -06:00
Isaac Connor a5de51478e The termination callback should be private 2019-01-08 13:12:22 -05:00
Isaac Connor ae1f00f2a1 add a logging callback to the libvlc camera 2019-01-08 13:06:19 -05:00
Isaac Connor c4c6d5b642 switch to swr_convert_frame as a test 2019-01-05 10:15:22 -05:00
Isaac Connor 5060358870 Merge branch 'master' into storageareas 2018-12-29 09:56:53 -05:00
Isaac Connor 751c312609 fix non-ascii char 2018-12-29 09:56:33 -05:00
Andrew Bauer 3258d8e590 remove ZM_DIR_IMAGES (#2374) 2018-12-29 09:52:58 -05:00
Isaac Connor 3d9c8814f9 increase error_count logging 2018-12-27 13:52:41 -05:00
Isaac Connor 3e06bbcef8 Merge branch 'master' into storageareas 2018-12-27 13:50:29 -05:00
Isaac Connor 32c88a3a41 Update status as well as fps when updating fps 2018-12-27 13:50:17 -05:00
Isaac Connor db6d943854 If failure in connect, close the fd before returning 2018-12-27 11:53:21 -05:00
Isaac Connor b87ae53a83 merge debug lines and correct spacing 2018-12-27 11:50:43 -05:00
Isaac Connor 55e0d82f20 spacing 2018-12-24 11:30:22 -05:00
Andrew Bauer 6eb7892fc7
Merge pull request #2357 from connortechnology/libswresample
Implement libswresample support as an alternative to libavresample, w…
2018-12-20 16:44:06 -06:00
Isaac Connor 7a8beffdcc Merge branch 'master' into storageareas 2018-12-20 15:10:52 -05:00
Isaac Connor 48865f124b cap AAC bitrate at 96000 to prevent the aac encoder from complaining 2018-12-20 15:10:04 -05:00
Isaac Connor e626049f6b Merge branch 'swresample' into storageareas 2018-12-20 14:08:40 -05:00
Isaac Connor 6ee72aa2d9 Implement libswresample support as an alternative to libavresample, which is deprecated 2018-12-20 14:06:56 -05:00
Isaac Connor 8b239752ae Merge branch 'master' into swresample 2018-12-20 13:48:37 -05:00
Isaac Connor 1d371b7a17 Fix small memleak of linked_monitors not getting freed on Monitor destruction. Fix unlocking db mutex before logging 2018-12-20 13:41:57 -05:00
Isaac Connor 62ce3c1f65 Implement libswresample in place of libavresample which is deprecated 2018-12-20 13:38:11 -05:00
Isaac Connor 19e4ef99bc add get_fps to Monitor and use it to adjust the # of frames to cache before writing to db 2018-12-16 16:22:25 -05:00
Isaac Connor 3a068ae6a3 Merge branch 'master' into swresample 2018-12-16 16:15:28 -05:00
Isaac Connor 89c9a28614 Merge branch 'master' into storageareas 2018-12-14 12:25:06 -05:00
Isaac Connor ad4f131284 Must unlock before logging 2018-12-14 12:22:10 -05:00
Isaac Connor 0bfe1007c8 Merge branch 'master' into storageareas 2018-12-14 10:16:08 -05:00
Isaac Connor 1a05e777c0 fix path not being constructed properly for shallow event storage 2018-12-14 08:54:29 -05:00
Isaac Connor 83e74aec55 Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2018-12-14 08:40:45 -05:00
Isaac Connor 70388753ea COmment out logging in signal handlers. Logging is too complex. 2018-12-14 08:40:32 -05:00
Isaac Connor e9ae2e6968 COmment out logging in signal handlers. Logging is too complex. 2018-12-14 08:39:55 -05:00
Pliable Pixels ebaafef607 Ffmpeg logs optional (#2345)
* make ffmpeg logs configurable via web

* fix Info
2018-12-14 08:01:23 -05:00
Isaac Connor a1e9058729 adjust ffmpeg logging levels 2018-12-13 16:19:55 -05:00
Isaac Connor 0784a8a5a1 reduce ffmpeg log levels from error to warning and warning to info. Ffmpeg outputs a lot of errors that don't significantly affect video recording. 2018-12-13 10:27:44 -05:00
Andrew Bauer 22460f580b
Merge pull request #2305 from pliablepixels/save-first-alarm
Save first alarm
2018-12-11 09:35:40 -06:00
Andrew Bauer b563968ce2
Merge pull request #2321 from connortechnology/av_logging
Av logging
2018-12-11 09:30:08 -06:00
Andrew Bauer db81465fa2 allow one to set manpage destination 2018-12-07 09:47:00 -06:00
Isaac Connor 51fcede45c Merge branch 'batch_frame_records' into storageareas 2018-12-05 13:18:35 -05:00
Isaac Connor ab9081e1bf create a simple Frame class. Add a queue of Frames to the Event. When we get 10 of them write them out to the db. 2018-12-05 13:18:21 -05:00
Isaac Connor bc5f8d0d8d rework pts/dts of audio stream. Spacing. Fix crash 2018-12-04 18:23:08 -05:00
Isaac Connor 23124d634c improve ImageBufferCount too small message 2018-12-03 11:02:45 -05:00
Isaac Connor d837b42836 fix ffmpeg warnings. We have to copy parameters from the context to the stream AFTER we open the codec 2018-12-03 10:33:53 -05:00
Isaac Connor ddd2e24dcb fix ffmpeg warnings. We have to copy parameters from the context to the stream AFTER we open the codec 2018-12-03 10:32:37 -05:00
Isaac Connor 0cf56f186c add frame_size to stream dump 2018-12-03 10:32:01 -05:00
Isaac Connor 4272225a17 Merge branch 'master' into h265 2018-11-30 16:42:16 -05:00
Isaac Connor e8622b68dc whitespace, delete dead code 2018-11-29 13:17:41 -05:00
Isaac Connor 9cbc3352b9 Implement an error count. Return -1 when it gets over 100 so that the camera will be reopened. 2018-11-29 13:09:29 -05:00
Isaac Connor af501128f2 fix invalid use of %s. Pass the buffer as the format string instead of a ... param 2018-11-29 10:54:01 -05:00
Isaac Connor d4acc9e205 Merge branch 'storageareas' of github.com:/connortechnology/ZoneMinder into storageareas 2018-11-29 10:24:58 -05:00
Isaac Connor 4625f7c879 Merge branch 'master' into storageareas 2018-11-28 10:46:49 -05:00
Isaac Connor 8404f0ef64 When forcing an alarm, print out the event id 2018-11-26 16:21:32 -05:00
Isaac Connor 251ccc0ba9 remove extra () 2018-11-26 16:20:52 -05:00
Isaac Connor 1273cb863c send logPrint a pre-formatted string 2018-11-23 13:04:46 -05:00
Isaac Connor 817a760559 send logPrint a pre-formatted string 2018-11-23 13:04:20 -05:00
Isaac Connor c89bb8bc16 Merge branch 'av_logging' into storageareas 2018-11-23 12:46:27 -05:00
Isaac Connor 522ecaddd8 remove extra include unistd.h and we have to pre-define RecursiveMutex because we use it in zm_logger. 2018-11-23 12:46:10 -05:00
Isaac Connor 4d4666f5e0 add a mutex in logging functions so that multiple threads can log at the same time 2018-11-23 12:45:41 -05:00
Isaac Connor 61759a1f2d older libavcodecs don't have AV_LOG_TRACE AND AV_LOG_MAX_OFFSET 2018-11-23 12:45:21 -05:00
Isaac Connor af8626158d zm_exception doesn't use anything from zm.h so don't include it 2018-11-23 12:44:54 -05:00
Isaac Connor 48564da915 zm_config.h shouldn't include zm.h. zm.h includs zm_config.h 2018-11-23 12:44:34 -05:00
Isaac Connor 5ad753b6b4 zm_comms uses logging functions, so include zm_logger.h 2018-11-23 12:44:10 -05:00
Isaac Connor 9241c26f2f Move PATH_MAX to zm_config where all the other defines are 2018-11-23 12:43:51 -05:00
Isaac Connor dea5db9dd9 Merge branch 'zmaudit_check_other_storageareas' into storageareas 2018-11-23 11:11:39 -05:00
Isaac Connor b291c06035 Working zms h265 playing. 2018-11-19 16:45:56 -05:00
Isaac Connor 62e511cfd1 Merge branch 'master' into h265 2018-11-17 10:41:20 -05:00
Isaac Connor 87140ecdb5 white space and quiet warning 2018-11-17 10:39:42 -05:00
Isaac Connor e24a308481 Merge branch 'master' into h265 2018-11-14 17:15:37 -05:00
Isaac Connor 64ce035129 Merge branch 'av_logging' into storageareas 2018-11-14 17:03:32 -05:00
Isaac Connor 70d9fda758 Implement a logging callback for avcodec to use our logging functions 2018-11-14 17:02:52 -05:00
Isaac Connor 9d5772b517 Merge branch 'fix_multiserver_daemon_restarting' into storageareas 2018-11-14 13:02:30 -05:00
Isaac Connor 35b439629c Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2018-11-13 18:14:35 -05:00
Isaac Connor 5120c6f540 remove compile warning by assigning AV_CODEC_NONE to the codec_id. 2018-11-13 18:13:55 -05:00
Isaac Connor 73c52705f2 Merge branch 'fix_32bit_alignment' into storageareas 2018-11-13 14:22:06 -05:00
Isaac Connor e8ed1367d7 Merge branch 'master' into storageareas 2018-11-13 14:22:00 -05:00
Isaac Connor 31b0ed107d remove epadding2, to restore the 64bit alignment of startup_time. A proper fix instead of #2258 2018-11-13 14:02:44 -05:00
Pliable Pixels e06f5b0f90 removed static 2018-11-12 13:34:29 -05:00
Pliable Pixels 01a57222d3 keep track if we have written alarmed frame incase savejpeg is off 2018-11-12 12:43:20 -05:00
Isaac Connor a95a012fa5 fix #2302 2018-11-12 11:56:18 -05:00
Isaac Connor 230ce61dc4 fix #2296 by prepending bind with :: 2018-11-07 11:54:18 -05:00
Isaac Connor be0767b4cd Merge branch 'storageareas' of github.com:/connortechnology/ZoneMinder into storageareas 2018-11-06 15:27:17 -05:00
Isaac Connor 5a933a93c2 clean up static vars and google code style 2018-11-06 15:27:10 -05:00
Isaac Connor 6d6d25261f Merge branch 'zmrecover' into storageareas 2018-11-06 12:14:54 -05:00
Isaac Connor d973d55d2f Use SaveJPEGs from the Event record instead of the Monitor Object 2018-11-06 11:45:34 -05:00
Isaac Connor 09fab280ea SOCKS dir creation logs should be debug 2018-11-02 10:57:47 -04:00
Isaac Connor 17c091f9f9 Google code style and add a debug showing the # of addresses in hp 2018-11-02 10:26:39 -04:00
Isaac Connor 33235a19ba Merge branch 'storageareas' of github.com:/ConnorTechnology/ZoneMinder into storageareas 2018-10-28 15:11:32 -04:00
Isaac Connor 9e999294df Merge branch 'storageareas' of github.com:/ConnorTechnology/ZoneMinder into storageareas 2018-10-28 15:09:32 -04:00
Isaac Connor ed50856d40 Merge branch 'master' into storageareas 2018-10-24 13:45:54 -04:00
Isaac Connor bca2b30518 Add a test for channel layout and correct it if not set 2018-10-24 13:45:33 -04:00
Isaac Connor c48ce09068 Turn back on ffmpeg debug logging 2018-10-24 13:11:09 -04:00
Isaac Connor 15f89c4b50 Turn ffmpeg logging back on 2018-10-24 12:44:14 -04:00
Isaac Connor ca8770bd5a Merge branch 'fix_rce' into storageareas 2018-10-24 10:17:16 -04:00
Isaac Connor 0f14df64e2 google code style and whitespace 2018-10-22 10:41:27 -04:00
Isaac Connor a8329465fb Merge branch 'master' into h265 2018-10-22 10:30:01 -04:00
Isaac Connor 17726bbe38 Actually say how big the ImageBufferCOunt should be 2018-10-17 17:19:27 -04:00
Isaac Connor c2af380e29 Merge branch 'master' into storageareas 2018-10-16 11:39:26 -04:00
Isaac Connor 5fce783b65 Merge branch 'smarter_packetqueue' into storageareas 2018-10-15 11:34:05 -04:00
Isaac Connor 990c4b1b45 Add a warning when there are more videoframes in the packetqueue than image_buffers 2018-10-15 11:33:58 -04:00
Isaac Connor dae31d226b add GetImageBufferCount to monitor 2018-10-15 11:33:16 -04:00
Isaac Connor 33c903a644 properly initialize packet_counts 2018-10-15 11:13:10 -04:00
Isaac Connor 7149576a7c Merge branch 'smarter_packetqueue' into storageareas 2018-10-15 10:59:50 -04:00
Isaac Connor 45a1a1b1e8 Make packetqueue keep track of audio vs video packet counts. 2018-10-15 10:51:56 -04:00
Andrew Bauer ba10c431f7 check for __ARM_PCS_VFP instead of __armel__ 2018-10-12 09:34:16 -05:00
Andrew Bauer c7f9ffa521
Merge pull request #2217 from connortechnology/touch_lockfile
Touch lockfile
2018-10-11 08:45:09 -05:00
Isaac Connor 2881d2af3f Merge branch 'master' into storageareas 2018-10-10 14:13:27 -04:00
Andrew Bauer ad70648cb3 don't build neon instructions on armel (#2246) 2018-10-10 14:10:02 -04:00
Isaac Connor e8316a0aea Add detection of packets with massively negative pts. Just skip them 2018-09-28 14:19:36 -04:00
Isaac Connor 33bd30fbbd Merge branch 'master' into storageareas 2018-09-28 13:40:18 -04:00
Isaac Connor fe444218cc Implement replay mode = none in zms. This mode was only handled for video html tag viewing. 2018-09-28 12:31:53 -04:00
Isaac Connor 7768b4eeef Don't need to delete videoStore in destructor, as it gets done in CLose() 2018-09-28 11:37:16 -04:00
Isaac Connor c481fc868f be more robust when curFrames is empty. 2018-09-28 11:25:19 -04:00
Isaac Connor e0dc8a5f6b Merge branch 'master' into storageareas 2018-09-27 13:54:53 -04:00
Isaac Connor 49a7614504 revert change that breaks building on newer ffmpeg libs. 2018-09-26 18:35:29 -04:00
Isaac Connor 5ef64bf256 fix memleak on old libav distros 2018-09-26 16:20:29 -04:00
Isaac Connor 51f0e7e5c8 Add a default timebase if the codec timebase is invalid. Also fix crash when we can't open the .mp4 2018-09-26 15:34:01 -04:00
Isaac Connor 1419f20dcc add setting rtsp_transport to udp. It is the default but we print out an error otherwise 2018-09-26 15:33:29 -04:00
Isaac Connor 2385c80a4a cleanup code a bit 2018-09-26 15:32:54 -04:00
Isaac Connor 8f6db1c279 Merge branch 'master' into storageareas 2018-09-25 13:54:44 -04:00
Isaac Connor b55224be30 fix setting mFlush. Just have it on for DEBUG levels 2018-09-24 14:17:16 -04:00
Isaac Connor fd2e8a530c When changing log levels by SIGUSR1 turn on flushing 2018-09-24 09:40:05 -04:00
Isaac Connor 45056c3602 fix deprecation warning 2018-09-23 16:51:54 -04:00
Isaac Connor 53057eae25 Always make SOCK_DIR as it may not exist due to running under systemd and being chrooted 2018-09-23 16:51:06 -04:00
Isaac Connor 94796aea2c Always make SWAP_PATH dir as under systemd it may be chrooted 2018-09-23 16:49:57 -04:00
Isaac Connor ee168bf427 Properly initialize preevent frames data structures. Always update analysis fps. Make some warnings on loss of signal be Info's. 2018-09-23 16:49:06 -04:00
Isaac Connor 89cd7ceaf8 Whitespace, extra parentheses, google code style 2018-09-23 16:47:06 -04:00
Isaac Connor c8549e41da touch the zms lock file every hour so that we can determine which ones are stale 2018-09-21 15:58:14 -04:00
Isaac Connor f61a1b7ebd implement a touch() utility function 2018-09-21 15:57:48 -04:00
Isaac Connor 7abe4c40d5 Merge branch 'fix_2213' into storageareas 2018-09-19 20:02:27 -04:00
Isaac Connor c8b10b2e3b factor out some common code when creating the event directory and add a mkdir for creating the monitor directory. Should make event writing more robust when monitor dirs do not exist for some reason. 2018-09-19 19:50:26 -04:00
Isaac Connor 60b952ab86 Merge branch 'master' into storageareas 2018-09-13 16:20:36 -04:00
Isaac Connor 0ec391354c Merge branch 'fix_zms_from_mp4' into h265 2018-09-13 16:18:28 -04:00
Isaac Connor f972df167b Merge branch 'master' into fix_zms_from_mp4 2018-09-11 13:22:42 -04:00
Isaac Connor 498435886f improve debug message 2018-09-11 13:22:35 -04:00
Isaac Connor b3ef347fd5 slight optimisations in frame skipping 2018-09-11 13:22:01 -04:00
Isaac Connor e98603885d Show # of frames, not the # of frames decoded already 2018-09-11 13:21:42 -04:00
Isaac Connor 0efc45fa93 implement a getFrame function that takes a timestamp and will seek to the appropriate time in the mp4 before getting a frame 2018-09-11 13:21:12 -04:00
Isaac Connor ec6317bd66 change how frame data is stored to be more useful, pass frame time offset to getFrame to tell ffmpeg which frame to get 2018-09-11 13:20:41 -04:00
Isaac Connor cc417cf3e7 reverse order of tests to be more efficient 2018-09-11 13:19:33 -04:00
Isaac Connor c70fb2f195 When signal loss occurs, trigger an event close so that the event stops because we are no longer writing to the mp4 2018-09-10 17:11:16 -04:00
Isaac Connor 0bb672b86b dick around reverting ffmpeg 3.4 deprecations to try to get fps correct 2018-09-10 17:10:39 -04:00
Isaac Connor bf1fbd169c return uninformative debug statement 2018-09-10 15:12:19 -04:00
Isaac Connor 5eec7e00c5 Merge branch 'master' into storageareas 2018-09-09 14:09:52 -04:00
Isaac Connor a296b2b777 fix crash when savind audio on ffmpeg 2.8 2018-09-09 14:01:03 -04:00
Isaac Connor e4c87ce256 Merge branch 'master' into storageareas 2018-09-09 11:36:52 -04:00
Isaac Connor d945e2ba54 Fix context allocation on ffmpeg 2.8. Fixes #41 on connorTechnology fork. 2018-09-09 11:34:12 -04:00
Isaac Connor fe1e17d097 Capture can reasonably return -1 for EOF. 2018-09-05 11:16:17 -04:00
Isaac Connor 14b5fc3660 Merge branch 'storageareas' of github.com:connortechnology/ZoneMinder into storageareas 2018-08-31 18:43:29 -04:00
Isaac Connor df3da6dd93 Merge branch 'storageareas' of github.com:ConnorTechnology/ZoneMinder into storageareas 2018-08-30 14:53:39 -04:00
Isaac Connor 0eaa539dc6 ZM_SWAP_PATH may not exist, so always try to create it 2018-08-30 14:53:27 -04:00
Isaac Connor f2d4739838 Merge branch 'storageareas' of github.com:connortechnology/ZoneMinder into storageareas 2018-08-24 17:11:39 -04:00
Isaac Connor 4be2a0501c Merge branch 'master' into storageareas 2018-08-22 17:22:54 -04:00
Isaac Connor d296d59625 Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2018-08-22 16:34:29 -04:00
vajonam d97eea886a fix scoring algorithim, to use max_alarm_size when specified instead of the size of the zone. (#2186) 2018-08-22 12:58:26 -04:00
Isaac Connor 90eda0b88b spacing, remove extra parenthesis 2018-08-22 11:14:00 -04:00
Isaac Connor 871e3807e6 Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2018-08-17 12:57:27 -04:00
Isaac Connor 3ab542199c Merge branch 'master' into storageareas 2018-08-13 11:17:04 -04:00
Isaac Connor 17a02d66f7 google code style 2018-08-11 13:35:37 -04:00
Andrew Bauer 3dc424282b Support quoting config variables (#2175)
* allow handling of quotes in config files

* copy paste error

* surround zm_arptool in quotes
2018-08-11 12:56:16 -04:00
Isaac Connor 3b86d9255b adjust some spacing 2018-08-10 11:16:27 -04:00
Isaac Connor 744884203c adjust some spacing 2018-08-10 11:16:20 -04:00
Isaac Connor a335eb66de remove some extra braces 2018-08-10 11:16:04 -04:00
Isaac Connor f2525253bb spacing, remove excess parenthesis etc 2018-08-10 11:15:51 -04:00
Isaac Connor 185586ecd4 we must try to create the SOCK_DIR because nowadays systemd is chrooting processes and PATH_SOCKS may not exist 2018-08-10 11:15:15 -04:00
Isaac Connor 97a6a28182 You should just mkdir and handle EEXIST because stating first is a race condition 2018-08-10 11:14:41 -04:00