This documentation refers to an earlier version of Islandora. https://wiki.duraspace.org/display/ISLANDORA/Start is current.

Skip to end of metadata
Go to start of metadata

Overview

The Islandora Video Solution Pack is used to ingest digital videos into Fedora. It supports creation of derivatives in various different video formats, and requires the server-side installation of accompanying codecs to enable this functionality. It can also be configured to stream the video to a player window on-site using JWPlayer.

Dependencies

  • Islandora
  • Tuque
  • ffmpeg is required if MKV and MP4 derivatives are to be created on the same server as Islandora. Compliation guides: UbuntuCentOS
  • ffmpeg2Theora is required if OGG and thumbnail derivatives are to be created on the same server as Islandora (Optional  - Instructions)
  • The Islandora JWPlayer library (and the Libraries API module) or the Video.js player are required to play videos in a video object's 'View' tab

NOTE: FFmpeg version 1.1.1 has been tested. It can be downloaded here

NOTE: remove the --enable-x11grab flag on the ffmpeg configure.

Downloads

Release Notes and Downloads

Configuration

The Islandora Video Solution pack can be configured at http://path.to.your.site/admin/islandora/solution_pack_config/video, and includes the following options:

Viewers

If players have been correctly installed on the server, you will be able to select which one to use here. 

  • Keep original file after ingest? - Check this option to retain files uploaded to a video collection as a datastream appended to the video object

Paths to ffmpeg/Theora executables

For derivative creation, the Video Solution Pack needs to know the location of the binaries that perform conversion. On Unix-based systems, this can often be done by running:

whereis ffmpeg ffmpeg2theora

and checking for binary package files located in folders called 'bin' (such as /usr/bin, /usr/local/bin, etc.)

Video conversion in any context is an extremely resource-heavy task that can be very taxing on the computer performing it. In the case of Islandora, when using these derivative creation options, the task is called upon and performed by the 'apache' user on the same server Islandora is running on and that users are performing other tasks with. When creating video derivatives on ingest, please consider either delaying ingest to a low-traffic period of time, or performing derivative creation on another machine altogether.

Content Models, Prescribed Datastreams and Forms

The Video Solution Pack comes with the following objects in http://path.to.your.site/admin/islandora/solution_pack_config/solution_packs:

  • Islandora Video Content Model (islandora:sp_videoCModel)
  • Video Collection (islandora:video_collection)

A collection created using the Video Solution Pack's content model will have the following datastreams:

RELS-EXT

Default Fedora relationship metadata

MODS

MODS metadata record created during ingest

DC

Dublin Core record

OBJ

The original video file ingested

MP4MP4 derivative created during ingest by ffmpeg and used by JWPlayer if no suitable video exists
OGGOGG audio-only derivative created by ffmpeg2theora
MKVMKV derivative created during ingest by ffmpeg
TNThumbnail image pulled from a frame of the video by ffmpeg2theora

The Video Solution Pack comes with the Video MODS Form.

Development

If you would like to contribute to this module, please check out our helpful Documentation for Developers info, as well as our Developers section on the Islandora.ca site.

The Video Solution Pack includes an ingest/purge load test that is disabled and unusable by default. This particular solution pack was chosen for load testing due to the resource-heavy process of creating video derivatives and ingesting several potentially-massive files. To enable and use it:

  1. Make sure that the Testing module is enabled and that all prerequisites for derivative creation are satisfied for the Video Solution Pack.
  2. Edit the islandora_video.info file in this folder, removing the ; and whitespace before the linefiles[] = tests/islandora_video_load_test.test
  3. Create a folder in the tests/fixtures/ called load, and place as many videos in that folder as you would like to ingest. These files all must fit within the size specified by your php.ini file's maximum post size, and they must have a file extension supported by the Video Solution Pack, otherwise they will not be picked up by the load test.
  4. Clear the Drupal cache.

The video load test should now be available to use by navigating tohttp://path.to.your.site/admin/config/development/testing, checking 'Video Load Test' in the Islandora Video section, and then clicking 'Run tests'. The test will compare the original file to the file ingested into Fedora to see if they match.

NOTE: THIS WILL NOT WORK ON OPERATING SYSTEMS THAT DO NOT SUPPORT THE PHP GLOB_BRACE FLAG (E.G. SOLARIS).

  • No labels