Key features of the technical architecture of MediaCore include:
A core suite of low level services fulfilling the essential requirements for managing heterogeneous digital assets.
Key constructs (Assets, Categories, Projects) that can be combined to build sophisticated workflows and business processes.
An n-Tier system architecture that facilitates deployment on the 'Cloud' providing a low cost, scalable solution for any size of organisation.
A robust security model allowing secure access and control over the system and its data.
A comprehensive set of curation management tools providing an array of features for various types of user to administer the content.
A flexible presentation layer with optional eCommerce functions enabling a range of online functions, e.g. ‘Photo Portal’, ‘Online TV’, ‘Searchable Document Archive’.
The Media Storage Service abstracts the physical storage from the main applications. It acts as the gateway to the physical storage mechanism, and is the only path for accessing and updating the metadata recorded against each instance. Storage of information is split across database and file systems, which can be local and/or networked storage or Cloud storage (e.g. Amazon S3). In addition the storage utilises local caches to enhance performance & scalability. The Media Storage Service also handles the storage of the metadata.
The standard MWG, XMP™ or IPTC fields
Additional internal fields (such as ‘for-sale’, ‘is-public’, ‘private-comments’, etc.)
Transformation directives (cropping, colour adjustments, contrast adjustments, etc.)
Categorisation linking (used to support tagging, galleries, events, etc.)
The system supports non-destructive editing, i.e. always retaining the original asset. The ‘Render Service’ performs the ‘Transformation Directives’ upon that asset at runtime and caches the result.
Any updates performed outside of the system, can be re-imported and automatically linked as a new version of the original asset.
The Indexing Service allows applications to query the contents of the metadata stored in the storage service. It supports the indexing of tags, numbers, dates, object Ids and tokenised text (which allows the system to utilise the fuzzy matching and language stemming features). The index is stored on a local or networked file system, and is highly scalable ensuring that response times remain almost constant as the index size increases.
The Render Service transforms media assets into other formats as required by the applications. It is configured to use difference render delegates for different mime types, and supports most common formats, including images (jpg, tiff, ai, psd), documents (PDFs, scans, etc) and video (extraction of poster-frames and transformations for streaming).
The Render Service uses a ‘transformation dictionary’ which includes the media reference, and the actions to perform on it. It also supports ‘transitional sizes’ to enhance performance.
The Metadata Handling Service is responsible for extracting and updating the metadata, both on import and export. It is compliant with international metadata standards (including Adobe XMP™, EXIF and IPTC) and adheres to the guidelines provided by the Metadata Working Group (MWG) to ensure metadata consistency and preservation.
This Service also includes a powerful OCR (Optical Character Recognition) processor which extracts all readable text from the pages. This includes positional data for each word, paragraph and block (to allow on-page text highlighting). Block are classified as ‘Text’, ‘Headline’, ‘Picture’ or ‘Picture Caption’ to enhance the search options.
The Routing Service is responsible for the processing, queuing and transfer of media to external destinations. This includes FTP, Email, File copy. The ‘Router’ is multi-threaded, and load balances all the queued items to ensure that a single slow connection does not block the entire queue.
The Importing Service is used to configure a chain of processes to satisfy numerous workflow situations with extra plug-ins to handle special cases.
MediaCore's security model is RBAC (Role Based Access Control), where different roles are applied to the user and their groups.
These encompass both Authorisation Profiles and Access Privileges
Authorisation Profiles - determine what functions the users are allowed to perform. These settings are applicable to specific roles (e.g. Editorial Staff). Users can be added to one or more groups, enabling one user to perform multiple roles within the system.
Access Privileges - These determine what assets/projects the user is allowed to access (read/write/edit/delete/export/etc.).
By allowing groups of groups, the system can be configured to meet the specific customer requirements.
The RBAC system is integrated tightly with the index engine, to ensure high performance at all times.
The system can be deployed either on the Cloud or On-Premise. Both deployment forms use the same n-tier industry standard architecture model:
Web Tier - Responsible for presenting the user interfaces. It also makes use of render caches to improve system performance.
Application Tier - This tier runs the application code and manages the mediation of the various services and sub-functions. It also makes use of various inherent caching and clustering technology to provide a resilient and scalable platform.
Database Tier - Responsible for data storage; MediaCore can utilise many common RDBMS engines including MySQL, Oracle and SQL Server.