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).
- Support database purging/export for all supported storages (#3383).
- Support checking file status on storage after transfer (#3413).
- Exclude $RECYCLE.BIN from VSA indexed directories (#3321).
- Newly added job step not being used by new jobs (#3419).
- Job feedback queue growing after running an ARCHIVE job (#3405).
- Vidispine server opening too many UDP sockets when metrics are enabled (#3401).
- Slow deletion of duplicate metadata documents on db migrate (#3400).
- Transcoder may get more jobs than the configured “maxJobs” (#3375).
- Cannot hard delete user with collections or quota rules (#3356).
- Infinispan cache sometimes gets cleared when a node leaves and rejoins the cluster (#3338).
- Modifying multiple metadata entries in one request gives HTTP 400 (#3289).
- File delete job finishing without removing file from storage (permission error) (#3284).
- Out of memory error when migrating username metadata (#3355).
- No thumbnails created on import with transcode disabled (#3353).
- Migration failing on MySQL when multiple databases exists (#3331).
- MySQL migration does not handle primary keys properly on clustered MySQL (#3329).
- Database migration from 4.13 fails on first attempt on MySQL (#3316).
- CloudConvert transcode fails when default transcoder is Vidinet (#3351).
- Media check using incorrect Vidinet transcoder (#3384).
- Thumbnail jobs using Vidinet fail if S3 bucket requires encryption (#3354).
- Conform job against Vidinet fails if there are local-file thumbnail resources (#3374).
- Conform of video only shape fails using Vidinet (#3368).
- Conform job against Vidinet fails if defaultTimeBase not set (#3350).
- External transcoding failing when default transcoder is Vidinet (#3362).
- Document metadata extraction failing for URIs containing query parameters (#3372).
- IMF import goes into WAITING if no local transcoder exists (#3366).
- UTF-16 sidecar file fails to import from S3 (#3380).
- HTTP 500 when fetching VXA jobs using API/vxa/job (#3347).
- HTTP 404 when fetching audit logs when no username is specified (#3371).
- HTTP 400 when adding OTIF plugin on S3 (#3281).
- No username returned from job.getData(“username”) (#3345).
- NPE when using Aurora via CeriTalk API to analyze files (#3377).
- NPE when creating storage without specifying method URI (#3201).
- MXF muxing does not fail properly fail in case of HTTP PUT errors (#3373).
- Artifacts when seeking in RED transcoded material (#3199).
- vidispine-agent-admin command doesn’t work if the agent is not binded on localhost (#2759).
Command line tool fixes¶
- KeyError from vidispine-admin if database username/password is not specified (#3209).
- This release adds support for running Vidispine server with PostgreSQL 9.6 (#3415).
- Return databaseSize in bytes not megabytes (#3318).
- If a file is on VSA, pick VSA transcoder even though defaultTranscoder is ‘vidinet’ (#3311).
- Encrypt secret keys in export locations (#3118).
- Encrypt passwords in URIs in the job metadata (#2973).
- Support using “content=external” to fetch collection external ids (#2760).
New agent features¶
- Be able to configure VSA Job Concurrency in the agent config file (#2848).
- Be able to set VXA transcoder directAccess setting in the agent configuration file (#3332).
- Add “s3 directAccess” as the default setting in the configuration file (#3333).
- Fix possible connection issue between Vidispine cluster and VSA using websocket (#3341).
- NPE when trying to validate a vidinet shape without original tag (#3337).
- Fix thumbnail not generated during transcode jobs if thumbnail settings are specified in the shape tag (#3314).
- Fix to only use “CLOSED” or “BEING_READ” files as the source file of thumbnail jobs (#3137).
- Fix per class log level setting not working in VSA (#3340).
- VSA regression: Possible NPE when connecting to vidispine via SSH (#3334).
- Fix WebSocket file descriptor leak in VSA (#3319).
- VaaS: VSA gets into ‘too many open files’ issue after a while (#3312).
- Ignore broken symbolic links on VSA storages (#3176).
The username of users can now be changed (#3232). It is also possible to assign multiple usernames, or aliases to users. Aliases can be used to for example allow a user to log in using either the username or the users e-mail address (#3260).
PUT /firstname.lastname@example.org Content-Type: application/xml <UserDocument xmlns="http://xml.vidispine.com/schema/vidispine"> <userName>stephen</userName> <alias>email@example.com</alias> <realName>Stephen</realName> </UserDocument>
User access keys and tokens¶
Support for user access keys has been added. Access keys are long-lived tokens that can be used to authenticate a user, that can be used instead of username/password credentials.
<AccessKeyDocument xmlns="http://xml.vidispine.com/schema/vidispine"> <id>VSID2C56CQTA7DWW7DLF</id> <secret>PiFHewzGN3tZ/3lSeAkBVX+5YOw3wwpHTO2iqIaa</secret> <status>ACTIVE</status> <created>2018-06-01T10:36:13.891+02:00</created> </AccessKeyDocument>
To make it easy to create authentication tokens when using aliases or access keys, a new create token resource has been added that does not require a username.
Group files by prefix¶
Files in file listings with the same prefix, in the same directory, can now be grouped together (#3230). This is supported for all types of storages, regardless if they have the notion of directories or not.
For example, given a file hierarchy of $YEAR/$MONTH/, we might have:
<FileDocument xmlns="http://xml.vidispine.com/schema/vidispine"> <file> ... </file> <prefixes> <prefix>2017/04/</prefix> <prefix>2017/05/</prefix> <prefix>2017/11/</prefix> <prefix>2018/02/</prefix> </prefixes> </FileDocument>
Checksum validation on transfer¶
Copy and move jobs have been updated to support
checksum validation (#3229).
If enabled, the checksum of the written file will be computed and verified against that
of the source file, and if different, will cause the job to fail.
Elasticsearch 6.x is now supported (#3081). Due to the removal of mapping types, older Elasticsearch versions (<= 5.5.x) are not supported anymore.
The support of two-way SSL (client authentication) with Elasticsearch (#3231) is added as well. It can be used in setting up PKI user authentication.
Multiple audio codecs in presets¶
Creation of videos with audio tracks/streams with different audio codecs
is now possible. Use the
audioTrack element in the transcode preset (#2932).
For example, to transcode audio to both AC-3 and AAC:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <TranscodePresetDocument xmlns="http://xml.vidispine.com/schema/vidispine"> <format>mov</format> <audioTrack> <codec>ac3</codec> <bitrate>384000</bitrate> </audioTrack> <audioTrack> <codec>aac</codec> <bitrate>96000</bitrate> </audioTrack> </TranscodePresetDocument>
The thumbnail index can now be rebuilt using a re-index thumbnail request (#3224). This indexed used to be rebuilt when rebuilding the item index, but must now be rebuild separately. This can improve the item reindex performance, especially if thumbnails are stored on an object storage such as S3 or Azure.
AWS temporary credentials¶
The AWS credentials been sent to VSA can be configured using
EIDR metadata import¶
EIDR Integration (#2893).
You can now import metadata from the EIDR database. There is a new resource type for accessing EIDR. Synchronization is enabled by setting the EIDR id as metadata on an item. Later on a single item or a library of items can be synchronized.
- Analyze shapes using Vidinet transcoder (#3219).
- Conform using Vidinet transcoder (#3220).
- Support placeholder raw import using Vidinet (#2962).
- Change role requirement for GET API/vxa (#3246).
- Add binary as a component type for placeholder imports (#3122).
- Support automatic creation of users authenticated by custom Shiro realms (#3293).
- Make it possible to configure S3 transfers to be HTTPS (#3227).
- Spread transfer load over available VSAs (#3126).
- Allow archive beans to clean up in case of a failed job (#3109).
- Allow archive storages to be used as destinations in storage rules (#3108).
- Add configuration to stop archived files from being used as storage rule transfer sources (#3107).
- Allow archive beans to select source storage for archive jobs (#3106).
- Include item and shape ids in job metadata for transfers started from storage rules (#3127).
- Be able to skip auto-refreshing libraries updates after item metadata changes (#3298).
- Optimize database query for metadatafield retrieval (#3295).
- Performance improvement on group deleting if a group contains many ACLs (#3270).
- Improve IMF jobs so they are compliant with Vidinet (#3258).
- Performance improvements on updating much referenced metadata (#3129).
- Use a single S3 “PUT Object” request for small files (#2956).
New transcoder features¶
- Enable support for R3D files with multiple video streams (#3297).
- Support for Closed Captions (608 & 708) (#3052).
- Automatic creation of thumbnails at scene changes (#3217).
- Transcoder self test reports failed transcoders as OK (#3291).
- Transcode with destinationItem specified fails against Vidinet (#3279).
- Export jobs fail on systems with only Vidinet transcoders (#3276).
- Auto import jobs fail on systems with only Vidinet transcoders (#3274).
- Transcoder self test fails on systems with only Vidinet transcoders (#3004).
- Shape/essence import goes into WAITING if no Vidispine transcoder exists (#3269).
- Delete Jobs Finishing But Files Not Removed (#3284).
- Media check failing if apiNoauthUri contains amazonaws.com (#3255).
- Not possible to abort Atempo archive jobs (#3121).
- Item delete request with
keepShapeTagStoragefails with NPE (#3210).
- Transcode failing when transcode preset contains multiple audio outputs specifying more channels then found in source file (#3178).
- Indexing error if multiple timespans have the same boolean field with different values (#3093).
- Scheduled requests without a body cannot be viewed (#2904).
- Parameter ‘state’ not optional when getting scheduled requests (#2903).
- JMS notifications fail with NameNotFoundException. (#3214).
- Item list from database becoming slower and slower (#3271).
- Thumbnail proxies are wrong when apiurl does not end with /API/ (#3262).
- Checksum computed multiple times for the same file (#3259).
- Missing subtitle text from imported SCC file (#3242).
- Incorrect output length when rendering NTSC sequence (#3240).
- Database migration fails on name column change against MySQL (#3235).
- Fix incorrect role checking on metadata dataset resources (#3198).
- Shiro plugin cannot read form parameters from servlet request (#3195).
- Fix transcode failure if one of the transcode presets has “noVideo=true” and “noAudio=true” (#2988).
- Error resuming file listing if the path contains a space (#2987).
- Agent name not set properly by vidispine-admin vxa-enable (#2399).
- VSA reports shares state incorrectly (#2980).
- Thumbnail job fails on file with pixelFormat yuyv422 (#3257).
Upgrading from 4.13¶
Solr: No changes to the documents. Re-indexing is not required.
Elasticsearch: Supported versions have been changed to 5.6.x, 6.0.x, 6.1.x, or 6.2.x.
The item re-index process will no longer also rebuild the thumbnail index that is maintained internally by VS. The thumbnail index can now instead be rebuilt separately using a re-index thumbnail request. To restore the old behaviour, set
A number of new job steps have been added to support checksum validation on transfer.
- COPY_FILE/MOVE_FILE, step 90 - Waiting for source file hash.
- COPY_FILE/MOVE_FILE, step 92 - Retrieving source file hash.
- COPY_FILE/MOVE_FILE, step 140 - Waiting for destination file hash.
- COPY_FILE/MOVE_FILE, step 150 - Verifying file hashes.
Previous versions had a bug where collections containing libraries did not always have recursive ACL’s properly applied items in those libraries. This is fixed for newly created ACL’s, but any old ones with this problem will need to be re-indexed with:
A role have been added for reading Vidispine Agents:
_vxa_read. To make sure admin users receives the role properly, please run APIinit: