Northern Lights Forecast Duluth, Mn, Royal Lancaster Infirmary Consultants, Battle Of Saipan Casualty List, Articles D

This is a good reference application to start learning the capabilities of DeepStream. The increasing number of IoT devices in "smart" environments, such as homes, offices, and cities, produce seemingly endless data streams and drive many daily decisions. How to clean and restart? This function stops the previously started recording. How can I verify that CUDA was installed correctly? recordbin of NvDsSRContext is smart record bin which must be added to the pipeline. For creating visualization artifacts such as bounding boxes, segmentation masks, labels there is a visualization plugin called Gst-nvdsosd. How do I configure the pipeline to get NTP timestamps? What is maximum duration of data I can cache as history for smart record? Can Gst-nvinferserver support models across processes or containers? Developers can start with deepstream-test1 which is almost like a DeepStream hello world. Last updated on Sep 10, 2021. DeepStream | Procurement Software Produce cloud-to-device event messages, Transfer Learning Toolkit - Getting Started, Transfer Learning Toolkit - Specification Files, Transfer Learning Toolkit - StreetNet (TLT2), Transfer Learning Toolkit - CovidNet (TLT2), Transfer Learning Toolkit - Classification (TLT2), Custom Model - Triton Inference Server Configurations, Custom Model - Custom Parser - Yolov2-coco, Custom Model - Custom Parser - Tiny Yolov2, Custom Model - Custom Parser - EfficientDet, Custom Model - Sample Custom Parser - Resnet - Frcnn - Yolov3 - SSD, Custom Model - Sample Custom Parser - SSD, Custom Model - Sample Custom Parser - FasterRCNN, Custom Model - Sample Custom Parser - Yolov4. By performing all the compute heavy operations in a dedicated accelerator, DeepStream can achieve highest performance for video analytic applications. What is the difference between batch-size of nvstreammux and nvinfer? Deepstream 5 Support and Smart Record Issue #250 prominenceai When executing a graph, the execution ends immediately with the warning No system specified. How can I know which extensions synchronized to registry cache correspond to a specific repository? Metadata propagation through nvstreammux and nvstreamdemux. How can I determine whether X11 is running? To activate this functionality, populate and enable the following block in the application configuration file: While the application is running, use a Kafka broker to publish the above JSON messages on topics in the subscribe-topic-list to start and stop recording. deepstreamHub | sync persistent high-speed data between any device It takes the streaming data as input - from USB/CSI camera, video from file or streams over RTSP, and uses AI and computer vision to generate insights from pixels for better understanding of the environment. DeepStream Reference Application - deepstream-app DeepStream 6.2 By executing this consumer.py when AGX Xavier is producing the events, we now can read the events produced from AGX Xavier: Note that messages we received earlier is device-to-cloud messages produced from AGX Xavier. Are multiple parallel records on same source supported? The end-to-end application is called deepstream-app. deepstream smart record. After pulling the container, you might open the notebook deepstream-rtsp-out.ipynb and create a RTSP source. NVIDIA introduced Python bindings to help you build high-performance AI applications using Python. Why do I see the below Error while processing H265 RTSP stream? DeepStream pipelines can be constructed using Gst-Python, the GStreamer frameworks Python bindings. mp4, mkv), Troubleshooting in NvDCF Parameter Tuning, Frequent tracking ID changes although no nearby objects, Frequent tracking ID switches to the nearby objects, Error while running ONNX / Explicit batch dimension networks, DeepStream plugins failing to load without DISPLAY variable set when launching DS dockers, 1. Adding a callback is a possible way. This parameter will increase the overall memory usages of the application. Gst-nvdewarper plugin can dewarp the image from a fisheye or 360 degree camera. What is batch-size differences for a single model in different config files (. What should I do if I want to set a self event to control the record? Records are the main building blocks of deepstream's data-sync capabilities. There are two ways in which smart record events can be generated - either through local events or through cloud messages. The graph below shows a typical video analytic application starting from input video to outputting insights. To start with, lets prepare a RTSP stream using DeepStream. MP4 and MKV containers are supported. . The registry failed to perform an operation and reported an error message. AGX Xavier consuming events from Kafka Cluster to trigger SVR. Whats the throughput of H.264 and H.265 decode on dGPU (Tesla)? How to find out the maximum number of streams supported on given platform? Why do I observe: A lot of buffers are being dropped. Configure Kafka server (kafka_2.13-2.8.0/config/server.properties): To host Kafka server, we open first terminal: Open a third terminal, and create a topic (You may think of a topic as a YouTube Channel which others people can subscribe to): You might check topic list of a Kafka server: Now, Kafka server is ready for AGX Xavier to produce events. In existing deepstream-test5-app only RTSP sources are enabled for smart record. deepstream.io Record Records are one of deepstream's core features. How can I run the DeepStream sample application in debug mode? How can I determine the reason? If you dont have any RTSP cameras, you may pull DeepStream demo container . How do I obtain individual sources after batched inferencing/processing? What if I dont set video cache size for smart record? When running live camera streams even for few or single stream, also output looks jittery? How can I determine the reason? See the deepstream_source_bin.c for more details on using this module. How does secondary GIE crop and resize objects? mp4, mkv), DeepStream plugins failing to load without DISPLAY variable set when launching DS dockers, On Jetson, observing error : gstnvarguscamerasrc.cpp, execute:751 No cameras available. In existing deepstream-test5-app only RTSP sources are enabled for smart record. deepstream-services-library/overview.md at master - GitHub MP4 and MKV containers are supported. How to use the OSS version of the TensorRT plugins in DeepStream? For unique names every source must be provided with a unique prefix. smart-rec-duration= How do I obtain individual sources after batched inferencing/processing? The deepstream-test3 shows how to add multiple video sources and then finally test4 will show how to IoT services using the message broker plugin. #sensor-list-file=dstest5_msgconv_sample_config.txt, Install librdkafka (to enable Kafka protocol adaptor for message broker), Run deepstream-app (the reference application), Remove all previous DeepStream installations, Run the deepstream-app (the reference application), dGPU Setup for RedHat Enterprise Linux (RHEL), DeepStream Triton Inference Server Usage Guidelines, DeepStream Reference Application - deepstream-app, Expected Output for the DeepStream Reference Application (deepstream-app), DeepStream Reference Application - deepstream-test5 app, IoT Protocols supported and cloud configuration, DeepStream Reference Application - deepstream-audio app, ONNX Parser replace instructions (x86 only), DeepStream Reference Application on GitHub, Implementing a Custom GStreamer Plugin with OpenCV Integration Example, Description of the Sample Plugin: gst-dsexample, Enabling and configuring the sample plugin, Using the sample plugin in a custom application/pipeline, Implementing Custom Logic Within the Sample Plugin, Custom YOLO Model in the DeepStream YOLO App, IModelParser Interface for Custom Model Parsing, Configure TLS options in Kafka config file for DeepStream, Choosing Between 2-way TLS and SASL/Plain, Application Migration to DeepStream 5.0 from DeepStream 4.X, Major Application Differences with DeepStream 4.X, Running DeepStream 4.x compiled Apps in DeepStream 5.0, Compiling DeepStream 4.X Apps in DeepStream 5.0, User/Custom Metadata Addition inside NvDsBatchMeta, Adding Custom Meta in Gst Plugins Upstream from Gst-nvstreammux, Adding metadata to the plugin before Gst-nvstreammux, Gst-nvinfer File Configuration Specifications, To read or parse inference raw tensor data of output layers, Gst-nvinferserver File Configuration Specifications, Low-Level Tracker Library Comparisons and Tradeoffs, nvds_msgapi_connect(): Create a Connection, nvds_msgapi_send() and nvds_msgapi_send_async(): Send an event, nvds_msgapi_subscribe(): Consume data by subscribing to topics, nvds_msgapi_do_work(): Incremental Execution of Adapter Logic, nvds_msgapi_disconnect(): Terminate a Connection, nvds_msgapi_getversion(): Get Version Number, nvds_msgapi_get_protocol_name(): Get name of the protocol, nvds_msgapi_connection_signature(): Get Connection signature, Connection Details for the Device Client Adapter, Connection Details for the Module Client Adapter, nv_msgbroker_connect(): Create a Connection, nv_msgbroker_send_async(): Send an event asynchronously, nv_msgbroker_subscribe(): Consume data by subscribing to topics, nv_msgbroker_disconnect(): Terminate a Connection, nv_msgbroker_version(): Get Version Number, You are migrating from DeepStream 4.0+ to DeepStream 5.0, NvDsBatchMeta not found for input buffer error while running DeepStream pipeline, The DeepStream reference application fails to launch, or any plugin fails to load, Application fails to run when the neural network is changed, The DeepStream application is running slowly (Jetson only), The DeepStream application is running slowly, NVIDIA Jetson Nano, deepstream-segmentation-test starts as expected, but crashes after a few minutes rebooting the system, Errors occur when deepstream-app is run with a number of streams greater than 100, Errors occur when deepstream-app fails to load plugin Gst-nvinferserver on dGPU only, Tensorflow models are running into OOM (Out-Of-Memory) problem, Memory usage keeps on increasing when the source is a long duration containerized files(e.g. Typeerror hoverintent uncaught typeerror object object method Jobs Can Gst-nvinferserver support inference on multiple GPUs? The DeepStream Python application uses the Gst-Python API action to construct the pipeline and use probe functions to access data at various points in the pipeline. For example, the record starts when theres an object being detected in the visual field. It returns the session id which later can be used in NvDsSRStop() to stop the corresponding recording. In the deepstream-test5-app, to demonstrate the use case smart record Start / Stop events are generated every interval second. The latest release of #NVIDIADeepStream SDK version 6.2 delivers powerful enhancements such as state-of-the-art multi-object trackers, support for lidar and This is currently supported for Kafka. Custom broker adapters can be created. How to use nvmultiurisrcbin in a pipeline, 3.1 REST API payload definitions and sample curl commands for reference, 3.1.1 ADD a new stream to a DeepStream pipeline, 3.1.2 REMOVE a new stream to a DeepStream pipeline, 4.1 Gst Properties directly configuring nvmultiurisrcbin, 4.2 Gst Properties to configure each instance of nvurisrcbin created inside this bin, 4.3 Gst Properties to configure the instance of nvstreammux created inside this bin, 5.1 nvmultiurisrcbin config recommendations and notes on expected behavior, 3.1 Gst Properties to configure nvurisrcbin, You are migrating from DeepStream 6.0 to DeepStream 6.2, Application fails to run when the neural network is changed, The DeepStream application is running slowly (Jetson only), The DeepStream application is running slowly, Errors occur when deepstream-app fails to load plugin Gst-nvinferserver, Tensorflow models are running into OOM (Out-Of-Memory) problem, Troubleshooting in Tracker Setup and Parameter Tuning, Frequent tracking ID changes although no nearby objects, Frequent tracking ID switches to the nearby objects, Error while running ONNX / Explicit batch dimension networks, My component is not visible in the composer even after registering the extension with registry. Which Triton version is supported in DeepStream 5.1 release? See the C/C++ Sample Apps Source Details and Python Sample Apps and Bindings Source Details sections to learn more about the available apps. What are the recommended values for. Are multiple parallel records on same source supported? Ive already run the program with multi streams input while theres another question Id like to ask. How can I interpret frames per second (FPS) display information on console? DeepStream builds on top of several NVIDIA libraries from the CUDA-X stack such as CUDA, TensorRT, NVIDIA Triton Inference server and multimedia libraries. The params structure must be filled with initialization parameters required to create the instance. Here startTime specifies the seconds before the current time and duration specifies the seconds after the start of recording. For the output, users can select between rendering on screen, saving the output file, or streaming the video out over RTSP. Observing video and/or audio stutter (low framerate), 2. DeepStream is a streaming analytic toolkit to build AI-powered applications. Once frames are batched, it is sent for inference. deepstream-test5 sample application will be used for demonstrating SVR. Smart-rec-container=<0/1> Batching is done using the Gst-nvstreammux plugin. Smart video recording (SVR) is an event-based recording that a portion of video is recorded in parallel to DeepStream pipeline based on objects of interests or specific rules for recording. Are multiple parallel records on same source supported? To enable audio, a GStreamer element producing encoded audio bitstream must be linked to the asink pad of the smart record bin. What types of input streams does DeepStream 5.1 support? Why do I observe a lot of buffers being dropped when running deepstream-nvdsanalytics-test application on Jetson Nano ? Streaming data can come over the network through RTSP or from a local file system or from a camera directly. Copyright 2020-2021, NVIDIA. This parameter will ensure the recording is stopped after a predefined default duration. To read more about these apps and other sample apps in DeepStream, see the C/C++ Sample Apps Source Details and Python Sample Apps and Bindings Source Details. Do I need to add a callback function or something else? What is the approximate memory utilization for 1080p streams on dGPU? Why am I getting following waring when running deepstream app for first time? Why is that? deepstream smart record # default duration of recording in seconds. How can I display graphical output remotely over VNC? Freelancer projects vlsi embedded Jobs, Employment | Freelancer Below diagram shows the smart record architecture: From DeepStream 6.0, Smart Record also supports audio. KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR, KAFKA_CONFLUENT_LICENSE_TOPIC_REPLICATION_FACTOR, KAFKA_CONFLUENT_BALANCER_TOPIC_REPLICATION_FACTOR, CONFLUENT_METRICS_REPORTER_BOOTSTRAP_SERVERS, CONFLUENT_METRICS_REPORTER_TOPIC_REPLICAS, 3. You may also refer to Kafka Quickstart guide to get familiar with Kafka. How can I determine the reason? Bosch Rexroth on LinkedIn: #rexroth #assembly This function starts writing the cached audio/video data to a file. Running with an X server by creating virtual display, 2 . Once the frames are in the memory, they are sent for decoding using the NVDEC accelerator. The performance benchmark is also run using this application. What trackers are included in DeepStream and which one should I choose for my application? One of the key capabilities of DeepStream is secure bi-directional communication between edge and cloud. GstBin which is the recordbin of NvDsSRContext must be added to the pipeline. To enable smart record in deepstream-test5-app set the following under [sourceX] group: To enable smart record through only cloud messages, set smart-record=1 and configure [message-consumerX] group accordingly. Deepstream - The Berlin startup for a next-den realtime platform Why do I observe a lot of buffers being dropped When running deepstream-nvdsanalytics-test application on Jetson Nano ? However, when configuring smart-record for multiple sources the duration of the videos are no longer consistent (different duration for each video). Size of cache in seconds. Whats the throughput of H.264 and H.265 decode on dGPU (Tesla)? deepstream smart record. Observing video and/or audio stutter (low framerate), 2. Can I record the video with bounding boxes and other information overlaid? What are different Memory transformations supported on Jetson and dGPU? Regarding git source code compiling in compile_stage, Is it possible to compile source from HTTP archives? My DeepStream performance is lower than expected. Why is that? How can I construct the DeepStream GStreamer pipeline? If you are familiar with gstreamer programming, it is very easy to add multiple streams. Today, Deepstream has become the silent force behind some of the world's largest banks, communication, and entertainment companies. Gst-nvmsgconv converts the metadata into schema payload and Gst-nvmsgbroker establishes the connection to the cloud and sends the telemetry data. DeepStream - Smart Video Recording DeepStream - IoT Edge DeepStream - Demos DeepStream - Common Issues Transfer Learning Toolkit - Getting Started Transfer Learning Toolkit - Specification Files Transfer Learning Toolkit - StreetNet (TLT2) Transfer Learning Toolkit - CovidNet (TLT2) Transfer Learning Toolkit - Classification (TLT2) For deployment at scale, you can build cloud-native, DeepStream applications using containers and orchestrate it all with Kubernetes platforms. When running live camera streams even for few or single stream, also output looks jittery? Call NvDsSRDestroy() to free resources allocated by this function. Do I need to add a callback function or something else? How can I run the DeepStream sample application in debug mode? How to minimize FPS jitter with DS application while using RTSP Camera Streams? Can Jetson platform support the same features as dGPU for Triton plugin? Can Gst-nvinfereserver (DeepSream Triton plugin) run on Nano platform? The deepstream-test2 progresses from test1 and cascades secondary network to the primary network. Why does the deepstream-nvof-test application show the error message Device Does NOT support Optical Flow Functionality if run with NVIDIA Tesla P4 or NVIDIA Jetson Nano, Jetson TX2, or Jetson TX1? tensorflow python framework errors impl notfounderror no cpu devices are available in this process To activate this functionality, populate and enable the following block in the application configuration file: While the application is running, use a Kafka broker to publish the above JSON messages on topics in the subscribe-topic-list to start and stop recording. How can I interpret frames per second (FPS) display information on console? Can Gst-nvinfereserver (DeepSream Triton plugin) run on Nano platform? To make it easier to get started, DeepStream ships with several reference applications in both in C/C++ and in Python. What are the sample pipelines for nvstreamdemux? For example, if t0 is the current time and N is the start time in seconds that means recording will start from t0 N. For it to work, the cache size must be greater than the N. smart-rec-default-duration= Smart Video Record DeepStream 6.2 Release documentation To learn more about deployment with dockers, see the Docker container chapter. What are the sample pipelines for nvstreamdemux? At the heart of deepstreamHub lies a powerful data-sync engine: schemaless JSON documents called "records" can be manipulated and observed by backend-processes or clients. Can I record the video with bounding boxes and other information overlaid? In the deepstream-test5-app, to demonstrate the use case smart record Start / Stop events are generated every interval second. Tensor data is the raw tensor output that comes out after inference. Yes, on both accounts. DeepStream ships with several out of the box security protocols such as SASL/Plain authentication using username/password and 2-way TLS authentication. A video cache is maintained so that recorded video has frames both before and after the event is generated. By default, Smart_Record is the prefix in case this field is not set. Why do I see the below Error while processing H265 RTSP stream? World Book of Record Winner December 2020, Claim: Maximum number of textbooks published with ISBN number with a minimum period during COVID -19 lockdown period in India (between April 11, 2020, and July 01, 2020). To learn more about bi-directional capabilities, see the Bidirectional Messaging section in this guide. Why is the Gst-nvstreammux plugin required in DeepStream 4.0+? All the individual blocks are various plugins that are used. By executing this trigger-svr.py when AGX is producing the events, we now can not only consume the messages from AGX Xavier but also produce JSON messages to in Kafka server which will be subscribed by AGX Xavier to trigger SVR. How can I specify RTSP streaming of DeepStream output? In existing deepstream-test5-app only RTSP sources are enabled for smart record. Each NetFlow record . How to find the performance bottleneck in DeepStream? Following are the default values of configuration parameters: Following fields can be used under [sourceX] groups to configure these parameters. Can I stop it before that duration ends? Please make sure you understand how to migrate your DeepStream 5.1 custom models to DeepStream 6.0 before you start. This button displays the currently selected search type. The next step is to batch the frames for optimal inference performance. Size of video cache in seconds. smart-rec-cache= This application is covered in greater detail in the DeepStream Reference Application - deepstream-app chapter. How to measure pipeline latency if pipeline contains open source components. Why do some caffemodels fail to build after upgrading to DeepStream 6.0? If you are trying to detect an object, this tensor data needs to be post-processed by a parsing and clustering algorithm to create bounding boxes around the detected object. deepstream.io I started the record with a set duration. Why am I getting ImportError: No module named google.protobuf.internal when running convert_to_uff.py on Jetson AGX Xavier? Why am I getting ImportError: No module named google.protobuf.internal when running convert_to_uff.py on Jetson AGX Xavier? The params structure must be filled with initialization parameters required to create the instance. With a lightning-fast response time - that's always free of charge -our customer success team goes above and beyond to make sure our clients have the best RFx experience possible . From the pallet rack to workstation, #Rexroth&#39;s MP1000R mobile robot offers a smart, easy-to-implement material transport solution to help you boost How can I get more information on why the operation failed? Only the data feed with events of importance is recorded instead of always saving the whole feed. Why does the RTSP source used in gst-launch pipeline through uridecodebin show blank screen followed by the error -. Call NvDsSRDestroy() to free resources allocated by this function. This is the time interval in seconds for SR start / stop events generation. How do I configure the pipeline to get NTP timestamps? Why does my image look distorted if I wrap my cudaMalloced memory into NvBufSurface and provide to NvBufSurfTransform? My component is getting registered as an abstract type. Why am I getting following warning when running deepstream app for first time? And once it happens, container builder may return errors again and again. Gst-nvvideoconvert plugin can perform color format conversion on the frame. #sensor-list-file=dstest5_msgconv_sample_config.txt, Install librdkafka (to enable Kafka protocol adaptor for message broker), Run deepstream-app (the reference application), Remove all previous DeepStream installations, Run the deepstream-app (the reference application), dGPU Setup for RedHat Enterprise Linux (RHEL), How to visualize the output if the display is not attached to the system, 1 . Can Gst-nvinferserver support inference on multiple GPUs? Does DeepStream Support 10 Bit Video streams? Sink plugin shall not move asynchronously to PAUSED, nvds_msgapi_connect(): Create a Connection, nvds_msgapi_send() and nvds_msgapi_send_async(): Send an event, nvds_msgapi_subscribe(): Consume data by subscribing to topics, nvds_msgapi_do_work(): Incremental Execution of Adapter Logic, nvds_msgapi_disconnect(): Terminate a Connection, nvds_msgapi_getversion(): Get Version Number, nvds_msgapi_get_protocol_name(): Get name of the protocol, nvds_msgapi_connection_signature(): Get Connection signature, Connection Details for the Device Client Adapter, Connection Details for the Module Client Adapter, nv_msgbroker_connect(): Create a Connection, nv_msgbroker_send_async(): Send an event asynchronously, nv_msgbroker_subscribe(): Consume data by subscribing to topics, nv_msgbroker_disconnect(): Terminate a Connection, nv_msgbroker_version(): Get Version Number, DS-Riva ASR Yaml File Configuration Specifications, DS-Riva TTS Yaml File Configuration Specifications, You are migrating from DeepStream 5.x to DeepStream 6.0, NvDsBatchMeta not found for input buffer error while running DeepStream pipeline, The DeepStream reference application fails to launch, or any plugin fails to load, Application fails to run when the neural network is changed, The DeepStream application is running slowly (Jetson only), The DeepStream application is running slowly, NVIDIA Jetson Nano, deepstream-segmentation-test starts as expected, but crashes after a few minutes rebooting the system, Errors occur when deepstream-app is run with a number of streams greater than 100, Errors occur when deepstream-app fails to load plugin Gst-nvinferserver, Tensorflow models are running into OOM (Out-Of-Memory) problem, Memory usage keeps on increasing when the source is a long duration containerized files(e.g. Yair Meidan, Ph.D. - Senior Data Scientist / Applied ML Researcher userData received in that callback is the one which is passed during NvDsSRStart(). deepstream.io I started the record with a set duration. It takes the streaming data as input - from USB/CSI camera, video from file or streams over RTSP, and uses AI and computer vision to generate insights from pixels for better understanding of the environment. Why is that? Following are the default values of configuration parameters: Following fields can be used under [sourceX] groups to configure these parameters. To enable smart record in deepstream-test5-app set the following under [sourceX] group: To enable smart record through only cloud messages, set smart-record=1 and configure [message-consumerX] group accordingly. If you set smart-record=2, this will enable smart record through cloud messages as well as local events with default configurations. The DeepStream 360d app can serve as the perception layer that accepts multiple streams of 360-degree video to generate metadata and parking-related events. To enable smart record in deepstream-test5-app set the following under [sourceX] group: smart-record=<1/2> It uses same caching parameters and implementation as video. What is the GPU requirement for running the Composer? How can I construct the DeepStream GStreamer pipeline? See the deepstream_source_bin.c for more details on using this module. What is the recipe for creating my own Docker image? In case duration is set to zero, recording will be stopped after defaultDuration seconds set in NvDsSRCreate(). kafka_2.13-2.8.0/config/server.properties, configs/test5_dec_infer-resnet_tracker_sgie_tiled_display_int8.txt, #Type - 1=FakeSink 2=EglSink 3=File 4=UDPSink 5=nvoverlaysink 6=MsgConvBroker, #(0): PAYLOAD_DEEPSTREAM - Deepstream schema payload, #(1): PAYLOAD_DEEPSTREAM_MINIMAL - Deepstream schema payload minimal, #(257): PAYLOAD_CUSTOM - Custom schema payload, #msg-broker-config=../../deepstream-test4/cfg_kafka.txt, # do a dummy poll to retrieve some message, 'HWY_20_AND_LOCUST__EBA__4_11_2018_4_59_59_508_AM_UTC-07_00', 'Vehicle Detection and License Plate Recognition', "HWY_20_AND_LOCUST__EBA__4_11_2018_4_59_59_508_AM_UTC-07_00", test5_dec_infer-resnet_tracker_sgie_tiled_display_int8.txt, #Type - 1=CameraV4L2 2=URI 3=MultiURI 4=RTSP, # smart record specific fields, valid only for source type=4, # 0 = disable, 1 = through cloud events, 2 = through cloud + local events.