Commit Graph

2793 Commits

Author SHA1 Message Date
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 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