Media Mover

arthurf - January 2, 2007 - 21:28

Media Mover is a set of modules which allows website administrators to easily create complex file conversion processes. The core of Media Mover is the media_mover_api module which creates a set of rules allowing multiple modules to interact with a file. Media Mover can take a file emailed to an email account, turn a file attachment into an FLV file, create a new node with the file data, and then save the file on an external file storage like Amazon's S3 all at once. And that's just the start.

Update: : If you're looking for examples and demonstrations of the Media Mover, check out the news and demonstrations site.

What it does
The media_mover_api module is the handler for Media Mover configurations. It defines four types of behaviors for how modules interact with a file: harvest, process, storage, and complete. A configuration can be made up of multiple modules which define different kinds of harvest, process, storage, and complete behaviors. For example, you can have two different processes that creates high and low bandwidth versions of a video file. Inside of Media Mover, each configuration is distinct, so you can set up as many different kinds of configurations as you like.

  • harvest - a mechanism to gather the files that Drupal will process
  • process - a mechanism to process the files
  • storage - a mechanism to store files.
  • complete - do something once the process is complete

What has been written so far?

  • Harvest: get attachments from an email account
  • Harvest: get attached files from nodes of X type
  • Harvest: get previously harvested files
  • Harvest: get a file path from CCK
  • Harvest: select files from FTP
  • Process: create a thumbnail of a video file with ffmpeg
  • Process: convert a mov/avi/mpeg file to flv with the following options:
    • set audio bit rates
    • set audio sample rate
    • set video bit rate
    • set video frame size
    • set video frame rate
    • set video length useful for making teasers
    • watermark a video file with an image
  • Process: strip EXIF data from images (MM EXIF)
  • Process: add meta data to a FLV file (MM FLVTool2)
  • Storage: move a file to Amazon's S3 service (this also operates as a completion function)
  • Storage: attach file back to node
  • Storage: save file and related data as a node
  • Storage: add a file path to a CCK field

Contributors, developers and suggestions welcome! I'm very interested in attracting other people to build modules for it, get help with the core API, and start deploying it.

Currently, work is being done on the DRUPAL-5 branch. This code is in development and requires some knowledge of ffmpeg to be able to get video conversion features working. Media Mover requires php5+ but there maybe a fix in the future which allows it to work on php4. There is a DRUPAL-6 branch in the works, bdragon is working on it.

Recomended Modules

Media Mover is supported by
arthurf, bdragon, robeano, wmostrey, and CivicActions.

Releases

Official releasesDateSizeLinksStatus
5.x-0.4-12008-Mar-3099.76 KBRecommended for 5.xThis is currently the recommended release for 5.x.
 
 

Drupal is a registered trademark of Dries Buytaert.