Article on Madison Digital Image Database 3
This article appeared in VRA Bulletin Summer 2012, Volume 37, Number 2.
Madison Digital Image Database 3
Andreas Knab, Lead Software Developer, Center for Instructional Technology and
Kevin Hegg, Assistant Director, Center for Instructional Technology, James Madison University
The Madison Digital Image Database (MDID) is a freely distributed, Open Source web application developed at James Madison University (JMU) to facilitate teaching with digital media online and in the classroom. The project started in 1997 in response to expanding curriculum requirements within the School of Art and Art History.
Initially, MDID supported a single catalog structure suitable for a collection of Art History images. While this covered the immediate need of the School of Art and Art History, curators at JMU and other schools soon wanted to manage additional content that did not fit into this catalog structure. Consequently, JMU began developing a new version of MDID in 2001.
In 2004, the second version of MDID was introduced at JMU and released to the public. It supported flexible cataloging and multiple collections. Additional features were added to accommodate disciplines beyond Art History.
In 2006, the Institute of Museum and Library Services (IMLS) awarded JMU a National Leadership Grant for Libraries to develop an Application Programming Interface (API) to facilitate interoperability between MDID and other digital image systems and tools. Around the same time, the availability of Internet bandwidth increased significantly and rich media became increasingly popular online. Not surprisingly, the MDID community began asking JMU whether MDID would support video and audio files in addition to images.
In 2008, the MDID development team decided to abandon the MDID 2 platform and redesign MDID from the ground up in order to meet new requirements such as multimedia support, flexible metadata structures, more sophisticated access rights, customizable page layouts and designs, and a full API. The team chose a development platform that is itself completely Open Source, that runs on most operating systems, and that provides significantly shorter development times. The MDID 2 architecture, while adequate in 2004, was not up to the challenges posed by these new requirements. The MDID development team agreed that it would be easier and faster to redesign the MDID than to significantly revise and extend the current MDID. Furthermore, MDID 2’s user interface does not satisfy user expectations. For example, it does not offer bookmarking or direct access to open content.
Vision and Guiding Principles
The MDID development team revisited the vision statements for MDID and identified three main points:
- Allow students and faculty to manage, discover, and aggregate digital media for intuitive and flexible delivery and presentation;
- Affirm our commitment to support the use of digital media in the JMU curriculum through ongoing MDID development; and
- Continue to promote adoption of MDID beyond JMU.
The team adopted the following principles for guiding the design and implementation of MDID 3:
- Build MDID 3 using Open Source software;
- Share MDID 3 through an Open Source license;
- Embrace Web 2.0 and Open Access;
- Encourage content sharing between individuals, institutions, and the public;
- Leverage collective intelligence through comments, ratings, and tagging; and
- Engage students by allowing them to add, create, share, and manage content.
MDID 3 development started in late 2008, after JMU had begun working on the IMLS grant. In April 2009, JMU awarded a contract for software development services to create connectors between MDID and ARTstor, MDID and Flickr, MDID and PowerPoint, and MDID and Blackboard. Because JMU was not actively developing MDID 2 at that time, these connectors were built on top of the MDID 3 API.
While an outside software company built the connectors, the MDID 3 team forged ahead on MDID 3 development, using new technologies, a new architecture, and a host of open source libraries.
In January 2011, JMU started running MDID 2 and MDID 3 in parallel, using the migration tool to periodically copy MDID 2 data into MDID 3. Faculty and students are actively using MDID 3 in the classroom but have MDID 2 as a backup for critical course work in case problems arise. The version of MDID 3 that JMU is using is available for download by other institutions. A simple update process allows institutions to keep up with the latest MDID 3 version.
The new MDID, in conjunction with new connectors, allows users to search millions of Flickr images, bringing images of interest into the MDID 3 space. The ARTstor connector lets MDID users search ARTstor collections and link out to found content via the ARTstor Image Viewer. Other connectors allow MDID users to embed images and slideshows in Blackboard and to save presentations as PowerPoint files. Furthermore, MDID 3’s API provides a mechanism for institutions to exchange data between MDID and other local systems or repositories.
To prepare for a migration from MDID 2 to MDID 3, administrators should document any customizations, including custom user authentication. Curators should clean up collection metadata fields and map as many fields as possible to the relevant Dublin Core fields.
The MDID 3 migration tool will copy users, groups, collections, records, etc. Due to differences in data structures and permissions, the results of the migration need to be reviewed before the new system is put into production, but none of the user data stored in MDID 2 should be lost.
Content Discovery and Facets
Content discovery starts on the front page, which displays a selection of images accessible to the user. The user can see all available records in the explore interface, which is keyboard and facet driven. Facets are based on Dublin Core and by default are created by breaking up metadata into individual words. Using phrases for facets is also possible and makes most sense for controlled vocabulary fields such as creator or period.
Unauthenticated (anonymous) users can also use this interface to see all publicly accessible content.
The Role of Dublin Core
MDID now “knows” the meaning of some Dublin Core fields, including the title, identifier, and relations fields. As many metadata fields as possible should be mapped directly or indirectly to the corresponding Dublin Core field to gain the most functionality in MDID.
MDID 3 uses Solr for all searching and facet creation. Solr is an Open Source tool built on Lucene, which is used by MDID 2 to provide searching. The search behavior of MDID 3 can be customized directly in Solr.
All searches in the explore interface are also run against certain external sources, including configured MDID shared collections, the public content in Flickr (and possibly private content of the current user), and ARTstor. Depending on the external source, it may be possible to include images directly into an MDID presentation; for example, Flickr images can be included, while ARTstor images cannot.
MDID 3 supports a range of multimedia and other files in addition to images. Thumbnails for most multimedia files are automatically generated. For videos, MDID extracts a still frame five seconds into the video as the thumbnail. For audio files, MDID creates a 30-second waveform sample.
MDID uses FFmpeg, an Open Source tool, to identify multimedia files and to extract information such as bandwidth, pixel dimensions, video frames, and audio samples. Therefore, MDID supports all FFmpeg-compatible formats on the backend, although commonly available client-side delivery tools may only support a subset.
The new MediaViewer replaces MDID2’s ImageViewer. It is completely rewritten using modern technologies. It will run in the browser as an Adobe Flash object and on the desktop as an Adobe AIR application. The browser version of the MediaViewer is almost complete and currently integrated with the MDID2 demo site (http://mdid.org/demo/). This version of the MediaViewer is compatible with both MDID2 and MDID 3. Versions of the MediaViewer will be published on the new support site (http://support.mdid.org/) as they become available. Documentation and installation instructions will also be placed on the new support site.
Social Networking Features and User Involvement
MDID employs stable URLs (permalinks) across all pages, meaning that any page in the Web application can be bookmarked or linked to from other websites, access permitting. Individual records and presentations can be tagged and commented on.
All authenticated users can use MDID to manage their content, including uploading metadata and files, creating presentations, and customizing metadata on records in existing collections. By default, these actions are invisible to all other users. File uploads can also be limited by quotas to prevent users from overwhelming the system.
Unlike MDID 2, all management tools are built into the Web application. It is no longer necessary to install tools on the client computer, and the tools are no longer dependent on the Windows operating system.
The metadata import tool will support VRA Core 4 XML file imports in addition to regular CSV spreadsheet imports.
All long running tasks (jobs) such as metadata imports are executed asynchronously. A user can view the status of his or her scheduled, running, or past jobs through the browser, while an administrator can monitor and control all jobs running or scheduled in the system.
While image files were directly assigned to each metadata record in MDID 2, metadata records and media files are now organized separately. Records are stored in collections; media files are stored in storage areas.
Collections can now contain other collections. This feature can be used to break up large collections into smaller logical parts without impacting the ability to search the whole collection, or to grant different levels of access to different parts of a collection. One collection can belong to several other collections, so the content can be organized logically without requiring any duplication.
Multiple media files can be associated to a single record. This allows, for example, audio transcripts to be stored alongside the original audio file in the same record.
Records can be organized hierarchically, for example different detail views of the same building should be child records of the same parent record representing the building. One record can also belong to multiple collections, again to avoid duplication while organizing all content logically.
Storage areas in MDID define a physical storage area to hold media files. Collection files can be spread across multiple storage areas rather than being restricted to one physical directory. Conversely, storage areas can hold files that belong to different collections.
In addition to just holding files, storage areas can have functionality built in. For example, they can automatically manage ZIP archives, produce streaming media links, or physically organize files into subdirectories.
The permission system in MDID 3 has been simplified greatly. Only three permissions (read, write, manage) can be set for users or user groups on collections, storage areas, or presentations.
Combined with the ability to join collections within each other, this allows administrators to set up collections that contain records with different levels of access for different users. It is possible, for example, to set up a collection that contains some records that are publicly available while others are restricted to authenticated users.
Viewers are tools that display a single record or a whole presentation on the Web. Viewers support a variety of presentation types and delivery modes, including slideshows, video and audio playlists, flash card generators, slideshow handout generators, and more. More viewers will be added to MDID over time.
MDID dynamically determines which viewers fully or partially support an object or a presentation. Mixing media types in a presentation is possible, but may limit the number of viewers that are available. When multiple files are associated with a single record in a presentation, viewers can intelligently choose the appropriate file where possible.
MDID includes a viewer that converts a slideshow into a PowerPoint PPTX file. Users can choose from different pre-installed themes, with additional themes easily being added. Each slide in the PowerPoint file contains one image, an optional slide title, and all the image metadata in the notes area.
The Web interface template is completely based on CSS, with all colors configured in a single area of one file. Two master colors define the basic color scheme, so the basic look of MDID 3 can be changed by just changing the two color values. Logos can be switched out easily, and the HTML itself can be modified, for example to change the order or positioning of menu items or to add additional links to other sites.
MDID can be installed on any major operating system, including Windows, Linux, and MacOS. Components can reside on one or more servers running any major operating system. Components can also be duplicated on multiple servers for redundancy or to support more load.
MDID as an Application Platform
In addition to its familiar interface for discovering images, building and presenting slideshows, and managing collections, MDID 3 also serves as a powerful platform for building innovative, Web-based multimedia applications. Examples include showcases for special collections, specialized interfaces for compound multimedia objects, or simplified interfaces with unneeded functionality removed.
The MDID development team used the MDID platform to build JMUtube, a Web application that allows faculty to upload and manage video and audio files for delivery to students through a variety of venues, including class Web sites and Blackboard. JMUtube features a simple drag-and-drop playlist builder and is integrated with JMU’s classroom recording system and Camtasia Relay. JMUtube takes advantage of the MDID 3 core to store video and audio files and associated metadata. It also uses MDID 3 to manage user accounts and create thumbnail derivatives for audio and video files. All data and content presented through the JMUtube interface is stored and managed within MDID.
Another project currently under development is the Shenandoah Valley Oral History Project, which is a collection of records with audio files and text transcripts attached, and a custom interface that presents scrolling text synchronized to the audio playback. All audio files and associated metadata and audio transcripts are stored and managed by the MDID 3 engine. A novel interface allows users to synchronize audio time lines with typed transcripts. A Web page for each composite record allows users to listen to the audio recording as the transcript automatically scrolls in step with the recording. Such functionality is beyond the scope of the traditional MDID Web application, since it is only applicable to a relatively small set of records.
JMUtube and the oral history projects exemplify the manner in which MDID can move beyond a single discipline into multiple disciplines. Imaginative faculty and skilled programmers will collaborate to create innovative and useful multimedia applications. Once completed, the applications can be easily shared with other institutions as add-ons to existing MDID 3 installations.
Andreas Knab, Lead Software Developer, Center for Instructional Technology
Kevin Hegg, Assistant Director of Systems and R&D, CIT
Grover Saunders, Web Media Developer, CIT
Christina Updike, Visual Resources Specialist, School of Art and Art History
Grace Barth, Visual Resources Assistant, SAAH
Mary Ann Chappell, Educational Technologies Librarian
Sarah Cheverton, Director, CIT
Sandy Maxfield, Associate Dean, Libraries & Educational Technologies