Meego Wiki
From MeeGo wiki
(Difference between revisions)
Jump to: navigation, search
(Universal Multimedia Service (UMMS))
(3 intermediate revisions not shown)
Line 1: Line 1:
= Universal Multimedia Service (UMMS) =
= Universal Multimedia Service (UMMS) =
-
   1 Short expression of the need
+
   1 Short description of the need
-
--------------------------------
+
---------------------------------
-
Linux in general including MeeGo in particular lacks a unified solution to play Multimedia content. Almost each application has created its own solution limiting the opportunity to benefit from new hardware capabilities provided by modern chipsets on non PC platforms and reducing the scope of usability of high value Multimedia content which is often protected of use licensed Codec for Linux environment.
+
Linux in general, including MeeGo in particular, lacks a unified solution for playing multimedia content. Almost every application has its own solution, limiting the opportunity to benefit from new hardware capabilities provided by modern chipsets on non-PC platforms, and reducing the scope of usability of high value multimedia content, which is often protected using a proprietary codec.
-
It is not the first time than Linux had to break boundary and change established solutions to drastically improve its support for new services. In a recent past we have seen the adoption of CUPS (1999-2002) for printing and Sane (2000-2005) for scanning enabling the use of Linux in office environment what before these two, seemed only possible for the geek in search of long night enjoying a deep troubleshooting fun.
+
It isn't the first time that Linux has had to break boundaries and change established solutions to drastically improve its support for new services. In the recent past, we've seen the adoption of CUPS (1999-2002) for printing and Sane (2000-2005) for scanning, enabling the use of Linux in the office environment, which, before these two, seemed only possible for the geek in search of a long night enjoying troubleshooting fun.
-
The current proposition has no less of an outrageous ambition than to offer creating a Unified Multi Media Service (UMMS) which will enable to play Audio and Video (AV) from an application on any Linux platform (starting by MeeGo) without having to worry about anything more than it's position on the screen and its possible initial transparency over the User Interface graphics.
+
The current proposition has no less of an outrageous ambition than creating a Unified Multi Media Service (UMMS), which will enable playing audio and video (AV) from an application on any Linux platform (starting from MeeGo), without having to worry about anything more than its position on the screen and its possible initial transparency over the User Interface graphics.
   2 Purpose/audience
   2 Purpose/audience
--------------------
--------------------
-
The purpose of this document is to provide an understanding of a solution which could be used to deliver a unified service to enable a large community of developers to benefit from the best possible Audio and Video capabilities provided by various Linux implementations without having to worry about the supporting HW.
+
The purpose of this document is to provide an understanding of a solution which could be used to deliver a unified service. This would enable a large community of developers to benefit from the best possible audio and video capabilities provided by various Linux implementations, without having to worry about the supporting HW.
It addresses the managers who wish to understand the requirements and the constraints required for such a solution, as well as the developers who will have to deliver a working implementation.
It addresses the managers who wish to understand the requirements and the constraints required for such a solution, as well as the developers who will have to deliver a working implementation.
-
It does focus on an initial application for MeeGo TV but it has been designed with the vision of an expansion to all MeeGo verticals in a second phase, starting by the Tablets and further, its generic adoption by a larger Linux community. Only MeeGo needs are described in this initial document.
+
It focuses on an initial application for MeeGo TV, but it has been designed with the vision to expand, in a second phase, to all MeeGo verticals, starting with tablets. It is intended to go beyond TV and tablets and further, and experience a general adoption by the larger Linux community. Only MeeGo needs are described in this initial document.
   3 Overview
   3 Overview
------------
------------
-
MeeGo is an open source version of Linux which targets Netbooks, Tablets, Mobiles, Connected TV and Automotive domains, and which has the goals of both delivering an optimized user experience and also enabling a community of developers to service applications across domains.
+
MeeGo is an open source version of Linux which targets Netbooks, Tablets, Mobiles, Connected TV, and Automotive domains. MeeGo has the goals of delivering an optimized user experience and also enabling a community of developers to service applications across domains.
-
Unfortunately not only does Linux not have a standard set of APIs to play Audio Video (AV) but also the existing main Linux AV Player APIs (Mplayer and Totem) do not cater for  TV needs :
+
Unfortunately, not only does Linux not have a standard set of APIs to play audio and video (AV), but the existing main Linux AV Player APIs (Mplayer and Totem) do not cater to TV's needs:
-
Programming language independence
+
<ul>
-
Management of protected high value content (Pay TV)
+
<li>Programming language independence</li>
-
GPL license isolation
+
<li>Management of protected high value content (Pay TV)</li>
-
Support of TV features (broadcast, sub-title, language selection, aspect ratio, trick play, …)
+
<li>GPL license isolation</li>
-
Sophisticated transport independence (smooth streaming, forward error correction, ...)
+
<li>Support of TV features (broadcast, sub-title, language selection, aspect ratio, trick play, …)</li>
-
Multiple back-end video pipe support
+
<li>Sophisticated transport independence (smooth streaming, forward error correction, ...)</li>
-
Support of new generation HW feature (e.g. video as an OpenGL texture)
+
<li>Multiple back-end video pipe support</li>
 +
<li>Support of new generation HW feature (for example, video as an OpenGL texture)</li>
 +
</ul>
 +
 
This document explains the constraints introduced by these requirements and provides possible solutions and recommendations.
This document explains the constraints introduced by these requirements and provides possible solutions and recommendations.
Line 28: Line 31:
Specifications [[File:Meego_Unified_MultiMedia_Service_V0.4.odt]] <br>
Specifications [[File:Meego_Unified_MultiMedia_Service_V0.4.odt]] <br>
-
[[UMMS_Architecture | General Architecture]] <br>
+
* [[UMMS_Architecture | General Architecture]] <br>
-
[[UMMS_User_Manual | User Manual and Sample code]] <br>
+
* [[UMMS_User_Manual | User Manual and Sample code]] <br>
-
[[media:LinuxCon_2011_umms_introduction.pdf|Slides from Linux Conference Oct11 and Nov 11]]
+
* [[media:LinuxCon_2011_umms_introduction.pdf|Slides from Linux Conference Oct11 and Nov 11]]
 +
 
 +
Javascript API
 +
* [[TV Browser]]
Line 37: Line 43:
Visit MeeGo OBS and search for UMMS
Visit MeeGo OBS and search for UMMS
https://build.meego.com
https://build.meego.com
 +
 +
or directly the GIT repo
 +
git://gitorious.org/meego-middleware/umms.git

Revision as of 00:57, 23 April 2012

Universal Multimedia Service (UMMS)

 1 Short description of the need

Linux in general, including MeeGo in particular, lacks a unified solution for playing multimedia content. Almost every application has its own solution, limiting the opportunity to benefit from new hardware capabilities provided by modern chipsets on non-PC platforms, and reducing the scope of usability of high value multimedia content, which is often protected using a proprietary codec. It isn't the first time that Linux has had to break boundaries and change established solutions to drastically improve its support for new services. In the recent past, we've seen the adoption of CUPS (1999-2002) for printing and Sane (2000-2005) for scanning, enabling the use of Linux in the office environment, which, before these two, seemed only possible for the geek in search of a long night enjoying troubleshooting fun. The current proposition has no less of an outrageous ambition than creating a Unified Multi Media Service (UMMS), which will enable playing audio and video (AV) from an application on any Linux platform (starting from MeeGo), without having to worry about anything more than its position on the screen and its possible initial transparency over the User Interface graphics.

 2 Purpose/audience

The purpose of this document is to provide an understanding of a solution which could be used to deliver a unified service. This would enable a large community of developers to benefit from the best possible audio and video capabilities provided by various Linux implementations, without having to worry about the supporting HW. It addresses the managers who wish to understand the requirements and the constraints required for such a solution, as well as the developers who will have to deliver a working implementation. It focuses on an initial application for MeeGo TV, but it has been designed with the vision to expand, in a second phase, to all MeeGo verticals, starting with tablets. It is intended to go beyond TV and tablets and further, and experience a general adoption by the larger Linux community. Only MeeGo needs are described in this initial document.

 3 Overview

MeeGo is an open source version of Linux which targets Netbooks, Tablets, Mobiles, Connected TV, and Automotive domains. MeeGo has the goals of delivering an optimized user experience and also enabling a community of developers to service applications across domains. Unfortunately, not only does Linux not have a standard set of APIs to play audio and video (AV), but the existing main Linux AV Player APIs (Mplayer and Totem) do not cater to TV's needs:

  • Programming language independence
  • Management of protected high value content (Pay TV)
  • GPL license isolation
  • Support of TV features (broadcast, sub-title, language selection, aspect ratio, trick play, …)
  • Sophisticated transport independence (smooth streaming, forward error correction, ...)
  • Multiple back-end video pipe support
  • Support of new generation HW feature (for example, video as an OpenGL texture)

This document explains the constraints introduced by these requirements and provides possible solutions and recommendations.

 4 Documentation

Specifications File:Meego Unified MultiMedia Service V0.4.odt

Javascript API


 5 Where is the code

Visit MeeGo OBS and search for UMMS https://build.meego.com

or directly the GIT repo git://gitorious.org/meego-middleware/umms.git

Retrieved from "http://wiki.meego.com/Umms"
Personal tools