Difference between revisions of "Panasonic"
(Add MJPEG frame rate example.) |
|||
(39 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
The "Panasonic IP" monitor preset in ZoneMinder is compatible with these Panasonic netcam models: | All members of the BL and BB model families are likely to be compatible, including PTZ support. The "Panasonic IP" monitor preset in ZoneMinder is known to be compatible with these Panasonic netcam models: | ||
* BL- | * BL-C1A, BL-C1CN, BL-C1E | ||
* BL- | * BL-C20A, BL-C20CN, BL-C20E | ||
* BL- | * BL-C30A, BL-C30CN, BL-C30E | ||
* BL- | * BL-C101A, BL-C101CN, BL-C101E | ||
* BL- | * BL-C111A, BL-C111CN, BL-C111E | ||
* BL- | * BL-C121A, BL-C121CN, BL-C121E | ||
* BL- | * BL-C131A, BL-C131CN, BL-C131E | ||
* BL- | * BL-C140A, BL-C140CN, BL-C140E | ||
* BL- | * BL-C160A, BL-C160CN, BL-C160E | ||
* BB- | * BB-HCM381A, BB-HCM381CN, BB-HCM381E | ||
* BB- | * BB-HCM511A, BB-HCM511CN, BB-HCM511E | ||
* BB- | * BB-HCM527A, BB-HCM527CN, BB-HCM527E | ||
* BB- | * BB-HCM531A, BB-HCM531CN, BB-HCM531E | ||
* BB- | * BB-HCM547A, BB-HCM547CN, BB-HCM547E | ||
* BB- | * BB-HCM580A, BB-HCM580CN, BB-HCM580E | ||
* BB- | * BB-HCM581A, BB-HCM581CN, BB-HCM581E | ||
* KX-HCM10 | * KX-HCM10 | ||
* BB-HCM705CE | |||
=Initial Hardware Setup= | |||
# The camera uses a default IP address of 192.168.0.254 if it does not get a DHCP lease. Many firmware revisions ship with DHCP disabled by default. If you are not using the configuration utility for Microsoft Windows, then you may need to do something like `sudo ifconfig eth0:0 192.168.0.2` at a terminal prompt to access the camera and enable DHCP. | |||
# Upgrade the firmware. ZoneMinder 1.25 expects version 3.00 or later. | |||
# Enable the guest account: | |||
## Click ''Setup'' in the top menu. | |||
## Click ''Administrator'' in the side menu. | |||
## Choose ''Permit access from guest users''. | |||
## Click the ''Save'' button. | |||
# Set privileges on the guest account for ZoneMinder: | |||
## Click ''Setup'' in the top menu. | |||
## Click ''General User'' in the side menu. | |||
## Choose ''Guest User'' in the menu. | |||
## Click the ''Modify'' button. | |||
## Change ''Video Display Time'' to ''Unlimited''. | |||
## Enable all ''Access Level'' checkboxes. | |||
## Click the ''Save'' button. | |||
Only set access credentials on Panasonic equipment after you have a working ZoneMinder configuration. | |||
=MJPEG Configuration= | |||
==Example== | |||
At the ''Monitor -> Source'' page for the camera: | |||
Remote Protocol: HTTP | Remote Protocol: HTTP | ||
Remote Method: Simple | Remote Method: Simple | ||
Line 46: | Line 58: | ||
Orientation: Normal | Orientation: Normal | ||
==Example for Old Firmware== | |||
Change '''nphMotionJpeg''' to '''nphContinuousServerPush''' or '''cgi-bin/nphContinuousServerPush''' if the camera has old firmware like this: | |||
Remote Host Path: cgi-bin/nphContinuousServerPush?Resolution=640x480&Quality=Standard | |||
Cameras models that only have the old version 2.00 firmware interface are: | |||
* BL-C20A | |||
==Parameters== | |||
The required '''Quality''' CGI parameter sets JPEG quality and can be one of Clarity, Standard, or Motion. | |||
The required '''Resolution''' CGI parameter can be one of 1280x1024, 640x480, 320x240, or 160x120 pixels. | |||
'''Note:''' Only hi-def models support the 1280x1024 resolution, and some low end models like the Panasonic BL-C1A Petcam do not support the 640x480 resolution. | |||
{| class="wikitable" | {| class="wikitable" | ||
Line 58: | Line 84: | ||
|- | |- | ||
| Resolution=1280x1024 | | Resolution=1280x1024 | ||
| | | ? | ||
| | | ? | ||
| | | ? | ||
|- | |- | ||
| Resolution=640x480 | | Resolution=640x480 | ||
Line 78: | Line 104: | ||
|} | |} | ||
On busy systems, ZoneMinder performs better if the frame rate is limited at the camera | The optional '''Framerate''' parameter can be 0.1 through 30.00 frames per second in one-tenth increments. For example, to take an image every other second: | ||
Remote Host Path: nphMotionJpeg?Resolution=640x480&Quality=Standard&Framerate=0.5 | |||
'''Note:''' The default MJPEG frame rate in the web interface is the same as "MPEG-4 Max. Frame Rate" option, which is set on the ''Video Streaming'' page. | |||
==Performance== | |||
In MJPEG mode with a default configuration, ZoneMinder can sustain approximately 5 fps from a Panasonic netcam. In ideal conditions with tuning, the maximum is approximately 25 fps. | |||
On slow or busy systems, ZoneMinder performs better if the frame rate is externally limited at the camera. For example, to limit capture to 10 fps, set: | |||
Remote Host Path: nphMotionJpeg?Resolution=640x480&Quality=Standard&Framerate=10 | Remote Host Path: nphMotionJpeg?Resolution=640x480&Quality=Standard&Framerate=10 | ||
=RTSP MPEG4 Example | On the ''Monitor -> General'' configuration page for the camera in ZoneMinder, leave the '''Maximum FPS''' field empty. | ||
=RTSP/MPEG4 Configuration= | |||
'''Note''': Low end models like the Panasonic BL-C1A Petcam only support MJPEG because they do not have an MPEG4 encoder. | |||
==Example== | |||
At the ''Monitor -> Source'' page for the camera: | |||
Remote Protocol: RTSP | Remote Protocol: RTSP | ||
Remote Method: RTP/Unicast | Remote Method: RTP/Unicast | ||
Remote Host Name: 192.168.1.254 | Remote Host Name: 192.168.1.254 | ||
Remote Host Port: 554 | Remote Host Port: 554 | ||
Remote Host Path: nphMpeg4/ | Remote Host Path: nphMpeg4/nil-640x480 | ||
Remote Image Colors: 24 bitcolor | Remote Image Colors: 24 bitcolor | ||
Capture Width (pixels): 640 | Capture Width (pixels): 640 | ||
Line 96: | Line 138: | ||
Orientation: Normal | Orientation: Normal | ||
==Parameters== | |||
''' | '''Note:''' Only high definition models support the 1280x1024 resolution. | ||
Available streaming resolutions are: | |||
Remote Host Path: nphMpeg4/nil-1280x1024 | |||
Remote Host Path: nphMpeg4/nil-640x480 | |||
Remote Host Path: nphMpeg4/nil-320x240 | |||
Remote Host Path: nphMpeg4/nil-160x120 | |||
None of these URIs take parameters. Video streaming options are always global and can only be changed through the CGI or web interface. | |||
'''Note:''' The camera must be manually rebooted for MPEG-4 or H.264 options to take affect. | |||
'''Note:''' Audio can be enabled on models that have it by changing the '''nil''' to '''g726''', but ZoneMinder lacks audio support, so doing this would waste network capacity and storage. For example: | |||
Remote Host Path: nphMpeg4/g726-640x480 | |||
==Performance== | |||
In RTSP mode, ZoneMinder can get 30 fps from a Panasonic netcam that has an MPEG4 encoder. The raw idle RTP output of a bright quiet scene for these cameras is usually 400 kbps, or 5GB per day. | |||
Even if the RTSP stream is frame limited by the camera, the transport will be at 30fps. If the frame rate is decreased at the default maximum bit rate, then streaming image quality will noticeably improve. To reduce streaming bandwidth, reduce both the frame rate and the maximum bit rate on the "Setup -> Video Streaming" page. Remember to reboot the camera on the "Maintenance" tab after changing these options. | |||
ZoneMinder transcodes the MPEG4 stream to add a banner or stream through the web interface. Doing this on one 640x480@30fps stream can consume an entire core on a modern CPU. If the CPU becomes overloaded, then the zmc process will crash and the Feed Watch page will be blank or show the broken image icon. An easy way to reduce CPU load is to set the "Maximum FPS" field on the monitor General tab to 15 or less, but ZoneMinder performs better if frame rate limiting happens at the camera. | |||
=Authentication= | |||
If the camera requires a username and password, then put the credentials in the '''Remote Host Name''' field on the ''Monitor -> Source'' tab for the camera in ZoneMinder like this: | |||
Remote Protocol: HTTP | Remote Protocol: HTTP | ||
Remote Method: Simple | Remote Method: Simple | ||
Remote Host Name: '''MyUser | Remote Host Name: '''MyUser:MyPass@'''192.168.1.254 | ||
Remote Host Port: 80 | Remote Host Port: 80 | ||
Remote Host Path: /nphMotionJpeg?Resolution=640x480&Quality=Standard | Remote Host Path: /nphMotionJpeg?Resolution=640x480&Quality=Standard | ||
Line 123: | Line 181: | ||
Orientation: Normal | Orientation: Normal | ||
The username and password are separated by one colon character, which are separated from the IP address or host name by the 'at' symbol. | |||
=Troubleshooting= | |||
* Using the anonymous guest account with default permissions, or using incorrect credentials, will result in a black box or this error in the zmdc.log file: | |||
zmdc.ERR ['zmc -m 1' exited abnormally, exit status 255] | |||
* All CGI parameters are case sensitive. Using "nphmotionjpeg?resolution=640x480&quality=standard" instead of "nphMotionJpeg?Resolution=640x480&Quality=Standard" will cause the camera to return a "400 Bad Request" error. | |||
* Remember to grant all permissions to the ZoneMinder account in the camera and double check the spelling of the username and password. ZoneMinder does not log a sensible error message if the access privileges or credentials are incorrect, it just crashes. | |||
* Use the VideoLAN player to test RTSP like this: | |||
vlc rtsp://192.168.0.254/nphMpeg4/nil-640x480 | |||
If VLC cannot play the stream, then ZoneMinder cannot record it. (Many other RTSP players are incompatible with Panasonic network cameras. Use VLC.) | |||
* Using RTSP through NAT usually requires a custom firewall configuration. Always get MJPEG working first. | |||
* These cameras also provide an RTP-over-HTTP interface over a single port. In VLC, click ''Media -> Open Network Stream'' and input this URL: | |||
http://192.168.0.254/rtpOverHttp?Url=nphMpeg4/nil-640x480 | |||
This is easier to punch through a firewall, but it has timing and sync problems. | |||
==Hidden Configuration Options== | |||
Login to the web interface, and manually open this URI: | |||
http://192.168.0.254/Get?Func=VDelivery&Kind=1 | |||
The camera could return a list of configuration options like this: | |||
640framerate:15 | |||
320framerate:15 | |||
192framerate:15 | |||
640bitrateL:256 | |||
640bitrateH:1024 | |||
320bitrateL:128 | |||
320bitrateH:512 | |||
192bitrateL:64 | |||
192bitrateH:256 | |||
RTSPPortNo:554 | |||
RTPPortMin:33000 | |||
Multicast:0 | |||
Not all of these options will be exposed in the web interface. For example, firmware version 3.50 does not expose the MPEG4 framerate option, which is the first line in the example. You can set it by manually opening this URI in a web browser: | |||
http://192.168.0.254/Set?Func=VDelivery&Kind=1&640framerate=30 | |||
A plain web page like this means success: | |||
Return:0 | |||
=Specific Panasonic models= | |||
=Panasonic PI-SPW303L and BL-VT164= | |||
These cameras have odd behaviour in newer browsers that prevents entering in user credentials into the web ui. You will have to use IE/Edge to configure them. They are also accessible using ODM. | |||
They work just fine as an RTSP source, except they seem to use admin:admin as credentials for the stream no matter what they username/password is for the camera. Currently ZM ONVIF probe will not detect them even though they are valid ONVIF. | |||
=Panasonic BL-VT164= | |||
This camera marks a decidedly negative turn from the many other models that have worked extremely well in general and in ZoneMinder in particular. | |||
The new and regrettable interface is masked behind layers of Javascript, but I discovered that the 640x480 requested is received as 640x360. | |||
Thus, after many hours of searching, I found the following working settings: | |||
* Remote Protocol: HTTP | |||
* Remote Method: Simple | |||
* Remote Host Name: <user>:<password>@<hostname or IP> | |||
* Remote Host Port: 80 | |||
* Remote Host Path: /SnapshotJPEG?Resolution=640x480 | |||
* Remote Image Colours: <24 bit color> | |||
* Capture Width (pixels): 640 | |||
* Capture Height (pixels): 360 | |||
The new firmware, which ONLY works with certain versions of Internet Explorer, is highly dysfunctional. This camera is NOT recommended. | |||
=External Resources= | =External Resources= | ||
* [http://panasonic.net/pcc/support/netwkcam/download/index.html Panasonic Network Camera Downloads - Firmware, Manuals, and Application Software] | |||
* [http://panasonic.net/pcc/cgi-bin/products/netwkcam/download_us/tbookmarka_m.cgi?mm=2007032816275868 Panasonic Camera CGI Specification] | * [http://panasonic.net/pcc/cgi-bin/products/netwkcam/download_us/tbookmarka_m.cgi?mm=2007032816275868 Panasonic Camera CGI Specification] | ||
* [http://shop.panasonic.com/shop/cameras-and-camcorders-network-cameras?support Current Panasonic Netcam Catalog] | |||
[[Category:Cameras]] | [[Category:Cameras]] |
Latest revision as of 16:26, 13 May 2019
All members of the BL and BB model families are likely to be compatible, including PTZ support. The "Panasonic IP" monitor preset in ZoneMinder is known to be compatible with these Panasonic netcam models:
- BL-C1A, BL-C1CN, BL-C1E
- BL-C20A, BL-C20CN, BL-C20E
- BL-C30A, BL-C30CN, BL-C30E
- BL-C101A, BL-C101CN, BL-C101E
- BL-C111A, BL-C111CN, BL-C111E
- BL-C121A, BL-C121CN, BL-C121E
- BL-C131A, BL-C131CN, BL-C131E
- BL-C140A, BL-C140CN, BL-C140E
- BL-C160A, BL-C160CN, BL-C160E
- BB-HCM381A, BB-HCM381CN, BB-HCM381E
- BB-HCM511A, BB-HCM511CN, BB-HCM511E
- BB-HCM527A, BB-HCM527CN, BB-HCM527E
- BB-HCM531A, BB-HCM531CN, BB-HCM531E
- BB-HCM547A, BB-HCM547CN, BB-HCM547E
- BB-HCM580A, BB-HCM580CN, BB-HCM580E
- BB-HCM581A, BB-HCM581CN, BB-HCM581E
- KX-HCM10
- BB-HCM705CE
Initial Hardware Setup
- The camera uses a default IP address of 192.168.0.254 if it does not get a DHCP lease. Many firmware revisions ship with DHCP disabled by default. If you are not using the configuration utility for Microsoft Windows, then you may need to do something like `sudo ifconfig eth0:0 192.168.0.2` at a terminal prompt to access the camera and enable DHCP.
- Upgrade the firmware. ZoneMinder 1.25 expects version 3.00 or later.
- Enable the guest account:
- Click Setup in the top menu.
- Click Administrator in the side menu.
- Choose Permit access from guest users.
- Click the Save button.
- Set privileges on the guest account for ZoneMinder:
- Click Setup in the top menu.
- Click General User in the side menu.
- Choose Guest User in the menu.
- Click the Modify button.
- Change Video Display Time to Unlimited.
- Enable all Access Level checkboxes.
- Click the Save button.
Only set access credentials on Panasonic equipment after you have a working ZoneMinder configuration.
MJPEG Configuration
Example
At the Monitor -> Source page for the camera:
Remote Protocol: HTTP Remote Method: Simple Remote Host Name: 192.168.1.254 Remote Host Port: 80 Remote Host Path: nphMotionJpeg?Resolution=640x480&Quality=Standard Remote Image Colors: 24 bit color Capture Width (pixels): 640 Capture Height (pixels): 480 Preserve Aspect Ratio: Off Orientation: Normal
Example for Old Firmware
Change nphMotionJpeg to nphContinuousServerPush or cgi-bin/nphContinuousServerPush if the camera has old firmware like this:
Remote Host Path: cgi-bin/nphContinuousServerPush?Resolution=640x480&Quality=Standard
Cameras models that only have the old version 2.00 firmware interface are:
- BL-C20A
Parameters
The required Quality CGI parameter sets JPEG quality and can be one of Clarity, Standard, or Motion.
The required Resolution CGI parameter can be one of 1280x1024, 640x480, 320x240, or 160x120 pixels.
Note: Only hi-def models support the 1280x1024 resolution, and some low end models like the Panasonic BL-C1A Petcam do not support the 640x480 resolution.
MJPEG Frame Size | Quality=Clarity | Quality=Standard | Quality=Motion |
---|---|---|---|
Resolution=1280x1024 | ? | ? | ? |
Resolution=640x480 | 50kB | 30kB | 20kb |
Resolution=320x240 | 25kB | 15kB | 8kB |
Resolution=160x120 | 8kB | 5kB | 3kB |
The optional Framerate parameter can be 0.1 through 30.00 frames per second in one-tenth increments. For example, to take an image every other second:
Remote Host Path: nphMotionJpeg?Resolution=640x480&Quality=Standard&Framerate=0.5
Note: The default MJPEG frame rate in the web interface is the same as "MPEG-4 Max. Frame Rate" option, which is set on the Video Streaming page.
Performance
In MJPEG mode with a default configuration, ZoneMinder can sustain approximately 5 fps from a Panasonic netcam. In ideal conditions with tuning, the maximum is approximately 25 fps.
On slow or busy systems, ZoneMinder performs better if the frame rate is externally limited at the camera. For example, to limit capture to 10 fps, set:
Remote Host Path: nphMotionJpeg?Resolution=640x480&Quality=Standard&Framerate=10
On the Monitor -> General configuration page for the camera in ZoneMinder, leave the Maximum FPS field empty.
RTSP/MPEG4 Configuration
Note: Low end models like the Panasonic BL-C1A Petcam only support MJPEG because they do not have an MPEG4 encoder.
Example
At the Monitor -> Source page for the camera:
Remote Protocol: RTSP Remote Method: RTP/Unicast Remote Host Name: 192.168.1.254 Remote Host Port: 554 Remote Host Path: nphMpeg4/nil-640x480 Remote Image Colors: 24 bitcolor Capture Width (pixels): 640 Capture Height (pixels): 480 Preserve Aspect Ratio: Off Orientation: Normal
Parameters
Note: Only high definition models support the 1280x1024 resolution.
Available streaming resolutions are:
Remote Host Path: nphMpeg4/nil-1280x1024 Remote Host Path: nphMpeg4/nil-640x480 Remote Host Path: nphMpeg4/nil-320x240 Remote Host Path: nphMpeg4/nil-160x120
None of these URIs take parameters. Video streaming options are always global and can only be changed through the CGI or web interface.
Note: The camera must be manually rebooted for MPEG-4 or H.264 options to take affect.
Note: Audio can be enabled on models that have it by changing the nil to g726, but ZoneMinder lacks audio support, so doing this would waste network capacity and storage. For example:
Remote Host Path: nphMpeg4/g726-640x480
Performance
In RTSP mode, ZoneMinder can get 30 fps from a Panasonic netcam that has an MPEG4 encoder. The raw idle RTP output of a bright quiet scene for these cameras is usually 400 kbps, or 5GB per day.
Even if the RTSP stream is frame limited by the camera, the transport will be at 30fps. If the frame rate is decreased at the default maximum bit rate, then streaming image quality will noticeably improve. To reduce streaming bandwidth, reduce both the frame rate and the maximum bit rate on the "Setup -> Video Streaming" page. Remember to reboot the camera on the "Maintenance" tab after changing these options.
ZoneMinder transcodes the MPEG4 stream to add a banner or stream through the web interface. Doing this on one 640x480@30fps stream can consume an entire core on a modern CPU. If the CPU becomes overloaded, then the zmc process will crash and the Feed Watch page will be blank or show the broken image icon. An easy way to reduce CPU load is to set the "Maximum FPS" field on the monitor General tab to 15 or less, but ZoneMinder performs better if frame rate limiting happens at the camera.
Authentication
If the camera requires a username and password, then put the credentials in the Remote Host Name field on the Monitor -> Source tab for the camera in ZoneMinder like this:
Remote Protocol: HTTP Remote Method: Simple Remote Host Name: MyUser:MyPass@192.168.1.254 Remote Host Port: 80 Remote Host Path: /nphMotionJpeg?Resolution=640x480&Quality=Standard Remote Image Colors: 24 bit color Capture Width (pixels): 640 Capture Height (pixels): 480 Preserve Aspect Ratio: Off Orientation: Normal
The username and password are separated by one colon character, which are separated from the IP address or host name by the 'at' symbol.
Troubleshooting
- Using the anonymous guest account with default permissions, or using incorrect credentials, will result in a black box or this error in the zmdc.log file:
zmdc.ERR ['zmc -m 1' exited abnormally, exit status 255]
- All CGI parameters are case sensitive. Using "nphmotionjpeg?resolution=640x480&quality=standard" instead of "nphMotionJpeg?Resolution=640x480&Quality=Standard" will cause the camera to return a "400 Bad Request" error.
- Remember to grant all permissions to the ZoneMinder account in the camera and double check the spelling of the username and password. ZoneMinder does not log a sensible error message if the access privileges or credentials are incorrect, it just crashes.
- Use the VideoLAN player to test RTSP like this:
vlc rtsp://192.168.0.254/nphMpeg4/nil-640x480
If VLC cannot play the stream, then ZoneMinder cannot record it. (Many other RTSP players are incompatible with Panasonic network cameras. Use VLC.)
- Using RTSP through NAT usually requires a custom firewall configuration. Always get MJPEG working first.
- These cameras also provide an RTP-over-HTTP interface over a single port. In VLC, click Media -> Open Network Stream and input this URL:
http://192.168.0.254/rtpOverHttp?Url=nphMpeg4/nil-640x480
This is easier to punch through a firewall, but it has timing and sync problems.
Hidden Configuration Options
Login to the web interface, and manually open this URI:
http://192.168.0.254/Get?Func=VDelivery&Kind=1
The camera could return a list of configuration options like this:
640framerate:15 320framerate:15 192framerate:15 640bitrateL:256 640bitrateH:1024 320bitrateL:128 320bitrateH:512 192bitrateL:64 192bitrateH:256 RTSPPortNo:554 RTPPortMin:33000 Multicast:0
Not all of these options will be exposed in the web interface. For example, firmware version 3.50 does not expose the MPEG4 framerate option, which is the first line in the example. You can set it by manually opening this URI in a web browser:
http://192.168.0.254/Set?Func=VDelivery&Kind=1&640framerate=30
A plain web page like this means success:
Return:0
Specific Panasonic models
Panasonic PI-SPW303L and BL-VT164
These cameras have odd behaviour in newer browsers that prevents entering in user credentials into the web ui. You will have to use IE/Edge to configure them. They are also accessible using ODM. They work just fine as an RTSP source, except they seem to use admin:admin as credentials for the stream no matter what they username/password is for the camera. Currently ZM ONVIF probe will not detect them even though they are valid ONVIF.
Panasonic BL-VT164
This camera marks a decidedly negative turn from the many other models that have worked extremely well in general and in ZoneMinder in particular. The new and regrettable interface is masked behind layers of Javascript, but I discovered that the 640x480 requested is received as 640x360. Thus, after many hours of searching, I found the following working settings:
- Remote Protocol: HTTP
- Remote Method: Simple
- Remote Host Name: <user>:<password>@<hostname or IP>
- Remote Host Port: 80
- Remote Host Path: /SnapshotJPEG?Resolution=640x480
- Remote Image Colours: <24 bit color>
- Capture Width (pixels): 640
- Capture Height (pixels): 360
The new firmware, which ONLY works with certain versions of Internet Explorer, is highly dysfunctional. This camera is NOT recommended.