Mediamosa Open source video backend

Post on 21-Nov-2014

934 Views

Category:

Education

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Presentation about MediaMosa at FOSDEM 2011, Brussels.

Transcript

MediaMosa:Open source video backend

Peter ForgacsMediaMosa developerMadcap

MediaMosa

What you can do with MediaMosa:

MediaMosa

MediaMosahttp://mediamosa.org

“MediaMosa is a robust, flexible and highly scalable media management platform. It is already helping deliver rich content (video, audio etc.) to educational organizations across the Netherlands.” (http://mediamosa.org)

MediaMosaOpen source video backend

What does it mean?

- Open source

License: Open Source under GPLv2 license (GNU General Public License version 2)

Framework: Drupal 6 / 7

MediaMosaOpen source video backend

- Video backend

User

MediaMosaVideo frontend

REST calls:POST, GET

XML

MediaMosa is a backend application.

Advantages of this separation:One backend can support multiple client sites.Easy integration for existing websites.

What about the frontend?

- There are different demo frontend applications. You may start with them: WLE, MediaMosa CK.

- You may create one. Your application should communicate with MediaMosa through REST calls.

With MediaMosa you can

- Upload videos and store them

- Transcode videos (eg. h.264)

- Generate video object, download link etc.

- Create still images

- Create metadata (title, description, DC, QDC)

- Create collections

- Stream your video's

- Create authorizations

Introduction: MediaMosa

Asset is a container.

Asset

Introduction: MediaMosa

Asset may have title, description etc.

Asset

TitleDescriptionDC, QDC fields

Introduction: MediaMosa

Asset may have mediafiles.

Asset

TitleDescription

Mediafile

Introduction: MediaMosa

A mediafile may have a video.

Asset

TitleDescription

Mediafile: Video (codec,filesize)

Introduction: MediaMosa

We can transcode a mediafile to an other format.

Asset

TitleDescription

Mediafile: Video(Original)

Mediafile: Video(Transcoded)

Introduction: MediaMosa

We can create an another mediafile (with video).

Asset

TitleDescription

Mediafile: Video(Original)

Mediafile: Video(Transcoded)

Mediafile: Video(Original)

Introduction: MediaMosa

Every mediafile may have still images.

Asset

TitleDescription

Mediafile: Video(Original)

Mediafile: Video(Transcoded)

Mediafile: Video(Original)

Introduction: MediaMosa

The asset has a default still (if there is any).

Asset

TitleDescription

Mediafile: Video(Original)

Mediafile: Video(Transcoded)

Mediafile: Video(Original)

Introduction: MediaMosa

A video site has assets with default stills.

Asset Title

Desc.

Asset Title

Desc.

Asset Title

Desc.

Asset Title

Desc.

Introduction: MediaMosa

A video page has an asset with video(s) and still(s).

Asset

Title Description

Videos site

Video page

Installing MediaMosa

Download: http://mediamosa.org

You need: LAMP, FFMpeg, Lua (LPEG)Recommended: Lav2yuv (MJPEG Tools) ...

Installation: Drupal / MediaMosa install profile

Make it easy

- VM Image on mediamosa.org

- Demo site on mediamosa.org

Performance improvements

If you need more power, you can separate your installation for:

- Admin interface

- Application interface(s) for REST calls

- Upload interface

- Download interface

- Job interface(s) eg. transcoding video files

Common DB server(s) and storage (SAN/NAS)

REST calls as a MediaMosa communication interface

- REST = Representational State Transfer

- GET calls for getting data

- POST calls for changing or creating data

- Output is XML

- Documentation of REST calls: http://mediamosa.org/api

MediaMosa.org API page

REST call: Parameters, Response fields, Exampleshttp://mediamosa.org/api

MediaMosa.org API page

REST call: Parameters, Response fields, Exampleshttp://mediamosa.org/api

REST calls as a MediaMosa communication interface

Example: /mediafile/$mediafile_id [GET]

<items> <item id="1"> <mediafile_id>6778</mediafile_id> <asset_id>7AkD</asset_id> <app_id>14</app_id> <owner_id>admin</owner_id> <group_id></group_id> .... </item></items>

REST call on WLE

How you can upload?

Your client application:- Create asset/asset/create [POST]Response: $asset_id

- Create mediafile/mediafile/create [POST]POST parameter: $asset_idResponse: $mediafile_id

- Create upload ticket/mediafile/$mediafile_id/uploadticket/create [POST]Response: Action URL, Upload progress URL (for upload progress bar)

Applications in action

Future / present developments

- Solr

- Atom, JSON, RSS feed

- Watermarking still images

- OpenAPI, oAuth, oEmbed

MediaMosa

Status page

MediaMosa

Browse and Statistics pages

MediaMosa

Configuration pages

MediaMosa

Configuration pages

MediaMosa

Configuration pages

MediaMosa

Configuration pages

MediaMosa

Configuration pages

MediaMosa

Configuration pages

Thank you for you attention!

Questions?

MediaMosahttp://mediamosa.org

Peter Forgacsforgacs at madcap.nlhttp://xweb.hu

top related