ONVIF Device Reference Design - Environment Setup
Make sure you also check Onvif Device Reference Design's companion project: Onvif device server |
ONVIF Device Reference Design |
---|
Project Architecture |
Getting Started |
Reference Designs |
Customizing the Project |
Contact Us |
These steps aim to guide you through the installation and building process for the ONVIF Reference Design Project.
Dependencies
- Install Meson
pip install meson
Sometimes it doesn't work correctly when installing it, run this command to see if it installed correctly.
meson --version
- Install Ninja
pip install ninja
- Install Pre-commit
pip3 install pre-commit
- Install Doxygen
sudo apt-get install doxygen
- Install LibOnvif
Please follow the steps in How to compile and install ONVIF device server guide page.
- Install GSTD
Follow the steps in Building and Installing the GStreamer Daemon guide.
- Install RTSPsink
Follow the steps in GstRtspSink - Building the plug-in guide.
- Install Oatpp
git clone https://github.com/oatpp/oatpp.git cd oatpp/ mkdir build && cd build cmake .. make install
- Install Oatpp-openssl
git clone https://github.com/oatpp/oatpp-openssl cd oatpp-openssl cmake . sudo make install
Build ONVIF reference design
- Clone the project from its repository: ONVIF Server Reference Design
- Create a build directory within the project directory
mkdir build
- Build the application
meson build cd build
- Build the project and install
cd build ninja sudo ninja install
- To check the correct functionality, go to the src directory and run:
cd rr/src/ ./onvif-server-reference-design-version
Common Issues
Server stops without any message
If the server doesn't start and exits instantly, one of the possible reasons is that the server's OpenSSL certificates are not working. The only way to solve this is to create new CA certificates and compare them to the ones delivered with this project.
The server doesn't start and ends with a message of missing configuration
This means that the user configuration file doesn't exist. This configuration file needs to exists for the server to start, to verify if it exists run the following command
ls /usr/share/onvif_settings/ #expected output configurations.json UserSettings.txt
If it exists and continues to fail, it may mean that it doesn't have right or write permissions.