dennis povshedny.mediamosa intro.drupalcamp kyiv 2011

25
1 Mediamosa: Drupal—based open source video backend

Upload: campdrupalua

Post on 14-Dec-2014

1.437 views

Category:

Technology


2 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

1

Mediamosa: Drupal—based open source video backend

Page 2: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

Gold Sponsor ofDrupalCamp Kyiv 2011

Page 3: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

Silver Sponsors ofDrupalCamp Kyiv 2011

Page 4: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

4

Topics

What is it? How is works What about client side? Key features Past and future Opportunities

Page 5: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

5

What is Mediamosa

Mediamosa is a video storage back-end

User

MediaMosaVideo frontend

REST calls:POST, GET

XML

Page 6: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

6

Why build own 'youtube'?

Security Transcoding Metadata … and more -> ...

Page 7: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

7

Key features

REST is an engine Scalable, service-oriented architecture (SOA) Using and implementing open standards

(Dublin core, CQL, SOLR) ACL: access limitations, f.e. domain and user

level Transcoding with FFMpeg Distributed job processing architecture

Page 8: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

8

Key features, II

Supports Open standards Using Open protocols Code is self-documented Is Open source (GPL2) by itself Using open source software and approach —

trac, etc

Page 9: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

9

Mediamosa is ...

Media Asset Management System (MAMS) Digital Asset Management System (DAMS)

Page 10: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

10

Asset

Mediafile: Video(Original)

Asset

TitleDescription

Mediafile: Video(Transcoded FLV)

Mediafile: Video(Transcoded MPEG4)

DC/QDC fields like creation date, copyright, etc

Page 11: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

11

Collection

Collection'Biology'

Asset 'Flowers'

Asset 'Human Body'

Asset 'Surgery'

Collection'Medicine'

Asset 'Sample Data'

Asset 'Animals'

Page 12: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

12

Scalability

Tasks can be split up to dedicated servers:

Upload/download Job Streaming Still (Thumbnails)

Page 13: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

13

Server Administration page

Page 14: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

14

Drupal frontend: Mediamosa CK Several Drupal modules are available WLE (White Label Enduser Application) Mediamosa CK for Drupal 6 Mediamosa CK for Drupal 7, based on 'Media' module

– based on nice PHP/Drupal 7 feature called streams

– allows to refer to mediamosa files in the same way as to YouTube, Flickr, etc.

– youtube:// flickr:// mediamosa://

Page 15: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

15

Front-end applications

Drupal modules Just create anything you like on any platform in

any language, REST is the key

Page 16: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

16

REST sample

REST calls as a MediaMosa communication interface

Example: /mediafile/$mediafile_id [GET]

<items>

<item id="1">

<mediafile_id>V1XjsW9ojjpmUeLcH88QT53w</mediafile_id>

<asset_id>oDGgukVLA6bVQeLjSWZYV7a0</asset_id>

<app_id>14</app_id>

<owner_id>admin</owner_id>

<is_original_file>TRUE</is_original_file>

....

</item>

Page 17: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

17

Implementation

Drupal 7 multisite installation with a lot of custom classes.

Every REST call, internal or external, is a class.

Drupal 7 with lazy loading is very important.

Developer experience: dive-in time.

Page 18: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

18

Human/machine friendly standards

CQL, Contextual Query Language:dc.title any fish

dc.title any fish or dc.creator any sanderson

dc.title any fish sortBy dc.date/sort.ascending

RDF, Resource Description Framework:<rdf:Description rdf:about="http://www.example.org/index.html"><rdf:Description rdf:about="http://www.example.org/index.html">

<dc:creator rdf:resource="http://www.example.org/staffid/85740"/><dc:creator rdf:resource="http://www.example.org/staffid/85740"/>

</rdf:Description></rdf:Description>

Page 19: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

19

Drupal front-end sample

Page 20: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

20

What mediamosa is NOT

No fancy streaming solutions at the moment; basic HTTP

Videola

Page 21: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

21

What is good for you in MM

Developer / system integrator An enterpreneur A representative from *.edu Current development contest

Page 22: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

22

History/ Future

Development started in 2008 First release made in June 2009

Trends: video / eLearning is quite on demand Q4 2011: Mediamosa 3.5 planned

Page 23: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

23

Video data today and tomorrow

Page 24: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

24

Useful links

http://mediamosa.org

http://mediamosa.org/api

http://drupal.org/project/media

http://www.loc.gov/standards/sru/specs/cql.html

Page 25: Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011

25

Questions?

+38 096 2323 346 [email protected]