Stream is a highly-accurate ALPR software that processes live camera or video feeds quickly & efficiently. Stream runs on-premise on a Windows, Linux, Mac or Jetson device.
First install Docker on your machine. See the system requirements.
- Docker Windows install instructions. Are you stuck? Check our FAQ for help.
- Docker Linux install instructions
There are 2 ways you can install Stream:
- Using the PR Installer (Intel x86 only). This is the preferred path if you are not as conversant with Docker.
- Using the Manual steps. This is the preferred path if you are conversant with Docker.
We recommend using the Plate Recognizer Installer.
We have created a special version of our Snapshot SDK for Thailand (understands Thai characters), Germany and Austria (identifies umlauts, space gaps), and specific hardware devices. These require Manual Installation Steps. Please see our list of Docker Images.
To update to a newer version of Stream, just run the following command then restart the container:
docker container stop streamdocker pull platerecognizer/alpr-stream:latest
config.ini, you can run Stream.
The default install will try to process a stream from the following url
rtsp://192.168.0.108:8080/video/h264 which might not be existing on your enviroment
so you need to edit the config.ini to update the RTSP url or process a video file.
Check how to update the configurations.
If you are using Linux (e.g. Ubuntu), run in the terminal:
docker run --restart="unless-stopped" -t --name stream \ -v /home/kyt/documents/stream:/user-data --user `id -u`:`id -g` \ -e LICENSE_KEY=XXXXX -e TOKEN=YYYYY platerecognizer/alpr-stream
If you are using Linux on Windows, run in CMD:
docker run --restart="unless-stopped" -t --name stream -v c:\users\kyt\documents\stream:/user-data -e LICENSE_KEY=XXXXX -e TOKEN=YYYYY platerecognizer/alpr-stream
If you are using Stream for Thai vehicles then you have to use a different image tag:
docker run --restart="unless-stopped" -t --name stream -v c:\users\kyt\documents\stream:/user-data -e LICENSE_KEY=XXXXX -e TOKEN=YYYYY platerecognizer/alpr-stream:thailand
If you are using a Jetson device, make sure to include
--runtime nvidia and
--group-add video. This image is built for Jetpack 4.6 using it with another version may trigger errors. Need help? See our Jetson guide.
docker run --restart="unless-stopped" --runtime nvidia -t --name stream \ -v /home/kyt/documents/stream:/user-data --privileged --group-add video \ --user `id -u`:`id -g` -e LICENSE_KEY=XXXXX -e TOKEN=YYYYY platerecognizer/alpr-stream:jetson
In the above commands, we included
--restart="unless-stopped" so Stream restarts automatically (upon system reboot or restart of Docker),
unless you manually stop it by running
docker stop <container-name-or-id>.
This works great when combined with the
-d option so that Stream runs in the background.
When you run the command, you should get an output similar to this:
INFO:root:Plate Recognizer Stream v1.27.0INFO:root:Loading detection zones.INFO:root:Expires on 2022-01-07T06:55:00Z.INFO:root:This license supports up to 20 camera(s).INFO:camera-1:2021-09-02T18:10:07+00:00: Starting Camera OneINFO:camera-1:2021-09-02T18:10:13+00:00: Model Optimization (can take up to 3 minutes)...INFO:camera-1:2021-09-02T18:10:13+00:00: Health Score: 100%
When Stream runs, You will see:
- Images in camera-1_screenshots
- Decoded license plates with timestamp in CSV file
- The FPS refers to the frames per second that your machine is processing the video or camera feed. Example: INFO:camera-1:2021-08-23: Health Score: 100%
- There’s no need to worry if Stream is showing 4-6 FPS for situations where vehicles are driving fairly slow, such as 20-35 mph.