Difference between revisions of "Onvif Device Reference Design/Project Architecture/High Level Design"

From RidgeRun Developer Connection
Jump to: navigation, search
(High Level Design)
(High Level Design)
Line 6: Line 6:
 
The high-level design of the reference design is presented in figure 1. There are the following modules:
 
The high-level design of the reference design is presented in figure 1. There are the following modules:
 
# Base Server: This class instance the OnvifServer provided by LibOnvif and set up all its necessary information such as model, hardware ID, RTSP ports, encryption used, etc. See an example of this [[Onvif_device_server/User_Guide/Basic_Onvif_server_implementation|here]]. This Base Server makes his custom implementation of the iVideoEncoderHandelr, iVideoSourceHandler, and iRtspStreamHandler to support the custom behavior of the NVIDIA Jetson devices.
 
# Base Server: This class instance the OnvifServer provided by LibOnvif and set up all its necessary information such as model, hardware ID, RTSP ports, encryption used, etc. See an example of this [[Onvif_device_server/User_Guide/Basic_Onvif_server_implementation|here]]. This Base Server makes his custom implementation of the iVideoEncoderHandelr, iVideoSourceHandler, and iRtspStreamHandler to support the custom behavior of the NVIDIA Jetson devices.
 
 
## JetsonEncoderHandler: manages the custom encoders of the NVIDIA Jetson devices and reports them to the base server.
 
## JetsonEncoderHandler: manages the custom encoders of the NVIDIA Jetson devices and reports them to the base server.
 
## JetsonSourceHandler: manages the custom video sources of the NVIDIA Jetson devices and reports them to the base server.
 
## JetsonSourceHandler: manages the custom video sources of the NVIDIA Jetson devices and reports them to the base server.

Revision as of 08:55, 28 June 2022




Previous: Project Architecture Index Next: Project Architecture/Class Diagrams



High Level Design

The high-level design of the reference design is presented in figure 1. There are the following modules:

  1. Base Server: This class instance the OnvifServer provided by LibOnvif and set up all its necessary information such as model, hardware ID, RTSP ports, encryption used, etc. See an example of this here. This Base Server makes his custom implementation of the iVideoEncoderHandelr, iVideoSourceHandler, and iRtspStreamHandler to support the custom behavior of the NVIDIA Jetson devices.
    1. JetsonEncoderHandler: manages the custom encoders of the NVIDIA Jetson devices and reports them to the base server.
    2. JetsonSourceHandler: manages the custom video sources of the NVIDIA Jetson devices and reports them to the base server.
    3. GstJetsonStreamHandler: manages the multimedia using a GStreamer pipeline configuring it with the provided information.


  1. Default Server: This class inherits from Base Server and sets the network interface, port, and factory of the Onvif Media Client.


Figure 1: High Level Design of Onvif Reference

File:OnvifRefDesignHighLevelDiagram.png



Previous: Project Architecture Index Next: Project Architecture/Class Diagrams