===== Video Processing in DSpace ===== This extension now includes code to allow a DSpace installation to leverage video processing via the existing 'mediafilter' functionality. To enable you need to have working installations of both DSpace and Greenstone. You then symlink both java files lurking deep under the 'dspace' directory in the matching place within the DSpace source directory. Once this is done, you edit the source versions of dspace.cfg to include the new filter (RTFM) and recompile to include the new functionality. ==== SimpleVideoFilter.java ==== A mediafilter implementation that uses tools (as compiled by the Greenstone extension) to provide video processing. Expects, as input, TS files (MPEG2 Transport Stream) and generates a MP4 webstreamable version as well as a number of associated keyframe images (JPGs). ==== ItemUpdate.java ==== Minor modification to the existing ItemUpdate tool to provide an extra 'noundo' parameter. While it is possible to run the SimpleVideoFilter without this change, you'll generate a large number of undo script folders where-ever you ran "dspace filtermedia" from. ==== Installation Instructions ==== 1. Copy the VideoFilter into place: cd /ext/video-and-audio/opt/DSpace cp VideoFilter.java /dspace-source/dspace-api/src/main/java/org/dspace/app/mediafilter/VideoFilter.java 2. Replace default ItemUpdate application with one that supports the 'noundo' flag (otherwise you're working directory will fill up with undo files for every video file processed): cd /ext/video-and-audio/opt/DSpace cp ItemUpdate.java /dspace-source/dspace-api/src/main/java/org/dspace/app/itemupdate/ItemUpdate.java 3. Configure the new plugin: cd /dspace-source/dspace/config/ emacs dspace.cfg ... #Names of the enabled MediaFilter or FormatFilter plugins filter.plugins = PDF Text Extractor, HTML Text Extractor, \ ... Video Converter #Assign 'human-understandable' names to each filter plugin.named.org.dspace.app.mediafilter.FormatFilter = \ ... org.dspace.app.mediafilter.VideoFilter = Video Converter #Configure each filter's input format(s) ... filter.org.dspace.app.mediafilter.VideoFilter.inputFormats = MPEG2 Transport Stream [ctrl][s] [ctrl][x] 4. Recompile DSpace and update installation cd /dspace-source mvn package cd /dspace-source/target/dspace-1.8.2-build/ ant update 5. Open the administrator's wed interface and add a new file format "MPEG2 Transport Stream" with the file extension "*.ts" 6. Still in the web interface, add your video files as raw TS (as exported from ReplayMe!) *or* use batch import to put in an entire directory tree as exported from Greenstone 7. Run the media filter from the command line to ingest video files properly (the -f forces rebuild - useful as previous media filter runs will mark documents as filtered and otherwise won't process them again): cd /bin/ ./dspace filter-media -f (Note, you can add a "-i" argument with an internal identifier to reprocess a single video file - that's basically how parallel processing works, by calling this command, once per document, on multiple machines).