Document toolboxDocument toolbox

Vidispine

Release Notes [VF 21.4 RN]

The following items on the list encompass breaking changes, features, and fixes that are relevant for the major release.

Release Notes are divided into the following sections:

 

 


Release 21.4

Setup and Operations

Component updates

The following central components were updated and will be shipped in the noted version:

Component

Version

Component

Version

VidiCore

 

Active MQ

5.15.15

ConfigPortal

21.4.47

AuthService

21.4.1-prerelease.9

MediaFramework (Windows)

21.3.0

VideoEngine Images

21.4.56 (transcoder)

21.4.58 (commandline)

Angular

12.0.3

BPMN.io

8.6.1

RabbitMQ

3.9.5-management

RabbitMQ Operator

1.8.2

Camunda

7.15

Powershell

7.1.4

Prometheus

0.50.0

Grafana

7.5.10

Kubernetes

1.20 - 1.22

Support for Kubernetes 1.22

Kubernetes 1.22 is supported in this release, versions before 1.20 are no longer supported. Due to some API deprecated in Kubernetes 1.22, the Nginx Ingress Controller is also updated in order to support the newer API. Please check the public accessible API/UI if everything is working after the upgrade.

If the internal ports (example RabbitMQ, Elastic Search, etc) are not accessible after the upgrade, please try to restart the ingres-tcp-operator service to force it to re-read the configuration and re-apply the changes.

Features

New Agents and Tasks

Find Metadata In Sequence Items

This task finds out if a specific metadata is set to a specific value in a sequence attached to an item. This can help e.g. to find out if source items for the sequence are marked as restricted.

Tasks for generic REST calls

Several news tasks are introduced to support generic REST calls;

  • Make HTTP DELETE call to an API endpoint

  • Make HTTP GET api call to an API endpoint

  • Make HTTP POST call to an API endpoint

  • Make HTTP PUT call to an API endpoint

API endpoints need to be configured in ConfigPortal to support staging. Afterwards they can be selected as input for the tasks in the Workflow Designer.

HTTPS and basic authorization are supported.

The Workflow Monitor now displays the name, GUID and URL of the endpoint in the details of the tasks.

The use of the generic REST calls is intended for prototyping and setup phases - for productive usage it is recommended to check the possibility to develop specialized agents to implement the corresponding REST API.

Common Index File Creation

Common index files are needed for faster load times in video players. In many cases, these files are automatically created when transcoding the proxy file. In case proxy files are imported from third party systems, this new task can be used to create the index file after the import.

Copy File Agent

A new task “Copy File Via Agent” supports copying files directly in the agent including the object handling in VidiCore (create file object, attach to shapes etc.). This task can be used to avoid calling VidiCore for processing the file copy.

List of Adapted Tasks

Normalize MXF File via Linux

The task has a new optional parameter to set the ShapeTag of the newly created shape.

ControlVantage / TranscodeVantage / TrimVantage

The latest Telestream Vantage API version are included in the task version 2.1. This leads to some restrictions especially in the possibility to achieve workflow results from Vantage. If this is needed, please refer to the configuration switch “Use legacy XML REST API”.

New task versions where created, which add additional information like Job-ID and Job-state to the result of the task. The new versions are:

  • ControlVantage: 2.0

  • TranscodeVantage 3.0

  • TrimVantage: 2.0

Additionally, all versions support the Vantage Job ID as a new output parameter.

Stitch Videos

The task Stitch Videos now uses the metadata originalFilename instead of the filename of a source file for the original timecode metadata.

Trigger workflow execution based on metadata changes

Metadata changes can now lead directly to the triggering of workflows. The VidiFlow rule engine can be used to decide which metadata needs to get which new value(s) to trigger a workflow.

A new service has been created to process the notifications from VidiCore, evaluate the rules trigger the workflow. For configuration options refer to Trigger workflows based on metadata changes [VF 21.4 UG].

User Tasks

VidiFlow supports now user tasks. The current implementation is limited to simple forms, mainly meant for administrative task, but will be expanded in future releases.

A new backend service was implemented to provide the necessary API calls. The Workflow Designer supports adding user tasks to a workflow, including the selection of mapped groups from ConfigPortal for the assignee group or to pre-select the user of the current workflow for a user task.

Some VDT component will be developed to provide the needed UI for task filtering, selection, assignment and execution.

Workflow Monitor

Incident workflow state

VidiFlow now supports a new workflow state called incident. The state is represented in purple color. Workflows in an incident state are running from Camunda’s perspective, but need manual interaction on the task where the incident happened (restarting or canceling the task). The workflow itself can be canceled in Workflow Monitor if there is no chance to run successfully.

Workflows in an incident state will automatically be canceled by the system after 30 days.

Show expander only for workflow with sub-workflows

The expander icon top open sub-workflows will now only be shown if sub-workflows are existing below a workflow.

Support error message

Users can now define an error message string variable to be shown in the Workflow Monitor. The idea behind this features is, the in the design phase, different recurring error scenarios can be output to the string values. Administrators can see and filter these values in the Workflow Monitor to fix the problems and maybe restart the workflows.

Workflow restart behavior

To give a better overview about restarted workflows, two new columns were introduced.

The column “Restart” shows different icons depending on if a workflow was restarted or not. A tool-tip text helps when hovering over with the cursor:

  • “Never restarted”: The workflow has never been restarted.

  • “Restarted”: The workflow has been restarted. At least one workflow copy was created performing the restart.

  • “Restart copy”: The workflow is a copy of another workflow which should be restarted.

The column “Relation ID” can be used for filtering to see a workflow that should be restarted and and all the copies. Depending o the start state, the following values are stored as a relation ID:

  • “Never restarted”: Relation ID is empty

  • “Restarted”: The relation ID is the instance ID of the workflow.

  • “Restart copy”: The relation ID is the instance ID of the original workflow that has been restarted.

Users with administrative rights for the Workflow Monitor can now decide in which user context a workflow is restarted. They can choose if the restart is done with the original user or in the own user context. This can be differentiated via two different toolbar buttons.

Trigger task execution retry

Tasks can now be triggered again in the details view via a retry button.

Link to logs for tasks

After selecting a task in details view, users can now directly open the tasks log files in Kibana with one single click.

Color separation of workflows

The color schema was changed in the following way: Main workflows are displayed alternately in white and grey. If a workflow has sub-workflows, they are displayed in the same color as the main workflow. This is done in order to make it easier for users to recognize related workflows.

Filter on column “Progress”

A new filter is now available on the column “Progress” to search for task names and error messages.

Show reference VX-IDs and names for storages

For tasks having storages as parameters, the details view now shows additionally the VidiCore storage ID and the storage name defined in ConfigPortal beside the storage GUID.

Support of workflow output parameters for object ID

Workflow output parameters are now also supported for the object ID. This allows for more comfortable monitoring of workflows which create the main object in the workflow, such as file ingest workflows.

Link to MediaPortal on object ID

For all object IDs of type item or collection, Workflow Monitor shows a link to MediaPortal details view, starting in a different browser tab. Users can use this link to view the objects metadata or the proxy video in MP.

The URL to MediaPortal needs to be configured to enable this feature.

Show error values for error boundary events

When catching error boundary events, it is possible to define variables to receive the error message and code for the boundary events. The values of these variables are now shown in the details view after selection of the boundary event.

Filter Starttime set to “today” when starting

The filter for Starttime is initially set to “today” when starting Workflow Monitor. This reduces the initial load time.

Smaller additional features

  • Opening a filter sets the cursor focus directly to the text field.

  • Thousand separator added for workflow count.

  • Ctrl-click opens the details tabs for the selected workflow without showing the new tab.

  • Date values are now shown in a shorter representation to save screen space.

Deletion Monitor

Cleanup of Deletion Monitor index

The VidiFlow Deletion Monitor now supports deletion of its data. A new cron job "Delete-Monitor-Cleanup" was created with the default configuration having been set to 720 days. For more information please refer to the VidiFlow Setup Guide.

Enhanced Prometheus metrics

Several new metrics for Prometheus are now introduced for VidiFlow

Prometheus metrics are only available for services hosted in Kubernetes. Service fabric services don’t provide any metrics.

Camunda external task execution time

The overall external tasks execution time (e.g. Service Tasks, Rule Tasks) from the perspective of the Camunda workflow engine can be monitored per task.

Long running tasks

The following task are often rather long-running. For this reason, various metrics were implemented to monitor the runtime behavior.

The following tasks provide FPS to Prometheus (only K8S versions):

Task

Metrics

Task

Metrics

Create MXF File from Binary File

frames/s

Transcode proxy with TranscoderS4M

frames/s

Transcode File via TranscoderS4M

frames/s

Normalize MXF File

frames/s

Trim MXF File

frames/s

Stitch Videos

frames/s

Copy Physical File

bytes/s

Move Physical File

bytes/s

Render Item Sequence

frames/s

Transcode Item

frames/s

CopyFile

bytes/s

TranscodeVantage

frames/s

TrimVantage

 

Performance, stabilization and other improvements

Increased lock timers in Camunda Broker

In some circumstances the Camunda Broker was not able to extend all required Camunda task locks within the predefined look-ahead time interval. This lead to performance degradation. All related timers were increased to avoid this. Additionally, the prefetch count for the Broker’s queue was changed to enhance load balancing for multiple Broker instances.

Task contract inform about agent names

VidiFlow task contracts contain also the name of the agent implementing the task. This helps to identify the corresponding log file entries for a given tasks. The contracts can be found, among other places, in the VidiFlow Portal.

Fixes

Item #

Item

Item #

Item

187721

Camunda: Boundary event not handled

190449

Read Physical File Content Doesn't work with files with space in filename

190538

Rule Designer not able to save rule with correct rule name

190826

Retrying Contract provisioning may cause subsequent contract failed to be POSTed to CP

191100

Vidicore Library item page is keep on loading when external id is missing

191138

Library do not stage correctly

190130

MFT-Sendto Mask: Support for mandatory fields

191434

Deletion Monitor Cleanup not fully working for Postgres database

190721

Get Source File from Shape Error in MediaAgentProvisioner

191619

Contract Provisioner creating contract should not throw exception when CP return http status 400 and mentioned contract is exist

187478

Issues in the VMPS3 Timecode repo

190320

OutofMemory Exception in Workflow Index

190733

WF Monitor: Not able to differentiate Cancel and Failed Workflow

191419

WF-Monitor: Expanding sub workflows does not work reliably

197711

WF-Monitor: Freetext search result will mix with the notified workflow update.

198197

IPTC Metadata agent typo in Metadata Name

197852

Workflow Monitor Details: For Call Activities all input and output parameters are shown multiple times in the monitor

197802

Get File By Shape Tag Contract has a Description set as Default Value

197543

Adapt Metadata Projection "pf_metadataExport" to avoid ambigous path error

189930

VC API should be exposed via VF public LB by default

191001

Libraries: Add libraries to Business Rule IdentifyPlatformUriType

189459

Add TTL to (Transcoder) RabbitMQ messages