Media Projects

Jump to: navigation, search

This page hopes to outline media related projects. This should help keep developers on the same page in regards to improved media handling and key infrastructure support tools. There is also a mailing list: Wikivideo-l.

Adding and editing temporal data (transcripts, annotations)[edit | edit source]

Metavid[edit | edit source]

Visit the MetaVidWiki extension page for more info on the metavid extension. For more info on the metavid project you can visit Metavid integrates semanticMediaWiki, interfaces for editing temporal text data such as transcripts and semantic annotations, and interfaces for searching this temporal media metadata.

Embedding and Players[edit | edit source]

MwEmbed[edit | edit source]

MwEmbed is the evolution of the Mv_embed library. Instead of just supporting the embedding video interfaces, MwEmbed is a general library for embedding javascript applications.

  • See MwEmbed for more info and overview of code

HTML5 player[edit | edit source]

  • MwEmbed includes a full featured javascript HTML5 player library. More info at Player

Javascript Script Loader[edit | edit source]

  • 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.

Wizards and APIs for uploading, adding media[edit | edit source]

Add Media Wizard[edit | edit source]

Add Media Wizard is the tool for adding media to pages or sequences. Abstracts the remote repository architecture to work with the new upload api.

UploadWizard[edit | edit source]

Extension:UploadWizard is the general wizard for uploading files of any sort.

How does this fit with these other things?

Upload API[edit | edit source]

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. See also the new-upload branch.

Tools for converting and flattening media[edit | edit source]

Firefogg (incomplete)[edit | edit source]

Working on including support for the Firefogg extension as part of the add media wizard. See also the commons end user documentation.

Wiki@Home extension[edit | edit source]

The Wiki@home extension provides distributed transcode and sequence flattening infrastructure.

Video editors[edit | edit source]

Sequencer / Slide Show Maker (incomplete)[edit | edit source]

The sequencer extension was planned to include a javascript based reduced feature set SMIL interpreter with arbitrary image time serving and sequence playback and editing. Also includes some server side components. See the Extension:Sequencer page.

Clip Edit (incomplete)[edit | edit source]

Can be thought of as the figure editor or "clip" editor. We eventually want to this to be a feature rich layout and layer manipulation tool. Manipulations will be stored in a "stack" and not modify the underlining assets. This lets collaboration occur around the figure editing process. It will be usable inline figures in articles and for building "key frames" in sequences.

Currently just crop & video trimming is supported but the base pixastic-lib has been imported with plans to add in hooks to that library.

The same export mechanism for frame serving and exporting video sequences will drive the "flattening" of these figures (since the edit stack will likely include canvas manipulations we will render the figure server side or on the client and use that for display.

These "figures" or "clips" will be template for localization and reuse. All manipulations will be stored in floats (rather than pixel positions) to facilitate seamless scaling up by using higher resolution image assets. This documentation will be fleshed out a bit as the code is ;) We will try and use SMIL like descriptions for crops and filters.

SVG parametrization: Also part clipEdit system we will want to support svg parametrization. ie highlighting a map element by chaining its color or translating text in figures.

Collaborative video editor[edit | edit source]

Popcorn.js offers a number of tools for editing and mixing video, while preserving attribution of the individual elements drawn together into the result.

Demo site: PopcornMaker showcases some of these tools. Initially set up a few years ago; some components may need refreshing.

Experimental code repo: Popcorn editor, being developed as of 2015.

Related projects and groups[edit | edit source]

Kaltura (historical)[edit | edit source] supported development of some media components through an open source development partnership, including support for Metavid. The initial promise of a complete video-editing tool and player was never realized.