Digital Media Repository
For the last several months I have been working on an exciting (side) project to establish our University’s first Digital Media Repository. Fueled by our recently updated Media Studies curriculum, the main purpose of such system was to host the progressively growing collection of student-produced digital content.
I initially investigated a number of solutions for this project, each with its own array of pros and cons, and being a big supporter of the Open Source community, I primarily focused on such fantastic systems as Fedora, Dspace, Alfresco, MediMosa, Kaltura, CollectiveAccess, EnterMedia, etc.
The most important aspect in my evaluation was the ability of the system to index and serve heterogeneous collections of varying multimedia content, such as high resolution images, video and audio files as well as digital text. Another integral element comprised a well developed support for metadata standards, as to ensure relatively easy control of the growing digital asset inventories. All this had to be presented in a clean, attractive interface that would not “scare” our students, staff and faculty, but rather become an inviting environment.
I found all these requirements to be nicely accommodated by ResourceSpace, an Open Source project in use by such organizations as the World Wildlife Fund, Oxfam, Save the Children, and others. My initial tests were done on our Xserve server (within a VirtualBox environment), running Ubuntu 10.4 with latest PHP, MySQL and GD graphics library, ImageMagick, FFmpeg, Ghostscript, EXIF extension and Exiftool modules. The tests revolved around uploading and processing large collections of high resolution TIFF and JPG images, as well as h.264 video files — in each case the system remained rock solid. (note: Although h.264 remains a problematic choice due to its patent implications, I found the webM codec not mature enough for our video collection, and its limited support (no iPad, iPhone) would impose unnecessary user segregation.) Although ResourceSpace can encode uploaded video using the FFmpeg library, I decided to disable that feature and continue encoding content offline for better quality control.
ResourceSpace has a built-in group-based permissions functionality, which allows me to easily control what assets are accessible by our students, staff and faculty. With a few code modifications to Brian Adams’ ldapauth plugin, the system is now using ldap-based access authentication. Lastly, as the default video playback engine is flash based, I had to implement HTML5-friendly code to allow video playback on such devices as the iPad (see images below).
Although the first phase of this project is complete, much work must still be done to enhance the seamless integration of this system with wider University frameworks already in existence (or in near deployment). In other words, to be continued.