As agreed at the last LSARC meeting, I am closing this case as approved
on 04/21/2009.

Overall, this case was non-controversial.  There was some discussion
about how some features of coherence are disabled if the user doesn't
have the appropriate GStreamer plugins installed.  Features that depend
on non-free media formats, for example, are disabled until the user
installs the needed GStreamer plugin.  For example, Alfred verified
that if the user installs the Fluendo plugins that this enables
coherence support for those formats.

Thanks,

Brian


On 03/25/09 23:24, Brian Cameron wrote:
> Template Version: @(#)sac_nextcase 1.68 02/23/09 SMI
> This information is Copyright 2009 Sun Microsystems
> 1. Introduction
>      1.1. Project/Component Working Name:
>        Coherence
>      1.2. Name of Document Author/Supplier:
>        Author:  Alfred Peng
>      1.3  Date of This Document:
>       25 March, 2009
> 4. Technical Description
> Copyright 2009 Sun Microsystems
>
> 1. Introduction
>      1.1. Project/Component Working Name:
>
>          Coherence
>
>      1.2. Name of Document Author/Supplier:
>
>          Alfred Peng
>
>      1.3. Date of This Document:
>
>          03/13/2009
>
>          1.3.1. Date this project was conceived:
>
>              07/12/2007
>
>      1.4. Name of Major Document Customer(s)/Consumer(s):
>
>          1.4.1. The PAC or CPT you expect to review your project:
>
>              Solaris PAC
>
>          1.4.2. The ARC(s) you expect to review your project:
>
>              LSARC
>
>          1.4.3. The Director/VP who is "Sponsoring" this project:
>
>              robert.odea at sun.com
>
>          1.4.4. The name of your business unit:
>
>              New Solaris Group, Desktop
>
>      1.5. Email Aliases:
>
>          1.5.1. Responsible Manager:
>
>              leo.binchy at sun.com
>
>          1.5.2. Responsible Engineer:
>
>              alfred.peng at sun.com
>
>          1.5.3. Marketing Manager:
>
>              glynn.foster at sun.com
>
>          1.5.4. Interest List:
>
>              desktop-discuss at opensolaris.org
>
> 4. Technical Description:
>      4.1. Details:
>          Coherence is a DLNA (Digital Living Network Alliance)/UPnP (Universal
>          Plug and Play) Framework written in Python for the Digital Living.
>
>          The goals of UPnP are to allow devices to connect seamlessly and to
>          simplify the implementation of networks in the home (data sharing,
>          communications, and entertainment) and in corporate environments for
>          simplified installation of computer components. With the UPnP 
> framework,
>          users can setup their home media center with PCs, wireless devices
>          (mobile phones, tablet PCs etc.) and networked appliances (TVs, audio
>          players, multimedia players, games consoles etc.)[2].
>
>          Coherence is divided into three main parts: the core, the virtual
>          devices, and the device backends[3]. The core of coherence provides 
> an
>          implementation of: a SSDP (Simple Service Discovery Protocol) [4]
>          server, a MSEARCH (command to find other devices connected to the
>          UPnP network) client to find other devices connected to the network,
>          server and client for HTTP/SOAP requests, server and client for Event
>          Subscription and Notification.
>
>          The virtual devices contain: Media Server to provide media content
>          (local storage or online services) and directory information,
>          Media Renderer to play back media content provided by the Media 
> Server,
>          Control Point to interconnect Media Server and Media Renderer. The
>          virtual device implementation registers with the core, declares which
>          service interfaces it is using, and attaches callbacks which map the
>          service actions to its backend. It's generally a translation map
>          between the core and the device backend.
>
>          The device backend is the part to host, render and control the media
>          files. The following components could act as the device backend: file
>          systems to store the media files, audio/video hardware and desktop 
> GUI
>          applications to render the media content and control the playback.
>
>          For users, coherence can be used in conjunction with Rhythmbox, 
> Totem or
>          Elisa, and become a controllable DLNA/UPnP Media Renderer. For 
> example,
>          coherence is used in Elisa to talk with the Apple Movie trailer Media
>          Server for its Movie trailer plugin and YouTube Media Server for its
>          YouTube plugin. Coherence can also be configured as a DLNA/UPnP Media
>          Server and exports local and remote media files via its backend to
>          other UPnP clients.
>
>          Developers get a python framework with an emerging DBus API. This
>          framework is designed to automate all UPnP-related tasks as much as
>          possible and enable applications to participate in digital living
>          networks.
>
>          In short, coherence provides two main features to the system:
>          - Interfaces so that programs like elisa, rhythmbox, totem, etc. can
>            act as Media Renderer/Control Point and connect to the UPnP servers
>            on the internet.
>          - Interfaces so that an UPnP Media Server can be set up on the 
> system.
>
>      4.2. Bug/RFE Number(s):
>
>          None.
>
>      4.3. In Scope:
>
>          See above.
>
>      4.4. Out of Scope:
>
>          See above.
>
>      4.5. Interfaces:
>
>                                 Exported  Interface
>          --------------------------------------------------------------------
>          Interface Name                     Classification   Comment
>          --------------------------------------------------------------------
>          SUNWpython-coherence               Uncommitted      Package name
>          /usr/bin/coherence                 Volatile         Coherence CLI to
>                                                              start the server
>          $HOME/.coherence                   Private          Config file
>          /usr/lib/python2.4/vendor-packages/Coherence*.egg-info
>                                             Uncommitted      Python egg files
>          /usr/lib/python2.4/vendor-packages/coherence
>                                             Uncommitted      Python API
>          /usr/lib/python2.6/vendor-packages/Coherence*.egg-info
>                                             Uncommitted      Python egg files
>          /usr/lib/python2.6/vendor-packages/coherence
>                                             Uncommitted      Python API
>
>
>                                 Imported  Interface
>          --------------------------------------------------------------------
>          Interface          Classification   Comment
>          --------------------------------------------------------------------
>          Python             External         PSARC/2005/532 Python
>                             Evolving         Migration from /usr/sfw to /usr
>                                              and upgrade to v2.4.x
>          Python 2.6         Uncommitted      PSARC/2009/043
>          Python Twisted     Uncommitted      PSARC/2008/121
>          Python Setuptools  Uncommitted      PSARC/2008/084
>
>      4.6. Doc Impact:
>
>          coherence.1
>
>      4.7. Admin/Config Impact:
>
>          Coherence looks for the configuration file named .coherence in $HOME 
> by
>          default during server startup. Alternatively with the option
>          -c|--configfile the location of the configuration file can be passed.
>          In the configuration file, the following parameters can be specified:
>          log level, log file, interface definition for systems with more than
>          one physical interface, serverport tells coherence the port to listen
>          on and the plugins that will be activated.
>
>          The configuration options can be also passed to coherence through
>          commandline during startup. If no configuration is specified, the
>          default value will be used for coherence server.
>
>      4.8. HA Impact:
>
>          None.
>
>      4.9. I18N/L10N Impact:
>
>          The JDS team and the G11N team are working together to evaluate and
>          provide I18N/L10N support.
>
>      4.10. Packaging&  Delivery:
>
>          Adds new package, SUNWpython-coherence.
>
>      4.11. Security Impact:
>
>          Coherence implements the functions to download https page to a
>          string/file by importing the Python Twisted ssl module via
>          twisted.internet.
>
>          The security concern for UPnP is the lack of device authentication,
>          especially for Internet gateway devices[5]. Coherence doesn't provide
>          an Internet gateway device implementation now. It's designed to work
>          in the home network. The media files won't be propagate to the 
> Internet
>          through multicast. When installed on a gateway, the media files are
>          reachable from the outside via http.
>
>      4.12. Dependencies:
>
>          The following versions of the imported interfaces are required:
>
>          Python 2.4.x
>          Python 2.6
>          Python Twisted
>          Python Setuptools
>
> 5. Reference Documents:
>
>      [1] Coherence homepage:
>      http://coherence.beebits.net/
>
>      [2] The DLNA/UPnP devices supported by Coherence:
>      http://coherence.beebits.net/wiki/SupportedDevices
>
>      [3] Coherence architectural overview:
>      http://coherence.beebits.net/wiki/ArchitecturalOverview
>
>      [4] SSDP:
>      http://en.wikipedia.org/wiki/Simple_Service_Discovery_Protocol
>
>      [5] UPnP security concern:
>      
> http://en.wikipedia.org/wiki/Universal_Plug_and_Play#Lack_of_Default_Authentication
>
>      [6] Related ARC cases:
>          PSARC/2005/532: Python migration from /usr/sfw to /usr
>                          and upgrade to v2.4.x
>          PSARC/2008/121: Python Twisted
>          PSARC/2008/084: Python Setuptools
>          PSARC/2009/043: Python 2.6
>
> 6. Resources and Schedule
>      6.4. Steering Committee requested information
>       6.4.1. Consolidation C-team Name:
>               Desktop
>      6.5. ARC review type: FastTrack
>      6.6. ARC Exposure: open
>
> _______________________________________________
> desktop-discuss mailing list
> desktop-discuss at opensolaris.org


Reply via email to