Merge branch 'master' of github.com:ZoneMinder/ZoneMinder

This commit is contained in:
Isaac Connor 2014-05-05 11:29:55 -04:00
commit 8333e909ed
3 changed files with 32 additions and 6 deletions

View File

@ -32,3 +32,29 @@ Snapshots and Zones images are stored in the `images` directory in your webroot.
Ensure that the `images` directory is writable by the user which ZoneMinder is Ensure that the `images` directory is writable by the user which ZoneMinder is
running as. If the `images` directory is a symlink, ensure that your web server running as. If the `images` directory is a symlink, ensure that your web server
has access to that directory as well. has access to that directory as well.
How do the 3 AlarmCheckMethods interact?
----------------------------------------
In example, if I set the alarm % to 5-10% and the filtered and blob to 1-100%, what happens?
1. If any of the min/max values is 0, the check that the value is applied to is skipped.
2. If you have a min-alarmed area and you're below that, then it quits.
3. If you have a max-alarmed area and you're above that, then it quits.
4. If you're on filtered or blobs
1. and have a min filtered area that you're below then it quits
2. and have a max filtered area that you're above then it quits
5. If you're on blobs
1. any blob smaller than the min blob area (if set) is discarded
2. any blob larger than the max blob area (if set) is discarded
3. If there are less remaining blobs than the minimum-blobs, then it quits.
4. If there are more remaining blobs than the maximum-blobs, then it quits.
If AlarmedPixels is selected, you can only enter min/max pixel threshold and
min/max alarmed area. If FilteredPixels is selected, the Blob options are
disabled. The Blob check method allows you to specify all options. Filtered
adds more checks than alarmed, and blobs adds more checks than filtered. The
final 'score' is calculated using final check method.

View File

@ -860,7 +860,7 @@ bool Image::WriteJpeg( const char *filename, int quality_override ) const
} }
jpeg_set_defaults( cinfo ); jpeg_set_defaults( cinfo );
jpeg_set_quality( cinfo, quality, false ); jpeg_set_quality( cinfo, quality, FALSE );
cinfo->dct_method = JDCT_FASTEST; cinfo->dct_method = JDCT_FASTEST;
jpeg_start_compress( cinfo, TRUE ); jpeg_start_compress( cinfo, TRUE );
@ -1093,7 +1093,7 @@ bool Image::EncodeJpeg( JOCTET *outbuffer, int *outbuffer_size, int quality_over
} }
jpeg_set_defaults( cinfo ); jpeg_set_defaults( cinfo );
jpeg_set_quality( cinfo, quality, false ); jpeg_set_quality( cinfo, quality, FALSE );
cinfo->dct_method = JDCT_FASTEST; cinfo->dct_method = JDCT_FASTEST;
jpeg_start_compress( cinfo, TRUE ); jpeg_start_compress( cinfo, TRUE );

View File

@ -399,12 +399,12 @@ void zm_use_std_huff_tables( j_decompress_ptr cinfo ) {
static const JHUFF_TBL dclumin = { static const JHUFF_TBL dclumin = {
{ /* 0-base */ 0, 0, 1, 5, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0 }, { /* 0-base */ 0, 0, 1, 5, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0 },
{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 }, { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 },
0 FALSE
}; };
static const JHUFF_TBL dcchrome = { static const JHUFF_TBL dcchrome = {
{ /* 0-base */ 0, 0, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0 }, { /* 0-base */ 0, 0, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0 },
{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 }, { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 },
0 FALSE
}; };
static const JHUFF_TBL aclumin = { static const JHUFF_TBL aclumin = {
{ /* 0-base */ 0, 0, 2, 1, 3, 3, 2, 4, 3, 5, 5, 4, 4, 0, 0, 1, 0x7d }, { /* 0-base */ 0, 0, 2, 1, 3, 3, 2, 4, 3, 5, 5, 4, 4, 0, 0, 1, 0x7d },
@ -429,7 +429,7 @@ void zm_use_std_huff_tables( j_decompress_ptr cinfo ) {
0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea,
0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8,
0xf9, 0xfa }, 0xf9, 0xfa },
0 FALSE
}; };
static const JHUFF_TBL acchrome = { static const JHUFF_TBL acchrome = {
{ /* 0-base */ 0, 0, 2, 1, 2, 4, 4, 3, 4, 7, 5, 4, 4, 0, 1, 2, 0x77 }, { /* 0-base */ 0, 0, 2, 1, 2, 4, 4, 3, 4, 7, 5, 4, 4, 0, 1, 2, 0x77 },
@ -454,7 +454,7 @@ void zm_use_std_huff_tables( j_decompress_ptr cinfo ) {
0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9,
0xea, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xea, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8,
0xf9, 0xfa }, 0xf9, 0xfa },
0 FALSE
}; };
cinfo->dc_huff_tbl_ptrs[0] = (JHUFF_TBL*)&dclumin; cinfo->dc_huff_tbl_ptrs[0] = (JHUFF_TBL*)&dclumin;