Mv Embed
From MvWiki
Mv_Embed is a javascript library for easy embedding of ogg theora/vorbis media with the html5 tag. Once the script is included you can include an inline ogg theora clip with:
<video src="mymovie.ogg">
Mv_embed will then rewrite the video tag to whatever playback method is available on the client be it native support, java cortado, mplayer, vlc or oggplay
If your site uses mv_embed you can list it here. Mv_Embed is a stand alone library from the MetaVidWiki project.
Contents |
SVN access
you can check out the most recent in-development version of mv_embed by running:
svn co http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/MetavidWiki/skins/mv_embed/
Download Releases
- mv_embed.7 (~1mb) the mv_embed script for use in websites.
Mv Embed v.7
changes in .7
- Supports draft ROE (Rich Open multitrack media Encapsulation) spec for xml distribution of media.
- Single url to roe document can encapsulate all metadata.
changes in .6
- added plug-in selection tool
- added msg system for compatibility with translations
- add support for relative file or path names for media files for cortado.
- added support for safari
- will force load javascript instead of DOM injection
- slower on pages without video clips
- added "experimental" support for "sequences" and editing. (see the tail end of the screencast for the editor)
- improved playlists usage
Features
- Support client playback with oggplay, vlc-plugin, java cortado or generic application/ogg plugin (mplayer, totem) (also has been tested with ff3 video builds) & apple quicktime xiph components
- Abstracts all these plugin types to a near html5 spec, letting web developers target a single abstraction for multiple underlining plugin or native video support systems.
- Support HTML rewriting of <video> and <playlist> tags
- Uses an HTML interface to control playback
- Can be remotely embed
- dynamically includes required libraries to reduce download size and to streamline code with jQuery while only requiring a single javascript line for remote embedding.
- All client side javascript mode (no php necessary if media is on the same server as the page embedding the clip )
- Playlists
- supports m3u, xspf, and itunes video rss and inline playlist
- supports playlist with automatic progression (oggplay, vlc)
- supports plalists with manual progression. (java, generic embed)
CMS integrations
It should be fairly strait forward to add mv_embed support to your favorite CMS initially wordpres and mediaWiki will be targeted.
- MediaWiki Extension works by simply allowing the <video> and <playlist> tags inline wiki text.
- mvEmbedMW.05a the mediaWiki extension for using mv_embed in
Inline Playlists Format
note: we may abandon inline format in favor of a pointer to XML or JSON resource since that will make things cleaner
see the example in the demo page. Things we wanted with this inline playlist format:
- safe for wikis
- not inline xml (browsers don't like that)
- easy to parse (non-hierarchtical linear key value pairs)
- extenable via new attributes |track=track_name , |clip_order etc
Basic Format:
Once you start a clip with mvClip or srcClip all the following lines will be attributes of that clip until you start a new clip or end the inline playlist.
Starting a clip
|mvClip=stream_name&ss:ss:ss/ee:ee:ee
mvClip attribute lets you specify a stream name and ntp time segment and let the playlist code get everything else from the metavid servers via a ajax cmml request.
|srcClip=Clip src url.ogg
srcClip starts by identify the minimum necessary attribute for a valid clip which is the medias source url.
For mediaWiki extension images are restricted to images uploaded to the site (or from metavid) (@@todo read the external image preference variable and allow external images)
|wClip=Clip Name.ogg |image=Image Name.jpg
using wClip the extension should resolve that to the actual file and point the mv_embed script to it.
Assigning Attributes
so far the following attributes are supported: title, linkback, desc, image
|title=My Clip |linkback=a link you want the little info button to go to. |image=http://myserver.com/myimage.jpg |desc= MY description when being used by mediaWiki extension this gets passed into the wiki parser when in html any html will be passed along.
Usage
To use simply plop the mv_embed folder onto your server somewhere. Run sample_page.php to ensure its working. if you look at the sample page it has several usage examples.
Known Issues / TODO
Here are a few known issues/ features that are still left to be done
- add support for mplayer and improve support for native ogg theora supported browsers (firefox3 & Opera builds)
- enable skinning via CSS/minimal js
- get seeking working better with plugins that support it.
- CMS extensions
- finish and integrate mv_oggSplit.php to enable dynamic segmentation of of ogg streams.
- Extend Cortado
- add js hooks so to support pause/play, css/html based playhead, and endOfClip callbacks.
- add playlist support to cortado
- merge annodex support into mediaWiki's forked version of Cortado
- Playlist todo
- Fix status updates for playlists
- support a few more of the video rss formats (atom etc)
- add preloading of future clips for smooth playback where supported. (oggplay, native ff3 & opera?)
- also when pre-loading do file read for duration (instead of url based detection used now)
- Javascript refactoring
- take more advantage of jQuery ...some code segments could be cleaned up a bit using jQuery convenience functions and selectors.
- The Future
- With the Multi-Track editor mv_embed will be the "player"
- support audio levels, video transparency, timelines, effect curves, custom transitions etc.
- Effect hooks for the emerging world of svg + video in the browser [1] [2]
- take a look at proposed xml formats for open shared video sequences

