Commit Graph

111 Commits

Author SHA1 Message Date
Isaac Connor 87d1390fed Merge branch 'storageareas' into h265 2019-01-16 15:20: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 84c812725e spacing, improve debug. WHen looking for starting keyframe in packetqueue, use <= instead of <. 2019-01-14 14:00:45 -05:00
Isaac Connor c4c6d5b642 switch to swr_convert_frame as a test 2019-01-05 10:15:22 -05:00
Isaac Connor 3d9c8814f9 increase error_count logging 2018-12-27 13:52:41 -05:00
Isaac Connor 23124d634c improve ImageBufferCount too small message 2018-12-03 11:02:45 -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 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 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 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
Isaac Connor e8316a0aea Add detection of packets with massively negative pts. Just skip them 2018-09-28 14:19:36 -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 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 0ec391354c Merge branch 'fix_zms_from_mp4' into h265 2018-09-13 16:18:28 -04:00
Isaac Connor 974e42a610 spacing 2018-07-09 13:07:49 -04:00
Isaac Connor 190ac69975 reintroduce FfmpegInterruptCallBack so that av_read_frame can be made to quit 2018-05-08 12:02:08 -04:00
Isaac Connor ced208457d spacing, google code style 2018-05-07 10:13:36 -07:00
Isaac Connor 469a7347e8 include zm_terminate to make Capture break out of process is TERM'd 2018-04-30 15:09:00 -04:00
Isaac Connor 20f6985dff implement capturing bandwidth 2018-04-24 14:11:27 -04:00
Isaac Connor 4d95498664 Prevent double init of Ffmpeg by using FFMPEGInit() 2018-04-24 11:41:31 -04:00
Isaac Connor bd69f6a2ca close the videoStore when closing FFmpegCamera 2018-04-18 15:30:42 -04:00
Isaac Connor 34111251d9 Introduce Close() to camera and monitor api. Use it to close a camera when there is an error with capturing. Remove the sleep10 on error. 2018-04-17 07:02:52 -07:00
Isaac Connor 8518278476 coverity scan fixes/cleanups 2018-04-12 11:29:35 -04:00
Isaac da9d4c2a5c whitespace, don't pre-allocate mFormatContext 2018-04-06 23:21:40 +02:00
Isaac d8171750cd only call avformat_close_input if mformatContext still has a value. On falure it should have been freed and NULL'd 2018-04-06 23:02:15 +02:00
Isaac Connor 50696319cc Always error out when stream fails, even on EOF. Just don't log EOF as an error. 2018-03-22 09:25:35 -04:00
Isaac Connor 4d81b7b66b Do not just reconnect to the input stream on EOF. pts/dts gets outof whack when doing passthrough. Instead treat it as a loss of signal, which will end the event and start a new one 2018-03-01 19:21:41 -08:00
Isaac Connor 902f5f098a remove debug code 2018-02-26 16:10:27 -08:00
Isaac Connor 5b55bef721 Add support for h264_mmal 2018-02-22 18:33:11 -05:00
Isaac Connor 9caa71233a catch another EOF case 2018-02-17 11:07:06 -05:00
Isaac Connor 744d776d9f return when ReopenFfmpeg fails 2018-02-13 10:11:39 -05:00
Isaac Connor 162a08e81d return when ReopenFfmpeg fails 2018-02-13 10:11:05 -05:00
Isaac Connor e25af4b40c cleanup, reset result 2018-02-02 16:07:13 -05:00
Isaac Connor 31ad807a90 If ffmpeg is open in PrimeCapture, close it. Turn all Fatals into Errors 2018-01-31 14:34:39 -05:00
Isaac Connor 16c24240f7 clean out old threaded code that has been #defined out for a long time. When EOF, after re-opening, continue instead of logging the error 2018-01-28 15:14:38 -05:00
Isaac Connor 50fc4a2d94 Use a memory table called Monitor_Status to store FPS and Status info for Monitors. This is to reduce locking and updates on the main Monitors table. 2018-01-24 11:51:11 -05:00
Isaac 4127aa50f3 simplify logic, improve debugging 2018-01-22 03:26:25 +01:00
Isaac Connor 687d797303 Only log debug message about excluding audio if there is an audio stream 2018-01-17 09:53:03 -05:00
Isaac Connor 7f4deef4a9 Move debug comment about opening audio codec into the part where the audio codec is opened 2018-01-17 09:21:17 -05:00
Isaac Connor a9bbe3e85c remove debug lines 2017-12-12 12:36:35 -05:00
Isaac Connor d73f9e8a73 wip, crashes 2017-11-28 11:11:41 -05:00
Isaac Connor 1e50df741f fix some memleaks 2017-11-28 09:50:09 -05:00
Isaac Connor 159c0a7165 moer cppcheck fixes 2017-11-17 07:52:26 -05:00
APHW2 MFGENG e17bcb9178 updates for mast ffmpeg 2017-11-07 18:21:51 -08:00
Isaac Connor 0a3327e2d2 move test for h264 into the code that opens the stream instead of comparing on every capture 2017-11-05 09:59:27 -05:00
Isaac Connor cab8c4cd5e cleanup Monitor::Capture. Cleanup the return values from Capture and CaptureAndRecord. <0 is error, 0 is things ok, but no video frame. > 0 means we have a frame. Plus google code style 2017-11-03 13:49:42 -04:00
Isaac Connor a8b679e479 set frameCount for audio packets too so that a long period of just audio will return and update lastframesent etc. 2017-11-02 11:45:33 -04:00