Mediamosa is an open source video backend built with Drupal. It uses a RESTful API and XML to allow video files to be uploaded, stored, transcoded and streamed through a scalable service-oriented architecture. Key features include access control lists, transcoding with FFmpeg, and support for open standards. Mediamosa provides a media asset management system and can scale to dedicated servers for upload, processing, streaming and thumbnails. It includes Drupal modules to integrate video playback and management into Drupal sites.
4. Topics
What is it?
How is works
What about client side?
Key features
Past and future
Opportunities
4
5. What is Mediamosa
Mediamosa is a video storage back-end
REST calls:
POST, GET
XML
User
Video frontend MediaMosa
5
6. Why build own 'youtube'?
Security
Transcoding
Metadata
… and more -> ...
6
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
7
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
8
9. Mediamosa is ...
Media Asset Management System (MAMS)
Digital Asset Management System (DAMS)
9
10. Asset
Asset Mediafile: Video
(Original)
Title Mediafile: Video
Description (Transcoded FLV)
Mediafile: Video
(Transcoded MPEG4)
DC/QDC fields like creation date, copyright, etc
10
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://
14
15. Front-end applications
Drupal modules
Just create anything you like on any platform in
any language, REST is the key
15
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>
16
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.
17
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">
<dc:creator rdf:resource="http://www.example.org/staffid/85740"/>
</rdf:Description>
18
20. What mediamosa is NOT
No fancy streaming solutions at the moment;
basic HTTP
Videola
20
21. What is good for you in MM
Developer / system integrator
An enterpreneur
A representative from *.edu
Current development contest
21
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
22