Viz Mosart Administrator Guide

Version 3.9 | Published November 04, 2019 ©

Video Server and MAM Connection Strings

A connection string is used to connect to a particular device. It consists of a series of keywords, in this instance, values with device specific commands. These values are usually in pairs, with each pair separated by a semicolon.

In Viz Mosart, connection strings are used in Media Administrator configuration and, in some cases, AV Automation. The AV Automation connection strings should be auto-generated when configured in the Video server GUI.

Configuration file names with no path given as value to the Config parameter below will search for the file in the following order of folders:

  • %ALLUSERSPROFILE%\Mosart Medialab\ConfigurationFiles\

  • C:\ChannelTemplates\

  • {Application path}\

  • {Application path}\ConfigurationFiles

  • {Current folder}\ConfigurationFiles

This section contains the following Connection String types:

Standard Video Server Connection String

Viz Mosart Video Server Connection String

Name=myServerName; Type=myServerType; Server=myServerAddress; Config=myConfigFile.xml
  • Name: Specifies a logical name to be associated with the device. This is used to recognize the devices in various places.

  • Type: Specifies which driver to be used for connecting to the server. See the table below for details about which Video Server Drivers that are currently supported.

  • Server: Specifies the server name or the IP address of the video server.

  • Config: Specifies a configuration file containing custom configuration for a particular video server driver. Editing these files is typically done during installation.

Video Server Drivers

  • AirSpace: AirSpace video driver

  • AirSpeed: AirSpeed video driver

  • AirSpeedSearch: As AirSpeed driver, but contains search functionality only. Used by Media Administrator to obtain clip status from an AirSpeed video server.

  • AirSpeedMultiStream: AirSpeed Multi Stream driver, also Airspeed 5000

  • AirSpeedMultiStreamSearch: As AirSpeed Multi Stream driver, but contains search functionality only. Used by Media Administrator to obtain clip status from an AirSpeed Multi Stream or 5000 video server.

  • Amadeus: Amadeus MAM driver

  • EVS: EVS driver

  • GrassValleyK2: Grass Valley K2 driver

  • OPUS: Omnibus MAM driver using OPUS interchange

  • Omneon: Omneon video driver

  • OmneonSearch: As Omneon driver, but contains search functionality only. Used by Media Administrator to obtain clip status from an Omneon video server.

  • Quantel: Quantel video driver

  • ScreenLLSearch: Screen LinguaLib search driver

General Configuration File Properties

  • KeepCache (boolean): When set to true, the internal Media Administrator clip cache is kept on reconnect (Default=False).

  • RefreshOnUpdate (boolean): If set to true, any clip update message received from the video server will result in a clip refresh operation (Default=False).

  • ReleasePortOnDispose (boolean): If true, the assigned video port will be released when server connection is closed (Default=True).

  • SupportSearchUsingObjSlug (boolean): Activates searching using objSlug (Default=True).

  • SupportSearchUsingRefID (boolean): Activates searching using RefID (Default=False).

  • RefreshModifiedClips (boolean): Deprecated (Default=True).

  • VerifyModifiedClips (boolean): If true, clip modified/update events for all clips will trigger a complete verification (for example treated as the clip was created). If false, only clips currently in the cache will be verified (Default=True).

  • CueTimeout (integer): Specifies the maximum time in milliseconds for AV Automation to wait for a cue operation to complete. Default: 1000 msec

  • PlayTimeout (integer): Specifies the maximum time in milliseconds for AV Automation to wait for a play operation to complete. Default: 0

  • SetLoopDelay (integer): Specifies the time when to set the clip to play in loop after a successful cue operation, in milliseconds. Default: 1000 msec

  • NextPingDelay (integer): Specifies the general heartbeat interval. Default: 10000 msec

  • NextServerAttemptDelay (integer): In case of failure, specifies the time between trying to reconnecting to the video server, in milliseconds. Default: 5000 msec

  • MirrorActivePortTimeout (integer): For mirroring setups. Specifies the time to wait for the active port to complete before waiting for any of the ports, in milliseconds. Default: 100 msecs

  • IgnoreCase: If true, searching for clips is done case insensitive. Must be used in combination with <MatchExpression ignoreCase="true" /> from General Search Configuration File Properties.

  • ClipNamePattern: When recording a file, the system can be configured to use a predefined pattern for filenames. The pattern shall be defined in the associated config file for the video server. The following variables are available for injecting into the clip name:

    Variable name

    Description

    clipname

    The value given in the recording dialogues, or from custom template commands

    gallery

    The name of the gallery

    templateset

    The name of the currently selected templateset

    timestamp

    The current time. This value can be formatted using the patterns from MSDN

    Example

    Gallery = MyGallery
    Current template set = MyTemplateSet
    Clipname = MyClipName
    Current Time = 21 September 2016 12:00:00

    Config file for video server:

    <DeviceConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <Properties>
    <item name="ClipNamePattern" value="{gallery}_{templateset}_{clipname}_{timestamp:yymmdd}" />
    </Properties>
    </DeviceConfig>

    The file name sent to recording will be MyGallery_MyTemplateSet_MyClipName_160921.

General Search Configuration File Properties

  • HitSortOrder (enum): Specifies how to sort a list of multiple hits for a single search. Used in combination with the BestMatchMethod property. Options:

    • Ascending - The list of hits are sorted ascending alphabetically.

    • Descending - The list of hits are sorted descending alphabetically.

    • Unspecified - (Default) No sorting is applied to the resulting hits.
      Example: <HitSortOrder>Descending</HitSortOrder>

  • BestMatchMethod (enum): Method used to determine single search result if a search results in multiple hits. Options:

    • First - The hits are sorted alphabetically and the first hit is returned

    • Last - The hits are sorted alphabetically and the last hit is returned

    • Filter - (Default) Returns the first hit evaluated true from a MatchExpression filter.

  • MatchExpressions (list): List of filters to be used for narrowing searches that may result in multiple hits. Each MatchExpression filter is constructed from three attributes:

    • ignoreCase (boolean) - True if the filter is case insensitive. Must be used in combination with property "IgnoreCase" from General Configuration File Properties

    • expression (string,regex) - expression used to create a regular expression to be applied to the given clip name. Use the pattern attribute to extract parts of the original clip name to search for. Default: Empty = exact search

    • pattern (string) - regular expression used to extract information from the clip name. Default: The original clip name.
      An empty MatchExpressions list will result in a exact case sensitive search.
      The following example sets up a regular expression filter searching for

      MatchExpressions
      <MatchExpressions>
      <!-- Returns true for all hits with clip names starting with the given clip name -->
      <MatchExpression expression="^$1.*$"/> <!-- Returns true for all hits with identical clip name but case insensitive -->
      <MatchExpression ignoreCase=true/> <!-- Returns true for all hits with clip names containing leading or trailing spaces -->
      <MatchExpression pattern = "^\s*(.*)\s*$" expression = "$1"/>
      </MatchExpressions>

AirSpeed Classic Connection String

Applies to Models

  • AirSpeed

  • AirSpace

See Also

Connection String Properties

  • Type: AirSpeed and AirSpace

  • Name: Defines the ID of this connection (Default=AirSpeed).

  • Server: Defines the hostname or IP-address of the server.

  • Config: Defines the name of the configuration file.
    Optional:

  • BasePort:* The lowest port number to connect to (Default=59451).

  • Player:* The player number (1-6). Used for setting the TCP port (Default=1).

  • ChangeCheckInterval: Time in seconds how often to poll AirSpeed for clip changes (Default=1).

  • ReceiveTimeout: Time in seconds to wait for response from AirSpeed (Default=10).

  • HeartbeatInterval: Time in seconds to send out a heartbeat in case of no communication detected from AirSpeed (Default=30).
    * The TCP port to connect to becomes BasePort + Player - 1.

Examples

AV Automation:

Name=HAR; Type=AirSpeed; Server=192.168.1.1; Port=6000; Config=ClipServerMultiStream.xml

Media Administrator:

Type=AMS; Name=AirSpace; Server=10.211.114.104; BasePort:59451; Player=2; ChangeCheckInterval=5; ReceiveTimeout=5; HeartbeatInterval=20; Config=ClipServerMultiStream.xml

Configuration File Properties

Configuration file properties can be overridden by connection string properties.

  • KeepCache (boolean): How often (in seconds) to look for clip changes. value="1" is the default value if not configured here (Default=False).

  • RefreshOnUpdate (boolean): When set to true the cache will be updated on each update clip message from the server (Default=True)

  • VerifyClipDelay (integer): Delay in frames to wait before verifying new clips from server.

  • ReceiveTimeout (integer): Time in seconds to wait for response from AirSpeed (Default=10).

  • ChangeCheckInterval (integer): Time in seconds how often to poll AirSpeed for clip changes (Default=2).

  • HeartbeatInterval (integer): Time in seconds to send out a heartbeat in case of no communication detected from AirSpeed (Default=30).

  • GetMinimumList (boolean): Set to true to retrieve only clip names when initializing database (Default=False)

  • DelayGetClipData (boolean): Delay getting detailed clip information. Information will be retrieved for clips in rundown only (Default=True).

  • DelayEventsOnDatabaseInitialization (boolean): If true, all clip handling during database load will be postponed until last clip is received (Default=False).

  • SignalDatabaseReady (boolean): Refreshes all clips after database has been built instead of refreshing for every item in the database (Default=True).

  • VerifyModifiedClips (boolean): If true, all modified clip events for clip not in cache will be verified, as if they were created (Default=True).

  • ReceiveBufferSize (integer): Set buffer size used for receiving date from AMS. Default 16384 = 2 times default buffer size of Net.Socket (Default=16384).

  • Encoding (string): Set to encoding used for send/receive from AMS (Default=utf-8).

  • SupportSearchUsingObjSlug: Ignores search for objSlug if set to false (Default=True).

  • SupportSearchUsingRefID: Ignores search for refID if set to false (Default=False).

    Use for debugging purposes only:

  • VerboseLogging (boolean): Set to true to enable logging of received messages from AMS (Default=False).

  • DatabaseCache (boolean): If set to a valid filename, initial load database will store the content in this file (Default=False).

  • DatabaseCacheUpdate (boolean): Determines when the debug database cache is updated (either [Never,Always,Initial]).

  • LoadDatabase: Specifies whether the AirSpeed clip database should be initially loaded and maintained by the Media Administrator. Setting this attribute to true is required if any search should be possible using an AirSpeed video server.

AirSpeed Multi Stream / AirSpeed 5000 Connection String

The AirSpeed Multi Stream driver supports up to 6 multiple player ports per connection.

Applies to Models

  • AirSpeed Multi Stream 1.8

  • AirSpeed 5000

See Also

Connection String Properties

  • Type: AirSpeedMultiStream

  • Name: Defines the ID of this connection (Default=AirSpeedMultistream).

  • Server: Defines the hostname or IP-address of the server.

  • Config: Defines the name of the configuration file.
    Optional:

  • BasePort:* Specifies the port number of the first port on the server (Default=59451).

  • Player:* Specifies the player (1-6) that should be used for searches and clip verification (Default=1).

  • ChangeCheckInterval: Time in seconds how often to poll AirSpeed for clip changes (Default=1).

  • ReceiveTimeout: Time in seconds to wait for response from AirSpeed (Default=10).

  • HeartbeatInterval: Time in seconds to send out a heartbeat in case of no communication detected from AirSpeed (Default=30).

    *The TCP port to connect to becomes BasePort + Player - 1

Examples

AV Automation:

Name=AMS; Type=AirSpeedMultiStream; Server=192.168.1.1; Config=ClipServerMultiStream.xml

Media Administrator:

Type=AMS; Name=AirSpeedMultiStream; Server=10.211.114.104; BasePort:59451; Player=2; ChangeCheckInteral=5; ReceiveTimeout=5; HeartbeatInterval=20; Config=ClipServerMultiStream.xml

Configuration File Properties

Configuration file properties can be overridden by connection string properties.

  • KeepCache (boolean): How often (in seconds) to look for clip changes. value="1" is the default value if not configured here (Default=False).

  • RefreshOnUpdate (boolean): When set to true the cache will be updated on each update clip message from the server (Default=True)

  • VerifyClipDelay (integer): Delay in frames to wait before verifying new clips from server.

  • ReceiveTimeout (integer): Time in seconds to wait for response from AirSpeed (Default=10).

  • ChangeCheckInterval (integer): Time in seconds how often to poll AirSpeed for clip changes (Default=2).

  • HeartbeatInterval (integer): Time in seconds how send out a heartbeat in case of no communication detected from AirSpeed (Default=30).

  • GetMinimumList (boolean): Set to true to retrieve only clip names when initializing database (Default=False).

  • DelayGetClipData (boolean): Delay getting detailed clip information. Info will be retrieved for clips in rundown only (Default=True).

  • DelayEventsOnDatabaseInitialization (boolean): If true, all clip handling during database load will be postponed until last clip is received (Default=False).

  • SignalDatabaseReady (boolean): Refreshes all clips after database has been built instead of refreshing for every item in the database (Default=True).

  • VerifyModifiedClips (boolean): If true, all modified clip events for clip not in cache will be verified, as if they were created (Default=True).

  • ReceiveBufferSize (integer): Set buffer size used for receiving date from AMS. Default 16384 = 2 times default buffer size of Net.Socket (Default=16384).

  • Encoding (string): Set to encoding used for send/receive from AMS (Default=utf-8).

  • SupportSearchUsingObjSlug: Ignores search for objSlug if set to false (Default=True).

  • SupportSearchUsingRefID: Ignores search for refID if set to false (Default=False).

    Use for debugging purposes only:

  • VerboseLogging (boolean): Set to true to enable logging of received messages from AMS (Default=False).

  • DatabaseCache (boolean): If set to a valid filename, initial load database will store the content in this file (Default=False).

  • DatabaseCacheUpdate (boolean): Determines when the debug database cache is updated (either [Never,Always,Initial]).

Amadeus Connection String

Name=HTC-DB; Type=Amadeus; Port=[port]; Config=ClipServerAmadeus.xml

Connection String Properties

  • Name: Amadeus ID for database

  • Type: Defines the Amadeus driver for clip handling.

  • Port: Set to port to listen for an Amadeus connection.
    Optional:

  • Port: Defines the connection port (Default=2202).

  • ResponseReadTimeout: Defines the wait time until timeout (default=5000).

  • PollIntervalClips: Defines the time between polling (Default=15). Set to 0 to disable.

  • RundownPrefix: Defines the prefix to add for the rundown name (Default=””).

  • GetAllCGs: If true, METAREQ_ALLCGS message type will be used when getting clip info (Default=””). For more details, see the Amadeus documentation.

  • LowerCaseRundowns: If true, then the rundown name will always be generated with lower case (Default=False).

  • IgnoreSTEG: If true, all messages from Amadeus starting with STEG will be ignored (Default=True). For more details, see the Amadeus documentation.

  • StegCommandIfSubtitled: Sends the specified STEG command if clip is subtitled (Default=KLOCKA INVOKEOFF). For more details, see the Amadeus documentation.

  • SubtitleStegOutOn: Sets the graphics_out_on xml value in the STEG command set to Amadeus (Default=BACKGROUNDEND).

  • PurgeCacheInterval: Use hh:mm:ss format (Default=00:00:00).

  • PurgeCacheAge: Use hh:mm:ss format (Default=00:05:00).

Harris Nexio Connection String

The Harris Nexio driver supports Binary-Coded Decimal TCP/IP transport. The driver can be configured to be case sensitive on searches and use Unicode encoding. The Harris Nexio driver supports recording.

  • Control via RS-422 can be done through VDCP

  • Maximum 5 video server units

Connection String Properties

  • Type: Harris Nexio

  • Name:* Defines the ID of this connection.

  • Server:* Defines the hostname or IP-address of the server.

  • Config: Defines the name of the configuration file.
    Optional:

  • Port:* TCP port to connect to (Default=557).

  • Encoding:* Set to “U” or “Unicode” if it should be Unicode.

  • Case:* Set to “B” to be case sensitive on clip name searches.

  • ClipNames:* Property for using exact clip names. If set to “EXACT”, clip names are case-sensitive (Default=EXACT).

  • ChangeCheckInterval: Defines the number of seconds between checks for clip changes.

  • LoadDatabase (boolean):* Set to “true” to build internal database of clips present on server and enable clip monitoring (Default=False).

    * The configuration file set property can be overridden by a connection string parameter.

Examples

AV Automation:

Name=HAR; Type=HarrisNexio; Server=192.168.1.1; Port=557; Config=ClipServerHarris.xml

Media Administrator:

Name=Harris1; Type=HarrisNexio; Server=192.168.1.1; Port=557; LoadDatabase=true; Encoding=UTF-8; ClipNames=UNEXACT; ChangeCheckInterval=15; Config=ClipServerHarris.xml

Configuration File Properties

  • ChangeCheckInterval (integer): Time in seconds how often to poll HarrisNexio for clip changes (Default=5).

  • Port (integer): Defines the default connection port (Default=557).

  • Encoding (string): (Default=ANSI)

  • Case (string): (Default=UPPER)

  • ClipNames (string): Property for using exact clip names. If set to “EXACT”, clip names are case-sensitive (Default=EXACT).

  • KeepCache (boolean): When set to “false”, the cache is cleared on reconnects (Default=False).

  • RefreshOnUpdate (boolean): When set to “true”, the cache will be updated on each update clip message from the server (Default=True).

  • VerifyClipDelay (integer): Delay in frames to wait before verifying new clips from server (Default=0).

  • SupportSearchUsingObjSlug: Ignores search for objSlug if set to “false” (Default=True).

  • SupportSearchUsingRefID: Ignores search for refID if set to “false” (Default=False).

  • MaxCueTime (integer): Maximum milliseconds to wait for cue (Default=5000).

  • ClipNamePattern: See General Configuration File Properties

JupiterWebService Connection String

JupiterWebService is BBC’s internally developed MAM system.

Name=myServerName; Url=myConfigFile

Example:

Name=Jupiter; Url=ClipServerJupiter.xml

This server type does not support any additional parameters in the connection string. The following settings must be added in the configuration file.

Configuration File Properties

  • Server (string): Defines the hostname or IP-address of the server (Default=localhost).

  • Port (integer): Defines the TCP port to connect to (Default=8102).

  • ServiceName (string): Default=JupiterService.svc

  • Service (string): Default=http://\{Server}:{Port}/{ServiceName}

  • GetStatusCommand (string): Default={Service}/clipstatus/{0}

  • GetKeyFramesCommand (string): Default={Service}/keyframes/{0}

  • PollIntervalStatus (string): Default={Service}/keyframes/{0}

MVCP Connection String

MVCP (Multiport Video Computer Protocol) is a simple request/response protocol, which is implemented over a TCP byte-stream connection (for example a stream socket).

Applies to Models

  • Vizrt Xlator

  • SVT F2C file name conversion service

Connection String Properties

  • Type: MVCP

  • Name: Defines the ID of this connection (Default=MVCP).

  • Server: Defines the hostname or IP-address of the server (Default=localhost).

  • Port: Defines the TCP port to connect to (Default=5250).

Configuration File Properties

  • CustomSearch:* Set to “SVT” to enable SVT custom search on objSlug.

  • SetNameAsRefId:* Set clip name as ref ID in the media object (Default=False) for re-use in other clip servers.

  • WriteTimeOut: Sets the amount of time in milliseconds that a write operation blocks waiting for data from the server (Default=5000).

  • ReadTimeOut: Sets the amount of time in milliseconds that a read operation blocks waiting for data to the server (Default=5000).

  • AppendExtension:* A file extension used when sending messages to the MVCP interface (Default=””).

  • RemoveExtension:* Used to strip the extension of a clip name (Default=””) from the MVCP interface.

  • ClipNamePattern: See General Configuration File Properties

    *About custom search ‘SVT’: SVT has file names with 36 characters. The Nexio only supports 32 characters. SVT exposes a mapping proxy with an MVCP interface and a custom command F2C which translates a long name to a shorter one.

Examples

AV Automation:

Name=MVCP1; Type=MVCP; Server=192.165.4.1; Port=5250

Media Administrator:

Name=MVCP2; Type=MVCPSearch; Server=192.165.4.1; Port=5251

Omnibus OPUS Connection String

Name=myServerName; Type=OPUS; Url=myUrl; Config=myConfigFile.xml
  • Url: Specifies the URL of the OPUS Interchange web service.

Quantel Connection String

Applies to Models

  • Connects to Quantel using Quantel CORBA interface

Device Prerequisites

  • Requires Quantel CORBA services to run

  • Serial numbers of playout servers, normally obtained via Quantel Web interface

Quantel Video Server Connection String

Name=myServerName; Type=Quantel; Mode=Player; SerialNo=mySerialNo; IOR=myQuantelIOR; Slave=mySlaveAddress; Timeout=10; Config=myConfigFile.xml

Connection String Properties

  • Name: Specifies a logical name to be associated with the video server. This is used to identify the server across AV Automation and Media Administrator configurations.

  • Type: Specifies which driver to be used for connecting to the server. This should be set to “Quantel” for both AV Automation and Media Administrator

  • Mode: Specifies whether the Quantel connection is used for playing clips or searching (Default=Search):

    • Mode=Player: The Quantel connection is used for playing clips (AV Automation).

    • Mode=Search: The Quantel connection is used for searching (Media Administrator).

  • SerialNo: Specifies the serial number of the Quantel video server. This number is used to recognize the particular video server within a Quantel zone portal. Serial numbers may be obtained via the Quantel Web interface.

  • IOR: Specifies the Corba IOR used to establish connection with a Quantel server. This IOR is normally obtained from the system administrator.

  • Slave: Specifies an optional slave address. Used when Quantel is configured in a redundancy setup.

  • Timeout: Specifies the timeout in seconds when initially connecting to the Quantel zone portal (ISA manager). Default is 10 seconds.

  • Config: Specifies a configuration file containing custom configuration for the Quantel server driver. Normally set to ClipServerQuantel.xml, which contains the default configuration.

Examples

AV Automation:

Name=sQ7; Type=Quantel; SerialNo=19343; Mode=Player; IOR=http://quantel:@192.168.60.33/ZoneManager.ior; Config=ClipServerQuantel.xml

Media Administrator:

Name=sQ7; Type=Quantel; SerialNo=19343; Mode=Search; IOR=http://quantel:@192.168.60.33/ZoneManager.ior; Config=ClipServerQuantel.xm

Quantel Configuration File Properties

  • DefaultTakenPortAction (enum): Action when not able to take a port when owned by someone else (Default=Steal). Options:

    • Steal: Takes control over the port even if in use by someone else.

    • Share: Shares control with the other user. Not recommended.

    • Cancel: Cancels the operation. Port will still be in control by other user.

  • IssueRequestForTakenPorts (boolean): If true, the user will be prompted to confirm taking a port in use by someone else (Default=True). A dialog box will appear in AV Automation, warning about taking a port that is currently in use. Only applicable when DefaultTakenPortAction=Steal.

  • ReleasePortsWithNoAssignedChannels (boolean): If true, any unassigned ports (with no assigned channels) will be released on player initiation (Default=True).

  • ServerPollFrequency (integer): Polling frequency for server, in seconds.This is used as heartbeat between Viz Mosart and Quantel. Note that heartbeats are not issued if data has been received from Quantel since last heartbeat. (Default=30).

  • ClipNameIsValidNumber (boolean): If true then it is possible to search from Viz Mosart GUI using valid Quantel ClipIDs directly (Default=False).

  • QuantelSlugColumn (string): Specifies the Quantel database column that is used for the clip slug (Default=Title).

  • QuantelClipIDColumn (string): Specifies the Quantel database column that is used for the clip ID (Default=ClipID).

  • QuantelSearchColumn (string): Specifies the Quantel database column that is used for the clip searches (Default=Title).

  • MaxPingAttempts (integer): Maximum ping attempts before a lost connection is detected (Default=1). When Viz Mosart detects a lost connection, the current connection will be closed followed by attempts to reconnect. For playout servers only (AV Automation).

  • QuantelRefIDColumn (string): Specifies the Quantel database column that is used for the clip RefID (Default=Title). Used if SupportSearchUsingRefID is set to true.

  • SearchUsingServerIdOnly (boolean): If true, will force AV Automation to only search for clips using Quantel ClipId’s obtained from Media Administrator.

  • ClipNamePattern: see General Configuration File Properties

Quantel Failure Handling Properties

  • QuantelStatusInterval (integer): Interval in seconds for the Quantel server to send regular status messages. These messages will only be sent when the Quantel server is idle. Default: 2 seconds

  • QuantelCommErrorNumRetries (integer): The number of retries in case of a Quantel CORBA operation results in a CORBA_COMM_FAILURE. Default: 1

  • QuantelCommErrorTimeout (integer): The timeout in milliseconds between retries in case of a Quantel CORBA operation results in a CORBA_COMM_FAILURE. Default: 100 msec

Quantel Search Filters

It is possible to define a set of dedicated filters used to either exclude or include hits returned from the Quantel ISA manager. Note that the Quantel ISA manager returns hits for all attached pools. It is therefore necessary to filter out the clips not available on the pools used by the corresponding video servers.

The Quantel search filters are defined in the Quantel configuration file as a list of Filter elements within a SearchFilter element. The following xml structure defines the default filters:

<SearchFilters>
<Filter property="Category" pattern="TEMPORARY CLONE" include="false" />
<Filter property="PoolID" pattern="[PoolID]" include="true" />
<Filter property="IgnoreCase" pattern="true" />
</SearchFilters>

Each filter has the following attributes:

  • property (string): Name of a Quantel database column. A special property=”IgnoreCase” is available to specify case insensitive or case sensitive searches.

  • pattern (string): Regular expression applied on the resulting property.

  • include (boolean): Action to take if the regular expression results in a match:

    • include=false, the hit is excluded from the search

    • include=true, the hit is returned as part of the search.
      The default example given above shall be interpreted as follows:

  • All clips stored in the Quantel database with Category=”TEMPORARY CLONE” is ignored

  • Only clips in the Quantel database with a PoolID that matches the pool identity of the corresponding video servers is returned

  • All searches are case insensitive

Omneon Connection String

Applies to Models

  • Models with Omneon Spectrum

    Note: Viz Mosart does not work properly with Omneon Spectrum versions earlier than 4.6. In some cases, clip length is not updated when using Omneon Spectrum 6.4.3 or earlier. It is recommended to upgrade to Omneon firmware version 7.9.x or later.

Connection String Properties

  • Type: Connection type: Omneon or OmneonSearch

  • Name: ID of this connection

  • Server: Hostname or IP-address of the server

  • Player: Optional. If set, performs searches associated with directory for the given player. If not set, the Directory option should be used to identify the search directory.

  • Directory: Optional. Specifies the search directory

  • ExtList: File extensions to be used. List of case sensitive extensions separated by periods.

  • ClipDir: Clip directory to monitor for files

  • LoadDatabase (boolean): Set to true to build internal database of clips present on server and enable clip monitoring (Default=False).

  • Config: Name of the configuration file (ClipServerOmneon.xml).

  • UseFullPath: If true, the Media Administrator will return full clip paths. The clip ID will contain both the Omneon server directory, as well as the clip name. Setting this property to true is mandatory if multiple directories are used on a single Omneon server. (Default=False).

Examples

AV Automation:

Type=Omneon; Name=Omneon; Server=10.211.114.104; ExtList=.mov.MOV.mxf.MXF; UseFullPath=true; Config=ClipServerOmneon.xml

Media Administrator:

Type=OmneonSearch; Name=Omneon; Server=10.211.114.104; Player=Play1; clipdir=/fs0/media; ExtList=.mov.mxf; LoadDatabase=True; Config=ClipServerOmneon.xml

Configuration File Properties

  • KeepCache (boolean): When set to false, the cache is cleared on reconnects (Default=False).

  • RefreshOnUpdate (boolean): When set to true, the cache will be updated on each update clip message from the server (Default=True).

  • VerifyClipDelay (integer): Delay in frames to wait before verifying new clips from server (Default=0).

  • DescriptionPattern (string): Makes it possible to extract a description from the object slug (objSlug) based on this Regex pattern (Default=[^_]*_(.*)).

  • DescriptionReplacement (string): Regex expression referring to first matched group (Default=$1). Used when replacing object slug (objSlug).

  • InvokeServerOnGetClipInfo (boolean): If true (non-zero), a request is sent to the video server when doing clip search. If true, all modified clip events for clip not in cache will be verified (as if they were created) (Default=False).

  • VerifyModifiedClips (boolean): If true, all modified clip events for clip not in cache will be verified (as if they were created) (Default=False).

  • IgnoreCase: If true, searching for clips is done case insensitive. Must be used in combination with <MatchExpression ignoreCase="true" /> from General Search Configuration File Properties .

  • GoToTimeCodeTimeOut (integer): Maximum time to wait (in milliseconds) for successful execution of command to play clip from a given time code (Default=6000).

  • UseNativeGoToTimeCode (boolean): If true, it will use GoToTimeCode method available in Omneon API. This may take a longer time to cue a clip at a specified position (Default=False).

  • UseStopOnCue: If true, the timeline will be stopped, not paused (play with speed 0) when cuing a new clip. This will cause cuing to take longer than usual.

  • ClipNamePattern: see General Configuration File Properties

    Search Properties: See General Search Configuration File Properties

Grass Valley K2 Connection String

Applies to Models

  • K2

  • Summit

Device Prerequisites

  • The file ClipServerK2.xml must be placed in the channeltemplates folder on the Viz Mosart server.

Connection String Properties

  • Name: Not important, used for logging purposes only.

  • Type: Selects the Grass Valley K2 driver for clip handling.

  • Server: Defines the IP address/hostname of the Grass Valley K2 server.

  • Domain: Sets the domain as part of the user credentials.

  • User: Sets the username as part of the user credentials.

  • Pass: Sets the password as part of the user credentials.

  • Suite: Defines the dedicated Grass Valley suite (Default=Mosart). This must be unique.

  • Volume: Sets the volume of the file repository on the K2 (Default=V:). Should be “c:” when using an emulator.

  • Bin: Sets the clip bin in the file repository on the K2 (Default=default).

Examples

AV Automation:

name=K2Server; type=GrassValleyK2; server=10.64.150.57; config=ClipServerK2.xml; user=<user>;pass=<password>; suite=Mosart; volume=V:; bin=default

Media Administrator:

Name=Summit; Type=GrassValleyK2; Server=K2SERVER1; Config=ClipServerK2.xml; Bin=default; User=GVAdmin; Pass=GVPass; Volume=V:; Suite=GVAdmin; Domain=K2SERVER1;LoadDatabase=true

Configuration File Properties

  • KeepCache (boolean): When set to false, the cache is cleared on reconnects (Default=False).

  • RefreshOnUpdate (boolean): When set to true, the cache will be updated on each update clip message from the server (Default=True).

  • VerifyClipDelay (integer): Delay in frames to wait before verifying new clips from server.

  • VerifyModifiedClips (boolean): If true, all modified clip events for clip not in cache will be verified (as if they were created) (Default=False).

  • DefaultTakenPortAction (Steal,Share,Cancel): If something other than Viz Mosart has taken the required channel, this determines what Viz Mosart should do.

  • RefreshModifiedClips (boolean): If true, all modified clip events for clip in cache will be refreshed (for example deleted and reinserted).

  • VerifyModifiedClips (boolean): If true, all modified clip events for clip not in cache will be verified (as if they were created).

EVS LinX Connection String

This connection string is used for EVS video servers controlled by the LinX protocol (as opposed to EVS Xedio systems, see EVS Xedio Connection String).

Type=EVS LinX; Name=[name]; Server=[IPaddress]; LoadDatabase=true; Config=ClipServerEvsLinX.xml

Example

Type=EVS LinX; Name=EvsLinXName; Server=192.168.62.6; LoadDatabase=true; Config=ClipServerEvsLinX.xml

Connection String Parameters

  • Type: EVS LinX or EVS

  • Name: Defines a unique name for the server.

  • Server: Defines the IP address of the server.

  • LoadDatabase: If true, loads all clip metadata into local cache (Default=False). Use true for Media Administrator.

  • Config: Configuration file containing further configuration settings.
    Optional:

  • LogOutput: The LinX log file created for the LogFlag option 0x00000003. The files for the other options will be in the same folder, and with names derived from LogOutput (see LogFlag below for details.) The folder should exist in advance, and the Viz Mosart user should have permission to create and write files. AV Automation and Media Administrator should log to different files, so LogOutput should be specified (with different folders) in the respective connection strings rather than in this file.

  • VeryVerbose: If true (and the Viz Mosart application issues verbose logging), then some extra log messages are issued (Default=False).

Config File Parameters

  • SupportSearchUsingObjSlug: Search by ‘slug’ (clip name) is supported (Default=True).

  • SupportSearchUsingRefID: Search by a configurable clip property (given by the SearchPropertyName parameter; see below) is supported (Default=False).

  • HeartbeatTimeout: The time (in milliseconds) after which the server connection may close if there is no activity (Default=12000).

  • KeepAliveIntervalDivisor: In case of connection problems, multiply both HeartbeatTimeout and KeepAliveIntervalDivisor by the same factor (for example 2) (Default=8).

  • LocalMtpcIpAddress: Necessary only if the Viz Mosart server has several network adapters, e.g. a virtual adapter (or several virtual adapters) in addition to the physical adapter, e.g. when VMWare (or similar) is installed on a demo PC, or when connecting through VPN. In this case, use the IP address (in the usual format of four dot(.)-separated groups of 1-3 decimal digits) of the network adapter connected to the EVS servers.

  • LogFlag: Bitmask specifying LinX log level. Available options are listed in the table below. (In addition, linxFunctions.log will be produced.) The options may be combined. For example, 0xFFFFFFFF will produce all log files.

    Bitmask

    Description

    Log file, given LogOutput=...\linx.log

    0x00000003

    Function entry and exit points, with parameters and return code

    linx.log

    0x00000010

    Connections

    linxConnect.log

    0x00000400

    Databases

    linx_Archive.log

    0x00008000

    Debug

    linxDebug.log

    0x01000000

    Tools

    linxTool.log

  • MaxTries: Obsolete. Instead, use SharedNbMaxConnectRetry and SharedConnectTimeout, described below. (The maximum number of times to try to synchronize the database. Default=10)

  • NbMaxLinxConnection: The maximum number of connections. The default is 18, to accommodate two EVS servers. Add 9 for each additional server.

  • OsdDefine00 - OsdDefine11: Defines the 12 OSD lines.

  • OsdShowHideError: Defines whether or not to show OSD.

  • OsdShowHideErrorSignals: Defines whether or not to show OSD. (For further details of these and other OSD settings, please see the default configuration file.)

  • SearchPropertyName: Clip property that may be used for clip search. The default is Varid (a LinX specific clip ID that may be used to identify clips in the NRCS). If some other property is needed, please ask Viz Mosart personnel for a list of available values.

  • SharedNbMaxConnectRetry: Maximum number of retries in case of connect error on a shared connection (Default=16). Increase if the error code 'Too many retries' is encountered, e.g. when synchronizing the database.

  • SharedConnectTimeout: Maximum time in milliseconds to execute connection request on a shared connection (Default=500). Consider increasing if the error code 'Too many retries' is encountered, e.g. when synchronizing the database.

Applies to Models

  • XS family (6U, 4U)

  • XT family (XT2+, XT3, not nano)

Device Prerequisites

  • Multicam 10.03, or later

  • LinX license code

  • Channels to be controlled by Viz Mosart must have Main CTRL LinX.

  • The network, including any firewalls, connecting the Viz Mosart server(s) and the EVS server(s) must support and allow TCP (ports 50000-50002) and UDP (unicast and multicast, ports 50100-50108).

EVS Xedio Connection String

These connection strings are used for EVS Xedio video servers (as opposed to EVS video servers controlled by the LinX protocol, see EVS LinX Connection String).

From a Viz Mosart perspective, a Xedio system has three parts:

  • One or more playout servers

  • A ‘control center’

  • A DB connected to through ODBC.
    AV Automation controls the playout servers, whereas Media Administrator connects to the control center and the database. Consequently, the connection strings for AV Automation and Media Administrator are somewhat different.

AV Automation Connection String

Type=EvsXedio; Name=[name]; Config=ClipServerEvsXedio.xml

Example:

Type=EvsXedio; Name=EvsXedioName; Config=ClipServerEvsXedio.xml

AV Automation Connection String Parameters

  • Type: EvsXedio

  • Name: Defines the unique name for the server.

  • Config: Defines the configuration file containing further details.
    Note that the parameters mentioned so far are insufficient to connect to a playout server. For this, the IP address and port number are required. These are specified (:-separated) in the Video port field(s) in AV Automation Device Properties, for example 192.168.76.11:4021.

Media Administrator Connection String

Type=EvsXedioSearch; Name=[name]; Server=[IPaddress]; Config=ClipServerEvsXedio.xml

Example:

Type=EvsXedioSearch; Name=EvsXedioSearchName; Server=192.168.76.10; Config=ClipServerEvsXedio.xml

Media Administrator connection string parameters

  • Type: EvsXedioSearch

  • Name: Defines a unique name for the server.

  • Server: Defines the IP address for the Control center.

  • Config: Defines the configuration file containing further details.
    Note that the parameters mentioned so far are insufficient to connect to the database. For this, the parameters DataSourceName, User, and Password are required. The defaults are probably sufficient. If not, these parameters are more conveniently set in the configuration file, described below.

Configuration File Parameters

  • PrefixTypeEdit: MOS objIDs with this prefix are treated as 'edits' (Default=EVSE).

  • PrefixTypeMedia: MOS objIDs with this prefix are treated as 'media' (Default=EVSM).

Relevant for AV Automation Only

  • TimeOut: Defines the timeout in milliseconds (Default=1).

Relevant for Media Administrator Only

  • AcceptHighResolutionOnly: Whether only high resolution clips are accepted (Default=False).

  • DataSourceName: ODBC System DSN entry for the CleanEdit DB (Default=CleanEditDB).

  • MonitorClipInterval: The interval (in seconds) at which found clips are monitored (Default=60). Used only if MonitorFoundClips is true, see below.

  • MonitorFoundClips: Whether found clips are monitored (Default=False).

  • Password: Password for the CleanEdit DB

  • PrefixCheckItemReturnAllItemHiResPresent: The prefix added to the Description of a hi-res clip (Default=HIRES-).

  • PrefixCheckItemReturnError: The prefix added to the Description of an error clip (Default=ERROR-).

  • PrefixCheckItemReturnNotPlayable: The prefix added to the Description of non-playable clip (Default=NOTPLAYABLE-).

  • PrefixCheckItemReturnOnlyItemLowResPresent: The prefix added to the Description of a lo-res clip (Default=LORES-).

  • SkipGetDuration: Whether to skip getting clip duration. Note that this operation may be slow and MAY be rendered unnecessary by future Media Administrator dev (Default=False).

  • User: User for the CleanEdit DB.

Debug Parameters, Relevant for Media Administrator Only

  • LogFile: CleanEditOcx log file (Default=C:\EvsLogs\CleanEditOcx\CleanEditOcx.log).

ScreenLL Connection String

Screen Connection String, used by Media Administrator.

Name=myServerName; Type=ScreenLLSearch; Server=myMainServerLocator;BackupServer=myBackupServerLocator; ServerUsage=myServerUsageMode; Config=myConfigFile.xml
  • Name: Not important, used for logging purposes only.

  • Type=ScreenLL: Defines the Screen Lingua Lib search driver for clip handling.

  • Server=path: Defines where subtitle clips are located on the main subtitle server.

  • BackupServer=path: Defines where subtitle clips are located on the backup subtitle server, if applicable.

  • ServerUsage=mode: Specifies how availability status is updated based on (main) server and backup server clip status; 0: available if clip is present on main server, 1: available if clip is present on backup server, 2: available if clip is present on either main or backup server, 3: available if clip is present on both main and backup server.

  • Config=ClipServerScreenLL.xml

Orad Using OCIP Connection String

This connection string is used for Orad video servers controlled by OCIP (Orad Control Interface Protocol).

Type=Orad OCIP; Name=[Name]; Server=[hostname/IP address]; Port=[Port]; LoadDatabase=true; Config=ClipServerOradOcip.xml

Example

Type=Orad OCIP; Name=OradVJ; Server=192.168.15.1; Port=10001; LoadDatabase=true; Config=ClipServerOradOcip.xml

Connection String Parameters

  • Type: Orad OCIP

  • Server: Defines the server hostname.

  • Name: Defines the server name (Default=Orad OCIP). Used for logging purposes only.

  • Port: Defines the server port. By default, the four ports 10001, 10002, 10003, and 10004 are configured on an OCIP-controlled Orad server. We recommend using different ports for AV Automation and Media Administrator.

    Example: 10002 for AV Automation and 10003 for Media Administrator.

  • LoadDatabase: If true, the server database is loaded at start-up (Default=False). Use true for Media Administrator.

  • Config: Configuration file containing further configuration settings.

Configuration File Parameters

  • LoopPostRoll: Number of frames before clip-end to restart loop. Should probably be set to a positive value to obtain smooth looping.

  • SkipAbortInLoadClip: If true, skip the ChannelAbort command at cue (Default=False).

  • TimeoutDefault: Timeout in milliseconds for commands with no specific timeout set (Default=1000(1 second)).

  • TimeoutChannelAbort: Timeout in milliseconds for the ChannelAbort command performed at cue.

  • TimeoutChannelPause: Timeout in milliseconds for the ChannelPause command.

  • TimeoutChannelPlay: Timeout in milliseconds for the ChannelPlay command performed at cue.

  • TimeoutChannelPlayInit: Timeout in milliseconds for the ChannelPlayInit command performed at cue (Default=4000(4 seconds)).

  • TimeoutChannelSetSpeed: Timeout in milliseconds for the ChannelSetSpeed command performed at play.

  • TimeoutChannelStatus: Timeout in milliseconds for the ChannelStatus command.

  • TimeoutCreateCallbackItem: Timeout in milliseconds for the CreateCallbackItem command at start-up (Default=2000(2 seconds)).

  • TimeoutItemCheck: Timeout in milliseconds for the ItemCheck command occasionally performed at cue.

  • TimeoutItemGet: Timeout in milliseconds for the ItemGet command occasionally performed at cue, and also for getting status.

  • TimeoutListChannel: Timeout in milliseconds for the ListChannel command at start-up.

  • TimeoutListItem: Timeout in milliseconds for the ListItem command at start-up (Default=2000(2 seconds)).

  • UsePingOcipOperation (boolean): If true, use an OCIP operation for Ping instead of the default TcpIpClient ping (Default=False).

Debug Parameters

  • WSACancelBlockingCallExceptionTraceEventType: The TraceEventType for the WSACancelBlockingCall exception. Options: Critical, Error, Warning, Information, Verbose (Default=Error).

Applies to Models

  • Orad VJ

Device Prerequisites

  • OCIP 1.0.4

VDCP Connection String

The VDCP driver supports both serial and TCP as transport. Video Disk Communications Protocol (VDCP) is also known as Louth protocol. The driver can be configured to run in 8 character or variable character mode.

Applies to Models

  • Dalet BRIO

  • Vector MultiPlay VServer

Device Prerequisites - VDCP

  • Dalet BRIO

    • Single VDCP connection configuration per port - does not support multiple control ports per connection

    • Only clips in folders added to the BRIO VDCP configuration will be visible for Viz Mosart to monitor and play-out

    • Duration of video files is only available if the VDCP connection is configured to use a physical play-out port.

Connection String Properties - VDCP

  • Type: VDCP (serial) or VDCPtcp (Ethernet)

  • Name: ID of this connection

  • Server: Hostname or IP-address of the server (for Type=VDCPtcp only)

  • Port: Serial port (Type=VDCP, Default=COM1) or server side TCP port to connect to (Type=VDCPtcp, Default=52z05)

  • LoadDatabase: If true, builds internal database of clips present on server and enables clip monitoring (Default=False)

  • Config: Name of the configuration file. ClipServerVDCP.xml is the default name of the file used by VDCP Connection String.

Examples

AV Automation: VDCP (serial)

Type=VDCP; Name=Server1; Port=COM1; Config=ClipServerVDCP.xml

AV Automation: VDCPtcp (Ethernet)

Type=VDCPtcp; Name=Server1; Server=192.168.42.42; Port=10001; Config=ClipServerVDCP.xml

Media Administrator: VDCP (serial)

Type=VDCP; Name=Server1; Port=COM2; LoadDatabase=true; Config=ClipServerVDCP.xml

Media Administrator: VDCPtcp (Ethernet)

Type=VDCPtcp; Name=Server1; Server=192.168.42.42; Port=10002; LoadDatabase=true; Config=ClipServerVDCP.xml

Configuration File Properties - VDCP

  • DefaultRecordingLength (integer): Default duration of recorded video files in frames (Default=1000).

  • DelayGetClipDuration (boolean): Enable to build the initial playlist without getting the file duration (Default=False).

  • IgnoreClipExistence (boolean): Enable to ignore requesting clip presence on the server.

  • LogMessages (boolean): If true, log any messages that are sent and received. Verbose logging must be activated for this to have effect (Default=False).

  • MaxClipList (integer): The maximum amount of clips to hold in cache. When this limit is reached, there will be no more clips added to the cache. Setting this to a low value reduces load time, but might cause invalid clip status if non-cached clips are in the rundown.

  • UseInternalPlayerState (boolean): Enable to ignore requesting presence of the clip on the play-out device using the ID REQUEST message.

  • UseLongClipNames (boolean): If true, use messages supporting variable length file names (maximum length 80 characters). If false, use fixed 8 character files names padded with spaces if less than 8 characters.

  • UseAddedClipsCommand (boolean): Enable to retrieve a list of new files added to the video server.

  • NextPingDelay (miliseconds): Interval in milliseconds between heartbeats sent from AV Automation to the VDCP server to keep the connection alive. Default = 10 seconds). e.g.: <item name="NextPingDelay" value="10000" />
    Turn off this ping using the DisableHeartbeat setting described below.
    To modify the ping interval for Media Administrator see Media Administrator - Properties Editor > Ping Delay.

  • DisableHeartbeat (boolean): A command request (heartbeat) is sent from AV Automation and Media Administrator to the VDCP server to keep the connection alive.

    • Turn off the heartbeats from both AV Automation AND Media Administrator by setting DisableHeartbeat=true in ClipServerVDCP.xml. e.g. <item name="DisableHeartbeat" value="true" />

    • Turn off the heartbeats from one application (AV Automation OR Media Administrator), by setting DisableHeartbeat in the application’s connection string and removing (commenting out) DisableHeartbeat from ClipServerVDCP.xml.
      Example connection string: Type=VDCPtcp;Name=Server1;Port=10001;DisableHeartbeat=true;Config=ClipServerVDCP.xml
      See also NextPingDelay, described above.

  • ClipNamePattern: see General Configuration File Properties

Viz Engine Connection String

Viz Engine Connection String, used by Media Administrator and AV Automation.

Connection String Properties

  • Type: VizEngine

  • Name: Defines the ID of this connection

  • Server: Defines the hostname or IP-address of the server (for Type=VizEngine only)

  • Port: Defines the port

  • Config: Defines the name of the configuration file

  • Folder: Location of the Viz Mosart configuration files. Either in %ProgramFiles(x86)%\Mosart Medialab\Mosart Server\ConfigurationFiles or with the video configurations in c:\channeltemplates.

Examples

Connection string for Integrated Engine (Viz Engine connection in AV Automation):

Type=VizEngine;Server=localhost;Config=VizEngineSwitcherConfig.xml (Port=6100 is optional)

Connection string for Video Server (Viz Engine connection in AV Automation):

Name=Vizrt;Type=VizEngine;Server=localhost;Port=6100;Config= ClipServerVizEngine.xml

Connection string for Media Administrator:

Name=VizEngine;Type=SimpleTestPlayer;Folder=D:\;SkipExtension=true;Config=ClipServerVizEngine.xml

Configuration File Properties

  • AlwaysGetDuration (default=FALSE):

    • When FALSE, only files in the active Viz Mosart rundown will get the actual video duration.

    • When TRUE, get the video duration from all files in the monitored folder. Note that setting this value to true will impact the startup time of the SimpleTestPlayer driver in Media Administrator for folders with a large number of video files.

Media Service and Viz One Connection String

This connection string is used by Media Administrator for Media Service and Viz One.

Device Prerequisites (Viz One)

For details, please consult Viz One documentation.

  • At least one user should be configured.

  • At least one publishing point should be configured.

Connection String Properties

  • Name: See Standard Video Server Connection String above

  • Type:VizOne

  • Server: The hostname or IP address of the server (Media Service or Viz One)

  • PublishingPoints:

    • Media Service: MEDIASERVICE

    • Viz One: Comma-separated list of publishing point identifiers

  • Config: See Standard Video Server Connection String above

  • PublishingPointAsObjId: If false (default), only one server id will be set: for Name (see above). If true, an additional server ID will be set for each publishing point.

The following property is used for Media Service only:

  • Port: The Media Service port. (Default is 21099). Please refer to the Configure Media Service section in the Media Service guide.

The following properties are used for Viz One only:

  • UserName: Username

  • Password: Password

  • AutoTransfer: If set to true, any assets in the rundown that are present in Viz One, but not on the publishing points, will be transferred. If false, they will not. (Default = True).

  • ValidDuration: Duration for which an asset should be present on the publishing point from time of transfer. Value is in hours . (Default = 24).

Example (Media Service)

Name=VizEngine;Type=VizOne;Server=localhost;Port=21099;PublishingPoints=MEDIASERVICE

Example (Viz One)

Name=VizOne;Type=VizOne;UserName=username;Password=password;Server=10.211.112.213;PublishingPoints=vizengine-1;ValidDuration=26;AutoTransfer=true;PublishingPointAsObjId=false

SQL Database Connection String

This connection string (in MediaAdmin) is for the SqlMediaSearch driver, reading clip metadata from an RDBMS (Relational DataBase Management System) using SQL, and then computing clip properties based on

  • SQL query results

  • existing clip properties (referred to as properties of 'the clip sent down to the SqlMediaSearch driver').

It is assumed that

  • all metadata resides in a single database table (the clip table)

  • the metadata pertaining to a single clip is found in a single row (the clip row) in this table.

The driver is designed to be used in conjunction with one or more video servers, to provide additional metadata about clips residing on the server(s). The presence of clip metadata in the database is not considered proof of clip existence; only clips found on a video server will be blue in the GUI. Place this connection string above (e.g. in Video clip Server 1) that/those of the video server(s).

Applies to Models

The driver has been designed to interact with any RDBMS (Relational DataBase Management System) using SQL. However, it has been tested for Microsoft SQL Server only. The following versions have been tested:

  • Microsoft SQL Server 2012 (SP1) - 11.0.3000.0 (X64)

  • Microsoft SQL Server Express (64-bit) - 11.0.2218.0

Device Prerequisites

Create a DB user with

  • read access to the table containing clip data

  • no write or admin access. (As no attempts to prevent SQL injection have been done, this is necessary to prevent malicious or careless users from changing the DB.)

General Format

Name=DB;Type=SqlMediaSearch;ProviderName=System.Data.SqlClient;Config=ClipServerSql.xml;DbConnectionString="..."

Connection String Parameters

  • Name: See Viz Mosart Video Server Connection String above.

  • Type: SqlMediaSearch

  • Config: See Viz Mosart Video Server Connection String above. A configuration file ClipServerSql.xml is installed. Use the name of this file (ClipServerSql.xml unless changed).

  • ProviderName: The 'invariant name' of a .NET Framework data provider. At least the following providers are installed with the .NET Framework:

    • System.Data.SqlClient

    • System.Data.Odbc

    • System.Data.OleDb

    • System.Data.OracleClient.

Others may have been installed. Only System.Data.SqlClient has been tested.

  • DbConnectionString: The connection string (containing connection settings) sent to the chosen provider. The format depends on the chosen ProviderName. For System.Data.SqlClient (the only provider tested) the format is documented in https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.connectionstring(v=vs.110).aspx. Quotes in the value have not been tested and may not work as expected.

  • FileClipProperties: Same as the ClipServerSql.xml parameter; see below. Should be set in ClipServerSql.xml.

  • FileSelectStatements: Same as the ClipServerSql.xml parameter; see below. Should be set in ClipServerSql.xml.

  • LogResult: Same as the ClipServerSql.xml parameter; see below. Should be set in ClipServerSql.xml.

  • DefaultTableName: Same as the ClipServerSql.xml parameter; see below. Should be set in ClipServerSql.xml.

  • MonitorFoundClips: Same as the ClipServerSql.xml parameter; see below. Should be set in ClipServerSql.xml.

  • MonitorClipInterval: Same as the ClipServerSql.xml parameter; see below. Should be set in ClipServerSql.xml.

Example

Name=DB;Type=SqlMediaSearch;ProviderName=System.Data.SqlClient;Config=ClipServerSql.xml;DbConnectionString="Persist Security Info=True;Initial Catalog=HarrisDBTest;Data Source=BGO-OFRENGINE\SQLEXPRESS;Failover Partner=aut-db-srv03.fs-pn.vizrtnet.int\harris;User ID=test;Password=test;"

Configuration Files

There are three configuration files:

  • ClipServerSql.xml

  • SelectStatements.xml

  • ClipProperties.xml.

When Mosart Server is installed, these files are placed in the ConfigurationFiles sub-folder of the installation folder. If any of them needs to be changed, follow standard procedure: Copy the file to c:\channeltemplates, and change the copy . If you choose to change the name, you must also change (accordingly):

  • If the name of ClipServerSql.xml is changed: The Config connection string parameter

  • If the name of SelectStatements.xml is changed: The FileSelectStatements parameter in ClipServerSql.xml

  • If the name of ClipProperties.xml is changed: The FileC lipProperties parameter in ClipServerSql.xml .

ClipServerSql.xml

This is the main configuration file for the driver. These configuration parameters are available:

  • FileClipProperties: The name of the file containing clip properties to be pulled from DB. Default ClipProperties.xml. See below.

  • FileSelectStatements: The name of the file containing the SELECT statements to be used. Default SelectStatements.xml. See below.

  • LogResult: Whether query results should be logged (in MediaAdmin console and in Viz Mosart log). Default true. Set to false if everything works fine, and the messages are annoying.

  • DefaultTableName: The name of the outer XML element shown when using LogResult. The default ('dummy') is probably OK.

  • MonitorFoundClips: Whether found clips should be monitored. Default true. If set to false, missing or changed clips will not be detected.

  • MonitorClipInterval: If the value is X (and if MonitorFoundClips is true), each found clip is required every X seconds. Increase if DB traffic is too high.

  • DbConnectionString: Same as the connection string parameter; see above. Should be set in the connection string.

  • ProviderName: Same as the connection string parameter; see above. Should be set in the connection string.

In addition, these 'common'/'standard' parameters are available:

  • SupportSearchUsingObjSlug: Ignores search for objSlug if set to false (Default=True).

  • SupportSearchUsingRefID: Ignores search for refID if set to false (Default=False)

SelectStatements.xml

If the name of this file is changed, the configuration parameter FileSelectStatements in ClipServerSql.xml must be changed accordingly.

If you find the description here somewhat abstract, please study the example(s) given in the installed file.

This file defines the SQL SELECT statements that are executed when

  • the DB is queried for data on a single clip

  • the DB is searched for clips satisfying a given search criterion.

Each of these two SQL SELECT statements is defined by a SelectStatement element. For technical reasons, the two SelectStatement elements are enclosed in a Statements element, which in turn is enclosed in a SelectStatements element.

A SelectStatement element has these attributes:

Attribute

Value(s)

Description

type

Single/Multiple

Distinguishing between the two types of SQL SELECT statements

database

 

The DB name

schema

 

The schema name

table

 

The table name

A SelectStatement element has these sub-elements:

Sub-element

Description

SelectColumns

The columns in the SELECT clause of the SQL statement

WhereColumn

The WHERE clause column to be searched for the (variable) search criterion

AdditionalWhereColumns

Additional WHERE clause columns being searched for constant values

The SelectColumns element has one or more SelectColumn sub-elements, each with these attributes (and no sub-elements):

Attribute

Value(s)

Description

name

 

The DB column name

type

String/Int

The DB column data type. For Microsoft SQL Server,

  • String is used for char and varchar columns.

  • Int is used for int columns.

format

Default/HhMmSsFfPackedBCD

How a column value is to be interpreted:

  • Default: The value is passed as is. (And this is default, so it is used if no format attribute is present.)

  • HhMmSsFfPackedBCD: The (four-byte) int value is interpreted as the packed BCD representation of a time code hh:mm:ss:ff. This is converted to the total number of frames. E.g., the int (decimal) 404310278 is hex 18194906, corresponding to the time code 18:19:49:06, in total 1649731 frames.

The AdditionalWhereColumns element has one or more WhereColumn sub-elements.

A WhereColumn element (either as a direct sub-element of SelectStatement, or as a sub-element of AdditionalWhereColumns) has these attributes:

Attribute

Value(s)

Description

Comment

name

 

The DB column name

 

type

String/Int

The DB column data type. For Microsoft SQL Server,

  • String is used for char and varchar columns.

  • Int is used for int columns.

Only String has been tested.

value

 

The value to search for

Used only for WhereColumn elements which are sub-elements of AdditionalWhereColumns. For the WhereColumn sub-element of SelectStatement, the value to search for is given by context.

searchMethod

BeginsWith/IsEqualTo/EndsWith/Contains

How the column value ( c ) is compared to the value to search for ( s ):

  • IsEqualTo: c must be exactly equal to s

  • BeginsWith: c must begin with s

  • EndsWith: c must end with s

  • Contains: c must contain s

Only IsEqualTo makes sense for Int.

EndsWith and Contains have not been tested.

IsEqualTo has not been tested for Int.

ClipProperties.xml

If the name of this file is changed, the configuration parameter File ClipProperties in ClipServerSql.xml must be changed accordingly.

If you find the description here somewhat abstract, please study the example(s) given in the installed file.

This file defines the clip properties computed by the driver. Each of these properties is defined by a Property element. For technical reasons, the Property elements are enclosed in a Properties element, which in turn is enclosed in a ClipProperties element.

A Property element has one attribute:

Attribute

Description

Comment

name

The property name

Only these have been implemented: Description, InPoint, ObjSlug, OutPoint

A Property element has one sub-element, an expression . The principal feature of an expression is that it may be evaluated to yield a value . There are four kinds of expression elements (so a Property element has one of these as a sub-element):

Sub-element

Description

Comment

ClipExpression

The value of a ClipExpression depends only on a property of the clip as sent down to the SqlMediaSearch driver.

 

DbExpression

The value of a DbExpression depends only on the value of a column in the DB row pertaining to the clip (the clip row).

 

ConstantExpression

The value of a ConstantExpression is (as strongly indicated by the name) constant , it depends neither on the clip as sent down to the SqlMediaSearch driver, nor on the DB.

ConstantExpressions were introduced for internal purposes, and have not been real-life tested.

OperationExpression

An OperationExpression is used to combine other (simpler) expressions by performing an operation , i.e., applying an operator to the values of its operands (sub-expressions). Each operand / sub-expression may be of any of the four kinds of expression listed in this table. In particular, OperationExpressions may be nested to any depth.

 

A ConstantExpression element has one attribute:

Attribute

Description

value

The (constant) value of the ConstantExpression

Both a ClipExpression and a DbExpression has two attributes:

Attribute

Description

name

See table below

default

The value to be used if evaluating the expression as described in the table below doesn’t make sense in the given context

The name attribute and expression evaluation is described in more detail for each of the two kinds of expressions:

Expression kind

Description of the name attribute

Expression value

Comment

ClipExpression

The name of a clip property

The value of the property for the given clip

Only BasePoint has been tested.

DbExpression

The name of a column in the DB clip table

The value of the column for the clip row

The column must be described by a SelectColumn element in the SelectStatements file.

An OperationExpression element has one attribute:

Attribute

Value(s)

Description

Comment

operator

Minus/Plus

The operator to be applied to the values of the operands. Details are given in the table below.

Both operators make sense for numerical arguments only, and have been implemented for integer arguments only.

An OperationExpression element has one sub-element: Operands. An Operands element has no attributes, but any number of expression sub-elements, meaning any number of ClipExpression, DbExpression, ConstantExpression, and OperationExpression sub-elements. These sub-elements are the operands / sub-expressions of the OperationExpression.

Here are further details on each operator:

Operator

Expression value

Minus

If there is 1 operand, the negation of the value of that operand. If there are 2 (or more) operands, the difference between the values of the first operand (minuend) and the second operand (subtrahend).

Plus

For any number of operands, the sum of the values of the operands. (As a special case, the ‘sum’ of no operands is 0. However, the Operands sub-element itself must be present. Anyway, a

<ConstantExpression value="0" />

would be more convenient.)