VideoOS.Platform.Data Namespace Reference

Namespaces

namespace  HardwareDeviceDefinitions
 
namespace  MediaDataHelpers
 
namespace  MediaProviderInternal
 
namespace  MetadataSuppliersInternal
 

Classes

class  AccessControlEvent
 The AccessControlEvent class is used for events generated with access control plugins. More...
 
class  Alarm
 The representation of a Milestone alarm. More...
 
class  AlarmUpdateKey
 This class specifies the available keys when doing an alarm update. More...
 
class  AlertConverter
 Allows for conversion from legacy MAD format to MAD format version 2.5. More...
 
class  AlertData
 This is simply a reference to the EventData structure, that is used to return the result. More...
 
class  AlertDataSource
 Alerts are no longer supported. More...
 
class  AnalyticsEvent
 An implementation of the BaseEvent with more relevant information when an Analytics oriented event has occurred. More...
 
class  AnalyticsObject
 The representation of an analytics object. More...
 
class  AnalyticsObjectList
 A list of analytics objects. More...
 
class  AsyncResultEventArgs
 The result of a Async operation. More...
 
class  AudioStreamPlayer
 Streams PCM data from an input stream to the OutgoingSpeakerController. More...
 
class  AVIExporter
 This class will use environment specific implementation to export either one video stream with zero or more audio streams, or multiple video streams, to an AVI file. More...
 
class  BaseEvent
 The BaseEvent, containing information common for all Milestone events. Notice that several overriden classes exists that may be more useful in a given situation, e.g. AnalyticsEvent or EventData. More...
 
class  BitmapData
 Contains the Bitmap information. More...
 
class  BitmapDataResult
 The result type received when using the ThumbnailQueue to fetch a thumbnail. The type has properties to indicate if an error occurred, and the actual data (if no error occurred). More...
 
class  BitmapVideoSource
 BitmapVideoSource gets video image formatted as Bitmaps.
This class is NOT thread safe, and all calls to these methods MUST be coming from same thread. When getting images from the server, it should be considered that the Get() method can take some time and is not ideal to execute on a UI thread.
Only supported in Smart Client and standalone environments. More...
 
class  BitmapVideoSourceImplementer
 BitmapVideoSourceImplementer gets video image formatted as Bitmaps.
This class is NOT thread safe, and all calls to these methods MUST be coming from same thread. When getting images from the server, it should be considered that the Get() method can take some time and is not ideal to execute on a UI thread.
 
class  Bookmark
 The Bookmark class represents a bookmark instance. More...
 
class  BookmarkReference
 The result of getting a new bookmark reference. This class is returned as a result for the BookmarkGetNewReference method. More...
 
class  BookmarkService
 Provides access to the bookmark service of the ServerCommandService.
Note that this service is only available on the high-end XProtect Corporate products.
For the products where it is not supported, each method entry is ignored and a single message is logged in the MIP log.

The methods of this service is invoked through the singleton reference 'Instance'.
E.g. A new bookmark may be created using the statement:
Bookmark bookmark1 = BookmarkService.Instance.BookmarkCreate(cameraFqid, timeBegin, timeTrigger, timeEnd, reference, header, description);

The 'Bookmark' class contains all the information related to the new bookmark, especially the BookmarkFQID property, which holds the unique identification of the new bookmark.

Existing bookmarks may be queried by BookmarkSearchTime or BookmarkSearchFromBookmark. BookmarkSearchTime searches for bookmarks within a specific time interval. BookmarkSearchFromBookmark begins the search from the time right after a specific existing bookmark.
The search may take several seconds. Therefore it may be relevant to use the asynchronous equivalents BookmarkSearchTimeAsync and BookmarkSearchFromBookmarkAsync in stead.


A known bookmark may be quieried by means of the BookmarkGet method. More...
 
class  BoundingBox
 The representation of a bounding box, describing a rectangle in normalized coordinates within the scene. More...
 
class  CameraDeviceDefinition
 This class is responsible for describing the parameters for a single camera device. More...
 
class  DataCapability
 This class is responsible for describing the parameters for a data capability, which takes integer values. More...
 
class  DataSource
 An abstract class to be used for implementation of a DataSource.
Within the MIP Environment there are currently these built-in implementations:
AlertDataSource - to get access to video alerts
SequenceDataSource - to get access to recorded video related sequence information
StreamDataSource - to get the configured streams on a camera
MetadataSource - to get the configured metadata stream information on a metadata item


If a plug-in can provide list of data related to a specific Item, implementation of this class can be used.

Construction can be performed in two ways:
Call the GetDataSource() on the owning Item
Construct the correct class based on the Item at hand
More...
 
class  DataType
 Represents a type of Data being provided by a DataSource. More...
 
class  DBExporter
 Class to perform a database export from a VMS server to a local disk. More...
 
class  DirectSpeakerController
 The DirectSpeakerController sends an audio stream directly to an outgoing speaker. The audio data is transported "as is", without adjusting parameters like . More...
 
class  DirectSpeakerControllerExt
 Extension to DirectSpeakerController The DirectSpeakerControllerExt sends an audio stream directly to an outgoing speaker. The audio data is transported "as is", without adjusting parameters. Added error code and device id properties. More...
 
class  EnumCapability
 This class is responsible for describing the parameters for an enum capability, which can only take discrete predefined values. More...
 
class  EnumCapabilityValue
 This class is responsible for describing one of the allowed values for an enum capability. Each value is selectable in the drop-down list for the enum capability. More...
 
class  EventData
 The EventData contains a complete set of information for a specific event. It is used for some DataSources as well as for EventServer integration. More...
 
class  EventGroup
 This class is used to group EventTypes. More...
 
class  EventHeader
 The representation of an event header containing information common for all Milestone events.
When using this class for creation of events or alarms, please be aware that Message is to be considered the type of the event/alarm and thus should not be unique for each event/alarm, but rather common between all events/alarms of the same type.
More...
 
class  EventHeaderTypes
 Contains the built-in types used in the EventHeader.Type on the BaseEvent class. Partners are welcome to use their own types.
These types can be used to filter message reception of type level, instead of receiving all messages, when using the MessageCommunication classes. VideoOS.Platform.Messaging.CommunicationIdFilter constructor for more on usage. More...
 
class  EventSequence
 Contain image and video reference. More...
 
class  EventSource
 The source of the event. This can represent e.g. a camera, a microphone, a user-defined event, etc. More...
 
class  EventType
 This class is used to define Event Types which an VideoOS.Platform.Admin.ItemManager can deliver to the Event Server using the method GetKnownEventTypes(CultureInfo culture). Event Types are used in defining the events, which can trigger alarms. More...
 
class  FaultDevice
 Error state of processed marked data. More...
 
class  FreeFormBaseEvent
 The FreeFormBaseEvent is used to store events with arbitrary JSON data. FreeFormBaseEvent is for internal use only. Do not use. More...
 
class  GenericData
 Contains the Generic Data as bytes. More...
 
class  GenericTranscodedVideoSource
 GenericTranscodedVideoSource - generic class to dela with transoded sources
This class is NOT thread safe, and all calls to these methods MUST be coming from same thread.
When getting images from the server, it should be considered that the Get() method can take some time and is not ideal to execute on a UI thread.
 
class  GenericVideoSource
 BaseVideoSource in abstract class for video and audio sources. More...
 
class  HardwareDefinition
 This class represents a piece of hardware that can added to a runnig system using the MIP driver. More...
 
class  IAudioRecorder
 This class is a base class for audio recorder implementations.
In the .Net Library there is one implementation, for recording audio from a PC attached microphone. More...
 
interface  ICancelableRequest
 Defines a cancelable thumbnail queue request. More...
 
interface  IDirectSpeakerController
 Interface of DirectSpeakerController sends an audio stream directly to an outgoing speaker. More...
 
interface  IDirectSpeakerControllerExt
 
interface  IExporter
 The common interface used by DBExporter and AVIExporter. More...
 
interface  IInternalCommandServiceImplementer
 Interface for communication with InternalCommandService. Used by instances of BaseVideoSource. More...
 
class  InternalCommandServiceImplementerBitmap
 
class  InternalCommandServiceImplementerJpegData
 
class  InternalCommandServiceImplementerPcmAudioDataList
 
interface  IPcmAudioData
 Contains the specific data for audio data. More...
 
class  ItemRequestQueue
 Queue that is used to make multiple item related server requests in a controlled manor. Using this queue in the right way will throttle the server requests to ensure that resources are not exhausted. Currently item of type camera, microphone, speaker metadata is supported. More...
 
interface  IThumbnailQueueDiagnostics
 Diagnostics for the ThumbnailQueue providing a snapshot of the current state of the queue. More...
 
class  JPEGData
 Contains the JPEG as bytes. More...
 
class  JPEGVideoSource
 JPEGVideoSource gets recorded video image formatted as JPEGs.
Please note that all calls to the methods in this class MUST be coming from the same thread!
When getting images from the server, it should be considered that the Get() method can take some time and is not ideal to execute on a UI thread.
Only supported in Smart Client and standalone environments. More...
 
class  JPEGVideoSourceImplementer
 JPEGVideoSourceImplementer gets recorded video image formatted as JPEGs.
This class is NOT thread safe, and all calls to these methods MUST be coming from same thread.
When getting images from the server, it should be considered that the Get() method can take some time and is not ideal to execute on a UI thread.
 
class  MediaData
 Contains one piece of media information. For video it will be one frame, for audio it will be for a short period. More...
 
class  MediaProviderChannel
 This MediaProvider provides an interface for sending video frames to a Milestone XProtect Recording Server.
The specific MIPMediaProvider driver has to be configured to point at this executing application and port, as defined in this class.
More...
 
class  MediaProviderService
 The MediaProviderService will open for TCP socket and listen for connections.
New MediaProvider's need to be created for each channel that will be available for video later on. More...
 
class  MediaProviderSession
 Contains the properties that a given session is using.
When used on the initial SessionOpening method, it will contain the values as requested by the server side.
The application can then modify the values to what is relevant for the given application and session.
This class is created by the MediaProviderService when a new HTTP request has been received that want to receive a new stream.
Note that multiple MediaProviderSession classes can exist on the same MediaProvider when multiple servers are connecting to the same channel. More...
 
class  MetadataCache
 This class is repsonsible for caching and navigating a pseudo-"GOP" of metadata content. It handles navigating retreiving, storing and navigating by supporing GetNext and GetPrevious operations.
 
class  MetadataDeviceCapability
 This class is responsible for describing a capability for a metadata device. A capability describes a single setting that will appear on the settings tab for the device. More...
 
class  MetadataDeviceDefintion
 This class is responsible for describing the parameters used by a single metadata device on a piece of hardware. More...
 
class  MetadataHardwareDefinition
 This class represents the overall. More...
 
class  MetadataPlaybackData
 This class is responsible for containing the information about a single "frame" of recorded metadata. More...
 
class  MetadataPlaybackSource
 MetadataPlaybackSource gets metadata in raw mode. This means that the Generic Byte Header as well as the content is available.
When getting metadata from the server, it should be considered that the Get() method can take some time and is not ideal to execute on a UI thread.
Only supported in Smart Client and standalone environments. More...
 
class  MetadataProviderChannel
 This MetadataProviderChannel provides an interface for sending metadata to a Milestone XProtect Recording Server. More...
 
class  MetadataQueue
 Metadata queue (singleton) used for fetching metadata XML in a controlled and optimized manner. Queue characteristics can be controlled in the app.config of the client application, otherwise default values are used. The following app settings can be configured in the app.config file to control the queue: More...
 
class  MetadataQueueResult
 The result type received when using the MetadataQueue to fetch a metadata. The type has properties to indicate if an error occurred, and the actual data (if no error occurred). More...
 
class  MetadataSource
 This class is responsible for giving information about the data in a metadata device. Specifically, it allows a client to retrieve information about the types of metadata that the device can deliver. More...
 
class  MetadataSupplier
 This class automatically provides metadata when available, both in live and playback. More...
 
class  MetadataSupplierErrorEventArgs
 Instances of this class will be returned when MetadataSupplier.ErrorEvent is triggered. More...
 
class  MetadataSupplierEventArgs
 Instances of this class will be included when MetadataSupplier.NewMetadataEvent is triggered. More...
 
class  MetadataSupplierMetadataInvalidatedEventArgs
 
Instances of this class will be returned when MetadataSupplier.MetadataInvalidatedEvent is triggered. More...
 
class  MetadataTypeDefinition
 This class is responsible for handling the parameters that define the type of metadata a metadata device delivers when using the MIP driver. The display name (or its translation) will be used as the headline on the settings tab for the device in the Management Client. All capabilities in this type will then appear as children in the setting tab. More...
 
class  MKVExporter
 This class will use Environment specific implementation to export one video stream and zero or multiple audio streams to an MKV file (Matroska). More...
 
class  ObjectMotion
 The representation of an objects tracked motion through the scene. More...
 
class  OutgoingSpeakerController
 The OutgoingSpeakerController sends an audio stream to a speaker. The audio stream can come from a pc-microphone or a file. More...
 
class  PcmAudioData
 PCM data. More...
 
class  PcmAudioDataList
 List of PCM audio datas. More...
 
class  PcmAudioSource
 Class providing Pcm audio data for playback When getting audio from the server, it should be considered that the Get() method can take some time and is not ideal to execute on a UI thread. More...
 
class  PointList
 A list of points. More...
 
class  PolygonList
 A list of polygons. More...
 
class  Property
 The Property class is used for events generated with access control plugins. The AccessControlEvent class references this class. More...
 
class  RawVideoSource
 RawVideoSource gets video image in raw mode, e.g. GenericByteHeaders with encoded content.
When getting images from the server, it should be considered that the Get() method can take some time and is not ideal to execute on a UI thread.
Note: Is only implemented in the Smart Client and in the MIP SDK for component integration.
More...
 
class  RawVideoSourceData
 Contains the raw GenericByteData content, used by RawVideoSource during playback of raw frames. More...
 
class  RawVideoSourceDataList
 Contains a list of raw GenericByteData content, used by RawVideoSource during playback of raw frames. More...
 
class  Reference
 The representation of a reference to another entity in the system - e.g. another alarm or device. More...
 
class  ReferenceList
 A list of references. More...
 
class  RestrictedMedia
 The RestrictedMedia class represents a restricted media instance. More...
 
class  RestrictedMediaLive
 This RestrictedMediaLive class represents a restricted media live instance. More...
 
class  RestrictedMediaLiveResult
 Result of processed restricted media live. More...
 
class  RestrictedMediaResult
 Result of processed restricted media. More...
 
class  RestrictedMediaService
 
class  Rule
 The representation of a rule, which triggered the event. More...
 
class  RuleList
 A list of rules. More...
 
class  SequenceAviExportElement
 Class for defining each element of an AVI sequence export. More...
 
class  SequenceData
 Contains the actual sequence data for one sequence, e.g. start and end DateTime. More...
 
class  SequenceDataSource
 The SequenceDataSource can assist with getting sequence information for a camera or metadata device.
The GetData methods returns a list of SequenceData containing the DateTime information for the type of sequence requested.
The GetTypes() method will return the possible and supported types for this class. E.g. the DataType.SequenceTypeGuids.RecordingSequence for Recorded sequences.
More...
 
class  SizeAndCropInfo
 Internal class usage for holding the size and crop info.
 
class  SmartClientProfileSetting
 Data class for a Smart Client Profile setting. More...
 
class  Snapshot
 The representation of a snapshot associated with the event with time offset relative to the event timestamp. More...
 
class  SnapshotList
 A list of snapshots. More...
 
class  SourceDataOnBitmapDataProxy
 Proxy between ISourceData and BitmapData. More...
 
class  SourceDataOnJpegDataProxy
 Proxy between ISourceData and JPEGData. More...
 
class  SourceDataOnRawDataProxy
 Proxy between ISourceData and RawVideoSourceData. More...
 
class  StateGroup
 This class is used to define a state group, referenced by EventType More...
 
class  StreamDataSource
 The StreamDataSource provides information of what streams are available on a given Item.
This data source is only valid for camera items (Kind.Camera) when running in the .Net Library Environment. (Version MIPSDK 3.6 or later). More...
 
class  TColor
 The representation of an ARGB color. More...
 
class  ThumbnailQueue
 Thumbnail queue (singleton) used for fetching thumbnail images from cameras in a controlled and optimized manner. Queue characteristics can be controlled in the app.config of the client application, otherwise default values are used. The following app settings can be configured in the app.config file to control the queue: More...
 
class  TPoint
 The representation of a point described by a set of normalized coordinates. More...
 
class  TPolygon
 The representation of a polygon describing a set of normalized coordiantes and color. More...
 
class  Vendor
 Information about the analytics vendor including any custom data. More...
 
class  VideoSource
 Gives access to recorded video. More...
 
class  VideoSourceDataOnBitmapDataProxy
 Proxy between IVideoSourceData and BitmapData. More...
 
class  VideoSourceDataOnJpegDataProxy
 Proxy between ISourceData and JPEGData. More...
 
class  WarningDevice
 Warning state of processed restricted media. More...
 
class  WAVExporter
 This class will use environment specific implementation to export one or mixture of multiple audio streams to an WAV file. You can do sound mixing with combination of speaker output and microphone input for instance. To export multiple audio streams, you need to set the AudioList property then call the StartExport(DateTime, DateTime) method. More...
 

Enumerations

enum  ClientErrorCode {
  Ok = 0 , ConnectionLost = 1 , WrongState = 2 , AuthenticationFailed = 3 ,
  InternalError = 4 , Max = 99
}
 Error code of the client. More...
 
enum  EncryptionStrength { DES56 , AES128 , AES192 , AES256 }
 Encryption strength values. More...
 
enum  MediaContent {
  Jpeg = 1 , H264 = 2 , Audio = 3 , MetaData = 4 ,
  Mpeg = 5 , H265 = 6 , Pcm = 7
}
 The format being requested from the server side. More...
 
enum  RestrictedMediaResponseCode {
  UnknownError = 0 , None = 1 , Warning = 2 , Unauthorized = 3 ,
  DeviceNotFound = 4 , RestrictedMediasNotSupported = 5 , AlreadyInRestrictedLiveMode = 6 , NotInRestrictedLiveMode = 7
}
 Response code of processed restricted media. More...
 
enum  RestrictedMediaResultStatus {
  Undefined , Success , Failed , PartlySuccess ,
  RestrictedMediaNotFound , FeatureNotLicensed , RecorderNotFound , ManagementServerUnavailable ,
  Unauthorized
}
 Result status of processed restricted media. More...
 

Functions

delegate void AsyncCallbackHandler (object result, object state)
 A delegate to hold the reference to your method to be called when the result has been retrieved from the server.
 

Enumeration Type Documentation

◆ ClientErrorCode

Error code of the client.

Enumerator
Ok 

No error.

ConnectionLost 

Recording server is disconnected.

WrongState 

Wrong State.

AuthenticationFailed 

Authentication to recording server failed.

InternalError 

Unknown exception is thrown, check log for details.

Max 

Don't add error codes beyond this number!

◆ EncryptionStrength

Encryption strength values.

Enumerator
DES56 
AES128 
AES192 
AES256 

◆ MediaContent

The format being requested from the server side.

Enumerator
Jpeg 
H264 
Audio 
MetaData 
Mpeg 
H265 
Pcm 

◆ RestrictedMediaResponseCode

Response code of processed restricted media.

Enumerator
UnknownError 

Unknown error.

None 

None.

Warning 

Warning.

Unauthorized 

Unauthorized.

DeviceNotFound 

Device not found.

RestrictedMediasNotSupported 

Restricted media not supported.

AlreadyInRestrictedLiveMode 

Already in restricted live mode.

NotInRestrictedLiveMode 

Not in restricted live mode.

◆ RestrictedMediaResultStatus

Result status of processed restricted media.

Enumerator
Undefined 

Status undefined.

Success 

Restricted media operation succeeded.

Failed 

Restricted media operation failed.

PartlySuccess 

Restricted media operation succeeded with errors.

RestrictedMediaNotFound 

Restricted media not found.

FeatureNotLicensed 

Feature not licensed.

RecorderNotFound 

Recording server not found.

ManagementServerUnavailable 

Management server is not available.

Unauthorized 

Unauthorized.

Function Documentation

◆ AsyncCallbackHandler()

delegate void VideoOS.Platform.Data.AsyncCallbackHandler ( object result,
object state )

A delegate to hold the reference to your method to be called when the result has been retrieved from the server.