Version 4.17

The release notes will tell you what’s new in each version, and any changes that you must be aware of when upgrading. For reference, Vidispine ticket numbers are printed as (#1234).



New features

  • Allow analyze jobs to run as part of a transcode/import job (#3867).


  • Enable metadata update requests to only return changed entries (#3974).
  • Allow collection to be retrieved without items, collections or libraries (#3927).
  • Support Google Cloud transcoders in Vidinet (#3959).
  • Improve performance of global metadata updates for large documents (#3965).
  • Improve performance of metadata group search on global metadata (#3946).
  • Faster removal of global metadata by UUID (#3922).
  • Expose creation time for shapes (#3899).
  • Support creation of shapes with components referencing different files (#3977).
  • Allow user aliases to be set via Shiro (#3960).
  • Reduce possible database locking error on “t_file” (#3923).
  • Add flag to limit import of unfulfilled partial IMPs (#3853).

Bug fixes

  • Metadata group is still returned after deletion in document metadata (#3917).
  • Missing boost factor for phrase query in Solr (#3901).
  • Components can get incorrect itemTrack when using path projections (#3895).
  • Incorrect search result if query contains a “NOT” operator and a boost factor (#3878).
  • Dataset field validation to support multiple hierarchies (#3994).
  • Missing recursive element in item ACL response (#3887).
  • VSA should only close proxy URIs that VSA has created, not proxy URIs that VS has created (#3892).
  • VXA URIs should always be accepted for VSA transcoders with the same host (#3862).
  • Use IMF InsintricDuration if SourceDuration is not present (#3849).

Transcoder fixes

  • Watermark/timecode appearing in formats that should not have watermark (#3933).



New transcoder features

  • Support for extracting IPTC-metadata from images (#3710).

Bug fixes

  • Job step marked as DISAPPEARED even though sub-steps are running (#3865).
  • Render job fails if sequence does not contain tracks for all audio channels (#3839).
  • NPE on LDAP sync if name attribute is missing from a user entry (#3838).
  • Indexing failing for item with thousands of files (#3837).
  • TTML timecode parser does not handle fractions (#3831).
  • Incorrect essence version on item if essence import job fails (#3830).
  • Binary components missing from shape after placeholder import of binary component (#3828).
  • CloudConvert script not evaluated for essence import jobs (#3827).
  • File on StorNext archive not shown as ARCHIVED (#3824).
  • File on Glacier Deep Archive not shown as ARCHIVED (#3823).
  • Placeholder import job incorrectly overwrites original shape metadata (#3821).
  • Transcode of document formats not working with CloudConvert (#3817).
  • Scheduled requests not working for all endpoints (#3815).
  • Incorrect username migration query shown on dry-run (#3787).
  • Import settings not applied during import to placeholder item (#3770).
  • Normalizer class cannot be accessed from sandboxed JavaScript (#3749).
  • Retrieving storages by storage group doesn’t work since 4.16 (#3748).
  • Dataset values not displayed in search results (#3734).
  • Shape import of .mov file creates item with wrong mimeType and mediaType (#3732).
  • Unable to update all action fields on a notification (#3705).
  • Unable to update trigger on notifications (#3704).
  • EJB notification is not fired if synchronous is set to false (#3703).
  • Items and collections not reindexed after an external idenfitier change (#3697).
  • Can’t import to placeholder that was created before upgrade to 4.16.1 (#3693).
  • Too large document_text causing too large messages on the index queue (#3669).
  • Integer values accepted as input for date fields (#3665).
  • Shape import of IMF package does not set system metadata, like original codec etc. (#3301).

Transcoder fixes

  • Transcoder generates invalid MXF (#3889).
  • Slow media check of tar file on S3 storage (#3835).
  • Incorrect bit rate metadata for MPEG transport stream (#3788).
  • Burn in timecode without background bar causes text shadow (#3777).
  • Shape deduction of SVG files take a very long time (#3720).

Agent fixes

  • Shape deduction by agent fails for file on S3 with special characters (#3563).



PostgreSQL 11 and Ubuntu 18.04

PostgreSQL 11 and Ubuntu 18.04 are now officially supported.

Configure OAuth authentication using API

The OAuth configuration can now be set using the new auth configuration endpoint. Previously it was supported by adding the configuration in the Shiro configuration file.

See Configure OAuth2 using the API for more details.

Trigger notifications from JavaScript

Notifications can now be sent from JavaScript job steps (#3454). This is done using the notification object. This works for all notification actions.

For example, given an SQS notification with id VX-45, adding a message to that queue could be done using:

notification.send("VX-45", {
   "item": "VX-1",
   "state": "VALID"

Import of TTML subtitle sidecar files

Import and basic parsing of TTML subtitle files is now supported (#3581). The content of TTML files will be parsed as subtitle metadata on the items. Currently supported fields are stl_text, stl_justification, stl_color and stl_font.

Storage priority

The user can now assign a priority to a storage. When a source file exists on multiple storages Vidispine server will use the file from the storage with the highest priority. This is, for example, useful if one storage has much faster retrieval speed than the other(s) (#3578).

Control if a storage is active/inactive

This feature allows the user to mark a storage as active by adding a .storage file in the root of the storage. To enable this check for all storages you can add storageActivationFile to the server.yaml. To only enable it for a specific storage you can set the key storageActivationFile in the storage metadata (#3552).

Improved status of thumbnail resources

The thumbnail resource has been updated to contain online/offline information (#3228).

<ResourceDocument xmlns="">

Improved access control options

A new appliesTo setting is introduced for finer control of the entities that an access control entry is inherited to. This replaces the previous recursive option (#2369).


  • Preserve access granted by disabled users (#3631).
  • Support for aborting jobs in Vidinet (#3630).
  • Metadata locks on collections (#3590).
  • Retry to send job to Vidinet if Vidinet is temporarily inaccessible instead of failing the Vidispine job (#3528).
  • Support for using Nexio FTP-servers as storages (#3514).
  • Skip unnecessary media checks for files on object storages (#3511).
  • New endpoint to set multiple configuration properties at once (#3451).
  • Support to get all key/value metadata of metadata-field/group (#3438).
  • Validate bucket region when creating an S3 storage (#3147).

Bug fixes

  • IOException for FTP storage when pooling is enabled (#3700).
  • Get metadata not accepting all timecode formats of interval parameter (#3657).
  • HTTP 500 when adding access controls in bulk (with -Xss256k) (#3617).
  • Stack overflow error when running with a smaller stack size (#3612).
  • High memory usage due to a large number of OpenEJB scheduler threads (#3611).
  • Error message in log if no S3 bucket configured for audit trail purging (#3584).
  • Thumbnail job does not honor resolution set in shape-tag (#3579).
  • Search operator name not validated when using Elasticsearch (#3567).
  • Cannot import sidecar with fileId on Vidinet (#3558).
  • Jobs that have been in WAIT state cannot be deleted (#3555).
  • Bad performance of collection/{cid}/graph/dot if ancestor collections have a lot of items (#3546).
  • Permissions created by grantor persist after deleting grantor account (#3535).
  • URI-escaping of files detected on Azure storages is not working properly (#3532).
  • markDeletedFilesMissing gets stuck on huge amount of entries (#3428).
  • Metadata changes on inherited metadata are not reflected in search index (#3238).

Transcoder fixes

  • Improve transcoder retry logic for mutable regions (#3692).

Agent fixes

  • Allow moving files within the same VSA storage (#3426).
  • VSA rewrites CIFS URLs (#3391).


This release adds support for Ubuntu 18.04 and PostgreSQL 11. At the same time, support for PostgreSQL 9.1 and 9.3, MySQL 5.5 and Ubuntu 14.04 has been discontinued.

Upgrading from 4.16

  • APIinit is needed due to new metadata fields added for TTML parsing.
  • Solr: No changes to the documents. Re-indexing is not required.