i-PRO cameras
Install and run Stream on i-PRO Camera Application Platform
The guide below describes how to package Stream as an Adam app to be able to run it on the i-PRO cameras.
Requirements
Supported camera models
Cameras with enough resources to run Stream at a good health score are the CV52 cameras that support docker capability.
Series | Model number |
---|---|
X series(CV52) | WV-X15300* |
WV-X15500* | |
WV-X22300* | |
WV-X22500* | |
WV-X25300* | |
WV-X25500* | |
WV-X15600* | |
WV-X25600* | |
WV-X22600* | |
WV-X15700* | |
WV-X22700* | |
WV-X25700* | |
High zoom bullet | WV-X15701* |
WV-X15501* | |
WV-X15502* | |
WV-X15301* | |
WV-X15302* | |
WV-X15501* |
CV2/CV22/CV25m SoCs are collectively called ambaCV2X
. CV52 SoCs are collectively called ambaCV5X
.
Full list of the i-PRO cameras with more details.
Firmware Version
Ensure you are using the latest firmware for docker compatibility:
- Download firmware by searching your camera model in the documentation database and extract into a
.img
file. - Open camera web portal under Setup > Maintenance > Upgrade like in the image
- Click Choose file and choose the extracted
.img
file then click Execute - The upgrade process will take some time. When successful, you'll be presented with a page to update your password.
Internet Connectivity and Storage
- You need around 700MB of storage for Stream, You can increase camera storage using an SD card.
- Internet connectivity from camera is required to validate your license and download configurations, Stream
config.ini
changes will be done from Platerecognizer web portal.
Since there is a limit to the number of time data can be written to the flash memory, Using an SD Card is highly recommended. To use an SD Card in apps and containers, turn on "Ext. software mode" from the red frame below and press the Set button. Existing data will be lost.
Installing Apps on i-PRO camera
The camera applications are called AdamApps(also referred to as extensions), filename extension is .ext
.
Available installation methods:
Use Camera Web Portal (recommended)
It's quick and east to install applications from the camera web portal. Check here for steps.
If camera shows ROM error during app installation, a retry of the installation might succeed.
Use SDK Tool
The i-PRO camera SDK includes a Google Chrome extension tool (Adam Operation UI) that makes it easy to manage camera applications, check here for installation steps and how to use
Installing Stream App on camera
To install Stream, you need to install two AdamApps:
- Docker extension module needs to be installed on camera for containers to work. Request and install guide
- Stream App from Build Stream Camera App
Build Stream Camera App
Package Stream AdamApp from Docker Image
Steps tested on camera model WV-X15700-V2L.
To package an Adam App, you first need to "To become a development partner" so you can be issued a license for developing on your camera. Create your account for the first time when you access to the website from "Create a new account"
Request a developer license for your camera
Sign up on the portal then contact i-PRO with a "Development Request" for a developer license key. The SDK download page will have a link to make a request when logged in.
The following required camera details are visible on the setup page:
- Model no.
- Serial no.
- MAC address
Setup Environment
The required OS is Ubuntu 22.04 LTS or Ubuntu 20.04 LTS and the build process requires Docker with buildx
. Check environment setup instructions
Download and Setup SDK
i-PRO Camera Application Platform offers the SDK (Software Development Kit) for free to support application development. You need a physical camera to get a developer license.
Downloaded SDK from the portal site. You have to be logged in to view download links. After download, add your developer license into SDK/conf
Build
AdamAppSDK provides the environment to make building and packaging AdamApps with ease.
Follow below steps to build Stream AdamApp with your credentials:
- Download Stream AdamApp source code into your SDK path
src/adamapp-py/stream
- Pull a compatible Stream image:
docker pull platerecognizer/alpr-stream:arm-lite
- Tag compatible Stream image tag to same tag as expected by compose
docker tag platerecognizer/alpr-stream:arm-lite alpr-stream:arm-lite
, Build script fails to work with full tagplaterecognizer/*
- Edit the compose file to include your correct license key and token:
src/adamapp-py/stream/container/docker-compose.yaml
environment:
- TOKEN=STREAM_TOKEN
- LICENSE_KEY=STREAM_LICENSE_KEY - Build Stream AdamApp by running the commands in the SDK root:
This will generate
source setup_env.sh ambaCV5XCEX
./ext_docker_build.sh src/adamapp-py/streamsrc/adamapp-py/stream/stream-adam_1.1.ext
that you can install on camera.
Configure and Run Stream
All Stream configurations have to be done from the Platerecognizer dashboard. Add one camera to the license with RTSP url format:
rtsp:/<cam_ip>554/mediainput/h264/stream_1
rtsp://user:[email protected]:554/mediainput/h264/stream_1
rtsp:/<cam_ip>554/mediainput/h264/stream_2
rtsp:/<cam_ip>554/mediainput/h264/stream_3
rtsp:/<cam_ip>554/mediainput/h264/stream_4
Recommended video resolution for good HS H.264, 1280x720, 15 fps
Debugging Tools
i-PRO provides a number of debugging tools that include browser extensions that you can use to manage the apps or view container logs
-
Adam Operations UI - start, stop and uninstall apps. Installs work better from camera UI though.
-
Resource Monitor - View docker image and containers, Tail container logs, View container resource usages.
Detection results
Enable Webhooks or ParkPow in your config to receive detection results on a remote machine. We recommend enabling caching if camera's internet access is intermittent.