The Nuxeo Media Manipulation connector allows users to transform media on the fly.
Transformations can be applied on the media content that is present as the main file, xpath - file:content of the document
Installation
The connector is available as a single add-on package in nuxeo marketplace.
Customers can install this just like any other add-on onto the nuxeo server instance.
Prerequisites
Nuxeo Platform – LTS-2023
Nuxeo Web UI – dependent package which will be installed if not present.
Picture View generations for OriginalJpeg and FullHD are enabled.
Current Scope
Supported Media Facets: Picture
Supported Functionalities: Cropping and Resizing, Addition of custom aspect ratio options, Output format selection, Download, Share – Public link, Save Manipulation as rendition, Save Manipulation as Derivative document.
Functional Overview
After installation of the package, on a given picture faceted document, for the users that have write permission, a document action - Edit Media - is enabled.
Upon clicking this icon, users will be presented with the dialog where they can perform all the transform activities on top of the images.
Keeping UI performance under consideration please note that the image that is loaded in the crop area is OriginalJPEG view of the actual image.
In case of large files, it is loaded with FullHD view.
All the transformations done on the FullHD view will be scaled accordingly and applied as would be for originalJPEG, resulting in the expected result.
The threshold at which this should happen is configurable and this would happen when the size of the originalJPEG rendition in MB > nuxeo.media.image.maxsize.
Cropping, Resizing and Aspect Ratios
The crop panel displays the picture and the crop box. Crop box can be operated freely when the Aspect ratio is selected as free, which is default.
The add-on offers some out of the box aspect ratios.
As these options sourced to the vocabulary: aspectRatio, admin can configure them as desired.
Sharing
Public URLs can be generated for the desired/existing transformation(s). These URLs won't need any authentication and can be simply used to get the transformed image.
To generate URL for desired/current transformation, the option of Custom must be selected in the drop down – Select a Value and clicking on create public url button.
The generated URL can be timeboxed by selecting from and to dates.
Download as
Allows to download the image applying the desired transformations in the selected output format. The following formats are supported for now: JPEG, PNG and WEBP
For both the download and public link use cases, please make sure to add thenuxeo.url
config key with appropriate nuxeo host value:
Eg: nuxeo.url=https://<your domain name here>/nuxeo
Saving
The desired transformation can be saved as a custom rendition in the current document or as a new derivative document.
Upon using Save as rendition, the desired transformation will be saved as a new picture view of the current document. This can be seen in the additional formats section of the document details page in Web UI. User can download the same from here.
Custom rendition is seen in additional formats section.
Upon save as derivative, a new document will be created, copying from the current document but containing the main file as the desired transformed image. The derivative document name can be specified in the derivative name field in the media manipulation dialog.
A new document can been seen with name: Derivative – City
Known Limitations
Large Images could cause significant user wait time when trying to invoke dynamic transformation.
Possible timeouts during the transformation of large sized images.
The transaction timeout needs to be increased explicitly in such cases using the config key:
nuxeo.media.transform.transaction.timeout.seconds
Future Scope
Support of additional media and functionalities.
Asynchronous handling of invoked transformation requests with a dashboard to check the status.
Delivery through CDN.