Pelco Developer Network (PDN)

Pelco SDK Use Cases

The Pelco SDK contains a set of components and classes to use for writing applications to control Pelco products and integrate with non-Pelco products and software. Initially, the Pelco SDK provided a set of prebuilt components to make Pelco features available to application developers. Later, the Object Model was introduced to simplify application development. Classes represent Pelco systems, cameras, video streams and so on.

The plan is to make all Pelco SDK features available through the Object Model and phase-out components. But during this transitional phase, your applications will likely include a combination of components and classes.

The following use cases should help you decide which SDK components and classes to use for your integration. The asterisk (*) indicates that the component has been replaced by Object Model classes.

SDK ComponentSDK Object Model ClassesUse Case

Event Arbiter

A subset of events are available to C++ applications through the Event, EventListener, and Events classes. Applications can/should continue to use the Event Arbiter and Event Manager components for full functionality.

Support all Pelco event and alarm types (motion detection, diagnostic reports, alarms, relays, video analytics)

Subscribe to a specific event and alarm type

Subscribe to System Manager Event Arbiter

Subscribe to a web service on a specific device using an IP address or UDN

Subscribe to all instances of a particular web service for all devices with a single request

Subscribe directly to a device

Renew subscription automatically

Receive events and alarms

Provide clear text event messages

Poll events

Event Manager (Layered on top of Event Arbiter to simplify event handling)

A subset of events are available to C++ applications through the Event, EventListener, and Events classes. Applications can/should continue to use the Event Arbiter and Event Manager components for full functionality.

Support all Pelco event and alarm types (motion detection, diagnostic reports, alarms, relays, video analytics)

Subscribe to a specific event type for all cameras on the Endura network

Subscribe to a specific event type for all same type of equipment on the Endura network

Subscribe to System Manager Event Arbiter

Renew subscription automatically

Receive events and alarms

Provide clear text event messages

Poll events

Endura Exporter

Additional functionality is available using the Exporter and Clip objects. These currently only work with Pelco Aggregation to export MJPEG. These classes are not a replacement for the Endura Exporter component.

Export audio and video in AVI, MP4, 3GP, MOV, PPX, or PEF format

Export video in a sequence of clips or playlist (PPX) from multiple cameras

Overlay data (timestamps, text, and pictures) onto a clip

Transcode video from H.264 to MPEG4

Run multiple exports (either in sequence or concurrently)

Poll the status of an ongoing export process

Stop an export

Export video without audio

Use Unicode strings for filenames, overlay text and camera names

gSoap

N/A

gSoap cases will mirror web service samples, but written for gSoap.

Metadata Parser

N/A

Get motion detection metadata of a video frame

Get drawing metadata of a video frame

Get timestamp of a video frame

Verify the frame with an RSA signature and other information

PTZ Wrapper

N/A

Move the camera continuously side-to-side (pan), up and down (tilt), diagaonally, zoom, and focus

Move the camera to a specific position

Control iris and focus automatically

Add, remove, and use presets

Add, remove, and use presets

Get dome position

RTSP Server (Deprecated)

N/A

View live video of unicast RTSP stream in H.264 or MPEG4

View playback video in H.264 or MPEG4

Stop playback

Pause video

Playback video forward or backward

Manage multiple streams simultaneously

System Manager Wrapper *

System and Device classes, and the system/device cache

Get the System Manager IP address and port numer either manually or automatically

Log in to or out of the System Manager

Get the list of Endura devices and their attributes available in the system

Get the System Manager time zone setting

Get the Network Time Server address

Get the ID of a web service

Get the control URL of a specific web service

Get the NVR associated with a device

Get the friendly name of a device

Get the device description file (DDF) URL for a device

Get a list of all web services available on a device

Get a specific attribute of the System Manager

Receive notification when equipment is added or removed

Get the list of device and attribute changes from the previous request

N/A

Administrator class

Manage Device Cache

Pelco API Viewer *

A combination of Display, Stream, and Camera classes

Display live video and audio (if available) of unicast or multicast RTP stream in H.264 or MPEG4

Display live video and audio (if available) of unicast or multicast RTSP stream in H.264 or MPEG4

Display playback video and audio (if available) in H.264 or MPEG4

Start and stop playback

Pause, resume, reverse, fast forward playback (RTP and RTSP streams)

Step through a video frame-by-frame forward and reverse

Playback in slow motion forward and reverse

Control audio and mute an RTP stream or playback

Activate recording on recorders of RTP stream

Display motion, timestamp, and analytics event information

Create a JPEG snapshot of a video frame

Manage multiple live and playback streams simultaneously for both RTP and RTSP streams

Query the camera or NSM to retrieve video properties of a stream

N/A

NetworkDisplay, Channel, and Camera classes

Display video on a network monitor

  

Pan, tilt, focus or zoom cameras (see PTZ Control)

Create and use presets and patterns (see PTZ Control)

Search video

Allow user to control AUX on cameras through the PTZ Wrapper

Get Absolute position

Control relative move