Plugin Quick Start Guide¶
This guide helps you get started with CVEDIA-RT plugins quickly.
What are Plugins?¶
CVEDIA-RT plugins are modular components that extend the platform's functionality. Each plugin provides specific capabilities like:
- Input plugins - Connect to cameras, video files, and streams
- Inference plugins - Run AI models on various hardware
- Output plugins - Export data to different destinations
- Processing plugins - Transform and analyze data
- Tracking plugins - Track objects and analyze behavior
Basic Plugin Usage¶
1. Loading a Plugin¶
Plugins are loaded automatically when CVEDIA-RT starts. They are discovered from the Plugins/ directory.
2. Using Plugins in Lua Scripts¶
Factory signatures and methods are plugin-specific. Do not use a placeholder factory name or assume that every plugin supports a generic configure method. Consult the generated Lua API for the installed RT release before adapting an example.
-- Source-backed Input example.
local instance = api.thread.getCurrentInstance()
local input = api.factory.input.create(instance, "VideoInput")
input:saveConfig({uri = "rtsp://camera.example.com/stream"})
input:setSourceFromConfig()
The release-pinned Input API exposes create, saveConfig, and setSourceFromConfig as shown. Other plugins have different factories and contracts; the category pages below provide plugin-specific guidance. Check each page's evidence status and the generated API for the installed release before adapting an example.
Plugin Categories¶
Most Common Plugins¶
| Use Case | Recommended Plugin | Quick Setup |
|---|---|---|
| IP Camera Input | GStreamerReader | Set RTSP URL |
| Video File Input | FFmpegReader | Set file path |
| NVIDIA GPU Inference | TensorRT (via Engines) | Set model path |
| Object Tracking | Tracker | Enable tracking |
| Data Export | WriteData | Set output format |
| MQTT Integration | MQTT | Configure broker |
By Platform¶
Windows¶
- All plugins except platform-specific ones
- Use Screencap for desktop capture
Linux¶
- All plugins available
- Platform-specific plugins for embedded devices
NVIDIA Jetson¶
- JetsonUtils for hardware acceleration
- JetsonVideoReader for hardware decoding
- TensorRT inference recommended
Configuration Patterns¶
JSON Configuration¶
Most plugins accept JSON configuration:
{
"pluginName": {
"parameter1": "value1",
"parameter2": 123,
"nested": {
"option": true
}
}
}
Lua Configuration¶
The object method used to apply configuration is plugin-specific. For Input, use saveConfig as shown above; do not substitute the generic example below as executable code.
local config = {
parameter1 = "value1",
parameter2 = 123,
nested = {
option = true
}
}
-- Pass this table only to the configuration method documented by the target plugin.
Common Workflows¶
Basic Video Analytics Pipeline¶
Build a pipeline by selecting compatible Input, Inference, Tracking, Zone, and Output plugins, then use the generated API for each installed component. Generic cross-plugin snippets are intentionally omitted because factory signatures and configuration methods differ.
Multi-Camera Setup¶
Create each Input module with api.factory.input.create, save its source configuration with saveConfig, and call setSourceFromConfig. Confirm the companion Inference and Output APIs in the generated release-specific interface before building a multi-camera workflow.
Troubleshooting¶
Plugin Not Loading¶
- Check plugin is in
Plugins/directory - Verify dependencies are available
- Check CVEDIA-RT logs for errors
Configuration Issues¶
- Validate JSON syntax
- Check parameter names match documentation
- Verify data types (string vs number vs boolean)
Performance Issues¶
- Check hardware requirements
- Reduce input resolution or frame rate
- Use appropriate inference precision (FP16 vs FP32)
Next Steps¶
- Browse by category - Find plugins for your specific needs
- Check examples - Look at plugin-specific examples
- Read configuration docs - Understand all available options
- Join community - Get help from other users
See Also¶
- Plugin Overview - Complete plugin listing
- Platform Compatibility - Hardware support matrix
- Creating Custom Plugins - Build your own plugins
- Lua Scripting Guide - Learn Lua scripting