Media Projects

This page outlines all the medaiWiki projects I am working on in one palace. This should help people see how they all work together.

Metavid
Metavid The original collaborative metadata for video project. The base codebase for a lot of the below mentioned projects. For more info you can visit metavid.org. Metavid integrates semanticMediaWiki, interfaces for editing tempopral text data such as transcripts and semantic annotations, and interfaces for searching this temporal media metadata.

Mv_Embed
Mv_embed] MV_embed provides core javascript functionality for embedding videos, dynamically loading scripts and core utility functions. Integrates with ScriptLoader php system for just in time loading and grouping of library requests. As core library it is the core library for several javascript services / applications here are the top level folders and short explanation: (extended descriptions for compoenets that need it are listed below
 * jQuery Mv_embed and child classes are dependent on JQuery and a few plugins (some of which have custom modification see the jquery tree mv_embed svn for more info)
 * libaAddMedia Includes the core support for the Add media wizard
 * searchLibs classes that extend remoteSearchDriver for site specific search engines (mediaWiki, metavid, archive.org)
 * libClipEdit provides the base library for image manipulation. Currently just crop is supported but the base pixastic-lib has been imported with plans to add in hooks to that library. This will be the image server for video effects and animations as well.
 * libEmbedObj provides embed abstraction. Supported embed methods are java cortado, native player, VLC and flash fallback.(flash fallback is only maintained for sites that want to support fallback to flash (non wikimedia projects))
 * libSequencer' provides the sequencer component. This allow for basic video sequencing of clips. See sequencer below
 * libTimedText provides libraries for inline display of text transcript info. Supports SRT & CMML.

Javascript Script Loader

 * ScriptLoader a php based script loader for on demand javascript class loading, grouping, minifying, gziping, and message localization. This allows the javascript to load the entire set of javascript libraries needed in one request. Enables a unified approach to translation of user messages in javascript based interfaces. For more info see the ScriptLoader page.

Add Media Wizard
The tool for adding media to pages or sequences. Abstracts the remote repository architecture to work with the new upload api. For more info see: Add Media Wizard.

Remote Archive Search
So far commons, archive.org and metavid are supported as repositories. Again see the Add Media Wizard for more info.

Fireofgg integration
Working on including support for the Firefogg extension. (part of add media wizard) Also see the commons end user documentation

New Upload API
Based on the initial work by vodaphone and then Bryan Minh; the new upload api abstracts out the Special:Upload page into a few classes and then extends the mediaWiki an API to support upload contributions. My work is focused on bring that branch up-to-date and adding chunk support for breaking POST requests into 1 meg resumable chunks. The chunk support enables firefogg to progressively upload video content with resume on reset POST requests.

Sequencer
Probably the largest component that ties together and necessitates all the above mentioned pieces to work. It includes a javascript based reduced feature set SMIL interpreter with arbitrary image time serving and sequence playback and editing. Also includes some server side components. For more info see the Extensions:Sequencer page.