Merge branch 'storageareas' of github.com:connortechnology/ZoneMinder into storageareas

This commit is contained in:
Isaac Connor 2019-08-08 13:16:40 -04:00
commit d3ba0ce129
4 changed files with 34 additions and 2 deletions

View File

@ -646,6 +646,23 @@ Why am I getting broken images when trying to view events?
Zoneminder and the Apache web server need to have the right permissions. Check this forum topic and similar ones: Zoneminder and the Apache web server need to have the right permissions. Check this forum topic and similar ones:
http://www.zoneminder.com/forums/viewtopic.php?p=48754#48754 http://www.zoneminder.com/forums/viewtopic.php?p=48754#48754
I can review events for the current day, but ones from yesterday and beyond error out
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
If you've checked that the `www-data` user has permissions to the storage folders, perhaps your php.ini's timezone setting is incorrect. They _must_ match for certain playback functions.
If you're using Linux, this can be found using the following command: ::
timedatectl | grep "Time zone"
If using FreeBSD, you can use this one-liner: ::
cd /usr/share/zoneinfo/ && find * -type f -exec cmp -s {} /etc/localtime \; -print;
Once you know what timezone your system is set to, open `/etc/php.ini` and adjust ``date.timezone`` to the appropriate value. the PHP daemon may need to be restarted for changes to take effect.
Why is the image from my color camera appearing in black and white? Why is the image from my color camera appearing in black and white?
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
If you recently upgraded to zoneminder 1.26, there is a per camera option that defaults to black and white and can be mis-set if your upgrade didn't happen right. See this thread: http://www.zoneminder.com/forums/viewtopic.php?f=30&t=21344 If you recently upgraded to zoneminder 1.26, there is a per camera option that defaults to black and white and can be mis-set if your upgrade didn't happen right. See this thread: http://www.zoneminder.com/forums/viewtopic.php?f=30&t=21344
@ -728,6 +745,8 @@ What causes "Invalid JPEG file structure: two SOI markers" from zmc (1.24.x)
Some settings that used to be global only are now per camera. On the Monitor Source tab, if you are using Remote Protocol "HTTP" and Remote Method "Simple", try changing Remote Method to "Regexp". Some settings that used to be global only are now per camera. On the Monitor Source tab, if you are using Remote Protocol "HTTP" and Remote Method "Simple", try changing Remote Method to "Regexp".
Miscellaneous Miscellaneous
------------------- -------------------
I see ZoneMinder is licensed under the GPL. What does that allow or restrict me in doing with ZoneMinder? I see ZoneMinder is licensed under the GPL. What does that allow or restrict me in doing with ZoneMinder?

View File

@ -44,6 +44,7 @@ extern "C" {
#if HAVE_LIBAVUTIL_HWCONTEXT_H #if HAVE_LIBAVUTIL_HWCONTEXT_H
#if LIBAVCODEC_VERSION_CHECK(57, 89, 0, 89, 0)
static enum AVPixelFormat hw_pix_fmt; static enum AVPixelFormat hw_pix_fmt;
static enum AVPixelFormat get_hw_format( static enum AVPixelFormat get_hw_format(
AVCodecContext *ctx, AVCodecContext *ctx,
@ -94,6 +95,7 @@ static enum AVPixelFormat find_fmt_by_hw_type(const enum AVHWDeviceType type) {
} }
#endif #endif
#endif #endif
#endif
FfmpegCamera::FfmpegCamera( FfmpegCamera::FfmpegCamera(
int p_id, int p_id,
@ -155,8 +157,10 @@ FfmpegCamera::FfmpegCamera(
#if HAVE_LIBAVUTIL_HWCONTEXT_H #if HAVE_LIBAVUTIL_HWCONTEXT_H
hwFrame = NULL; hwFrame = NULL;
hw_device_ctx = NULL; hw_device_ctx = NULL;
#if LIBAVCODEC_VERSION_CHECK(57, 89, 0, 89, 0)
hw_pix_fmt = AV_PIX_FMT_NONE; hw_pix_fmt = AV_PIX_FMT_NONE;
#endif #endif
#endif
#if HAVE_LIBSWSCALE #if HAVE_LIBSWSCALE
mConvertContext = NULL; mConvertContext = NULL;
@ -437,6 +441,8 @@ int FfmpegCamera::OpenFfmpeg() {
if ( hwaccel_name != "" ) { if ( hwaccel_name != "" ) {
#if HAVE_LIBAVUTIL_HWCONTEXT_H #if HAVE_LIBAVUTIL_HWCONTEXT_H
// 3.2 doesn't seem to have all the bits in place, so let's require 3.3 and up
#if LIBAVCODEC_VERSION_CHECK(57, 89, 0, 89, 0)
// Print out available types // Print out available types
enum AVHWDeviceType type = AV_HWDEVICE_TYPE_NONE; enum AVHWDeviceType type = AV_HWDEVICE_TYPE_NONE;
while ( (type = av_hwdevice_iterate_types(type)) != AV_HWDEVICE_TYPE_NONE ) while ( (type = av_hwdevice_iterate_types(type)) != AV_HWDEVICE_TYPE_NONE )
@ -497,6 +503,9 @@ int FfmpegCamera::OpenFfmpeg() {
} else { } else {
Debug(1, "Failed to setup hwaccel."); Debug(1, "Failed to setup hwaccel.");
} }
#else
Debug(1, "AVCodec not new enough for hwaccel");
#endif
#else #else
Warning("HWAccel support not compiled in."); Warning("HWAccel support not compiled in.");
#endif #endif
@ -946,6 +955,7 @@ int FfmpegCamera::CaptureAndRecord(
if ( error_count > 0 ) error_count--; if ( error_count > 0 ) error_count--;
zm_dump_video_frame(mRawFrame); zm_dump_video_frame(mRawFrame);
#if HAVE_LIBAVUTIL_HWCONTEXT_H #if HAVE_LIBAVUTIL_HWCONTEXT_H
#if LIBAVCODEC_VERSION_CHECK(57, 89, 0, 89, 0)
if ( if (
(hw_pix_fmt != AV_PIX_FMT_NONE) (hw_pix_fmt != AV_PIX_FMT_NONE)
&& &&
@ -964,10 +974,13 @@ int FfmpegCamera::CaptureAndRecord(
hwFrame->pts = mRawFrame->pts; hwFrame->pts = mRawFrame->pts;
input_frame = hwFrame; input_frame = hwFrame;
} else { } else {
#endif
#endif #endif
input_frame = mRawFrame; input_frame = mRawFrame;
#if HAVE_LIBAVUTIL_HWCONTEXT_H #if HAVE_LIBAVUTIL_HWCONTEXT_H
#if LIBAVCODEC_VERSION_CHECK(57, 89, 0, 89, 0)
} }
#endif
#endif #endif
Debug(4, "Got frame %d", frameCount); Debug(4, "Got frame %d", frameCount);

View File

@ -42,7 +42,7 @@ if ( isset($_REQUEST['object']) and ( $_REQUEST['object'] == 'filter' ) ) {
$filter->delete(); $filter->delete();
} else { } else {
ZM\Error("No filter id passed when deleting"); ZM\Error('No filter id passed when deleting');
} }
} else if ( ( $action == 'Save' ) or ( $action == 'SaveAs' ) or ( $action == 'execute' ) ) { } else if ( ( $action == 'Save' ) or ( $action == 'SaveAs' ) or ( $action == 'execute' ) ) {

View File

@ -1341,7 +1341,7 @@ function parseFilter(&$filter, $saveToSession=false, $querySep='&') {
$filter['sql'] .= " IS NOT $value"; $filter['sql'] .= " IS NOT $value";
break; break;
default: default:
ZM\Warning("Invalid operator in filter: " . $term['op'] ); ZM\Warning('Invalid operator in filter: ' . print_r($term['op'], true));
} // end switch op } // end switch op
$filter['query'] .= $querySep.urlencode("filter[Query][terms][$i][op]").'='.urlencode($term['op']); $filter['query'] .= $querySep.urlencode("filter[Query][terms][$i][op]").'='.urlencode($term['op']);