WPILibC++ 2024.3.2
|
Singleton class for creating and keeping camera servers. More...
#include <cameraserver/CameraServer.h>
Static Public Member Functions | |
static cs::UsbCamera | StartAutomaticCapture () |
Start automatically capturing images to send to the dashboard. More... | |
static cs::UsbCamera | StartAutomaticCapture (int dev) |
Start automatically capturing images to send to the dashboard. More... | |
static cs::UsbCamera | StartAutomaticCapture (std::string_view name, int dev) |
Start automatically capturing images to send to the dashboard. More... | |
static cs::UsbCamera | StartAutomaticCapture (std::string_view name, std::string_view path) |
Start automatically capturing images to send to the dashboard. More... | |
static cs::MjpegServer | StartAutomaticCapture (const cs::VideoSource &camera) |
Start automatically capturing images to send to the dashboard from an existing camera. More... | |
static cs::AxisCamera | AddAxisCamera (std::string_view host) |
Adds an Axis IP camera. More... | |
static cs::AxisCamera | AddAxisCamera (const char *host) |
Adds an Axis IP camera. More... | |
static cs::AxisCamera | AddAxisCamera (const std::string &host) |
Adds an Axis IP camera. More... | |
static cs::AxisCamera | AddAxisCamera (std::span< const std::string > hosts) |
Adds an Axis IP camera. More... | |
template<typename T > | |
static cs::AxisCamera | AddAxisCamera (std::initializer_list< T > hosts) |
Adds an Axis IP camera. More... | |
static cs::AxisCamera | AddAxisCamera (std::string_view name, std::string_view host) |
Adds an Axis IP camera. More... | |
static cs::AxisCamera | AddAxisCamera (std::string_view name, const char *host) |
Adds an Axis IP camera. More... | |
static cs::AxisCamera | AddAxisCamera (std::string_view name, const std::string &host) |
Adds an Axis IP camera. More... | |
static cs::AxisCamera | AddAxisCamera (std::string_view name, std::span< const std::string > hosts) |
Adds an Axis IP camera. More... | |
template<typename T > | |
static cs::AxisCamera | AddAxisCamera (std::string_view name, std::initializer_list< T > hosts) |
Adds an Axis IP camera. More... | |
static cs::MjpegServer | AddSwitchedCamera (std::string_view name) |
Adds a virtual camera for switching between two streams. More... | |
static cs::CvSink | GetVideo () |
Get OpenCV access to the primary camera feed. More... | |
static cs::CvSink | GetVideo (const cs::VideoSource &camera) |
Get OpenCV access to the specified camera. More... | |
static cs::CvSink | GetVideo (const cs::VideoSource &camera, cs::VideoMode::PixelFormat pixelFormat) |
Get OpenCV access to the specified camera. More... | |
static cs::CvSink | GetVideo (std::string_view name) |
Get OpenCV access to the specified camera. More... | |
static cs::CvSink | GetVideo (std::string_view name, cs::VideoMode::PixelFormat pixelFormat) |
Get OpenCV access to the specified camera. More... | |
static cs::CvSource | PutVideo (std::string_view name, int width, int height) |
Create a MJPEG stream with OpenCV input. More... | |
static cs::MjpegServer | AddServer (std::string_view name) |
Adds a MJPEG server at the next available port. More... | |
static cs::MjpegServer | AddServer (std::string_view name, int port) |
Adds a MJPEG server. More... | |
static void | AddServer (const cs::VideoSink &server) |
Adds an already created server. More... | |
static void | RemoveServer (std::string_view name) |
Removes a server by name. More... | |
static cs::VideoSink | GetServer () |
Get server for the primary camera feed. More... | |
static cs::VideoSink | GetServer (std::string_view name) |
Gets a server by name. More... | |
static void | AddCamera (const cs::VideoSource &camera) |
Adds an already created camera. More... | |
static void | RemoveCamera (std::string_view name) |
Removes a camera by name. More... | |
Static Public Attributes | |
static constexpr uint16_t | kBasePort = 1181 |
CameraServer base port. More... | |
Singleton class for creating and keeping camera servers.
Also publishes camera information to NetworkTables.
|
static |
Adds an Axis IP camera.
This overload calls AddAxisCamera() with name "Axis Camera".
host | Camera host IP or DNS name (e.g. "10.x.y.11") |
|
static |
Adds an Axis IP camera.
This overload calls AddAxisCamera() with name "Axis Camera".
host | Camera host IP or DNS name (e.g. "10.x.y.11") |
|
inlinestatic |
Adds an Axis IP camera.
This overload calls AddAxisCamera() with name "Axis Camera".
hosts | Array of Camera host IPs/DNS names |
|
static |
Adds an Axis IP camera.
This overload calls AddAxisCamera() with name "Axis Camera".
hosts | Array of Camera host IPs/DNS names |
|
static |
Adds an Axis IP camera.
This overload calls AddAxisCamera() with name "Axis Camera".
host | Camera host IP or DNS name (e.g. "10.x.y.11") |
|
static |
Adds an Axis IP camera.
name | The name to give the camera |
host | Camera host IP or DNS name (e.g. "10.x.y.11") |
|
static |
Adds an Axis IP camera.
name | The name to give the camera |
host | Camera host IP or DNS name (e.g. "10.x.y.11") |
|
inlinestatic |
Adds an Axis IP camera.
name | The name to give the camera |
hosts | Array of Camera host IPs/DNS names |
|
static |
Adds an Axis IP camera.
name | The name to give the camera |
hosts | Array of Camera host IPs/DNS names |
|
static |
Adds an Axis IP camera.
name | The name to give the camera |
host | Camera host IP or DNS name (e.g. "10.x.y.11") |
|
static |
Adds an already created camera.
camera | Camera |
|
static |
Adds an already created server.
server | Server |
|
static |
Adds a MJPEG server at the next available port.
name | Server name |
|
static |
Adds a MJPEG server.
name | Server name |
port | Port number |
|
static |
Adds a virtual camera for switching between two streams.
Unlike the other addCamera methods, this returns a VideoSink rather than a VideoSource. Calling SetSource() on the returned object can be used to switch the actual source of the stream.
|
static |
Get server for the primary camera feed.
This is only valid to call after a camera feed has been added with StartAutomaticCapture() or AddServer().
|
static |
Gets a server by name.
name | Server name |
|
static |
Get OpenCV access to the primary camera feed.
This allows you to get images from the camera for image processing on the roboRIO.
This is only valid to call after a camera feed has been added with startAutomaticCapture() or addServer().
|
static |
Get OpenCV access to the specified camera.
This allows you to get images from the camera for image processing on the roboRIO.
camera | Camera (e.g. as returned by startAutomaticCapture). |
|
static |
Get OpenCV access to the specified camera.
This allows you to get images from the camera for image processing on the roboRIO.
camera | Camera (e.g. as returned by startAutomaticCapture). |
pixelFormat | The desired pixelFormat of captured frames from the camera |
|
static |
Get OpenCV access to the specified camera.
This allows you to get images from the camera for image processing on the roboRIO.
name | Camera name |
|
static |
Get OpenCV access to the specified camera.
This allows you to get images from the camera for image processing on the roboRIO.
name | Camera name |
pixelFormat | The desired pixelFormat of captured frames from the camera |
|
static |
Create a MJPEG stream with OpenCV input.
This can be called to pass custom annotated images to the dashboard.
name | Name to give the stream |
width | Width of the image being sent |
height | Height of the image being sent |
|
static |
Removes a camera by name.
name | Camera name |
|
static |
Removes a server by name.
name | Server name |
|
static |
Start automatically capturing images to send to the dashboard.
You should call this method to see a camera feed on the dashboard. If you also want to perform vision processing on the roboRIO, use getVideo() to get access to the camera images.
The first time this overload is called, it calls StartAutomaticCapture() with device 0, creating a camera named "USB Camera 0". Subsequent calls increment the device number (e.g. 1, 2, etc).
|
static |
Start automatically capturing images to send to the dashboard from an existing camera.
camera | Camera |
|
static |
Start automatically capturing images to send to the dashboard.
This overload calls StartAutomaticCapture() with a name of "USB Camera {dev}".
dev | The device number of the camera interface |
|
static |
Start automatically capturing images to send to the dashboard.
name | The name to give the camera |
dev | The device number of the camera interface |
|
static |
Start automatically capturing images to send to the dashboard.
name | The name to give the camera |
path | The device path (e.g. "/dev/video0") of the camera |
|
staticconstexpr |
CameraServer base port.