1 / 46

UPnP AV Architecture - Generic Interface Design And Java Implementation

UPnP AV Architecture - Generic Interface Design And Java Implementation. UPnP AV Architecture Generic Interface Design And Java Implementation. Andreas Bobek, Hendrik Bohn, Frank Golatowski University of Rostock Faculty of Computer Science and Electrical Engineering

dawn-perry
Download Presentation

UPnP AV Architecture - Generic Interface Design And Java Implementation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UPnP AV Architecture - Generic Interface Design And Java Implementation UPnP AV Architecture Generic Interface Design And Java Implementation Andreas Bobek, Hendrik Bohn, Frank Golatowski University of Rostock Faculty of Computer Science and Electrical Engineering Parallel and Distributed Computing and Networks – PDCN 2005 – as part of the 23rd IASTED International Multi-Conference on Applied Informatics 15th – 17th February, 2005, Innsbruck, Austria University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek

  2. UPnP AV Architecture - Generic Interface Design And Java Implementation Outline University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 1 of 19

  3. UPnP AV Architecture - Generic Interface Design And Java Implementation Outline University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 1 of 19

  4. UPnP AV Architecture - Generic Interface Design And Java Implementation 1.1. UPnP Device Architecture • UPnP = Universal Plug and Play • supports ad-hoc networking of devices and services • only protocols are defined (UDP, TCP, SOAP, SSDP, GENA, HTTP) • independent of programming language, operating system and transmission medium • six phases: addressing, discovery, description, control, eventing, and presentation • defines three communicating components: device, service, control point University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 2 of 19

  5. UPnP AV Architecture - Generic Interface Design And Java Implementation 1.1. UPnP Device Architecture • role: server • offers services • may contain other devices • “root device” • characterized by properties such as model number, model name, vendor... • uniquely identifiable by UUID • interface to the device • offers actions and URLs for controlling, eventing, and presentation • manages its state in state variables University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 3 of 19

  6. UPnP AV Architecture - Generic Interface Design And Java Implementation 1.1. UPnP Device Architecture • role: client • searches for devices and/or services • invokes actions (at services) • requests state variables University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 4 of 19

  7. UPnP AV Architecture - Generic Interface Design And Java Implementation 1.1. UPnP Device Architecture University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 5 of 19

  8. UPnP AV Architecture - Generic Interface Design And Java Implementation University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek

  9. UPnP AV Architecture - Generic Interface Design And Java Implementation 1.2. UPnP Stack University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 6 of 19

  10. UPnP AV Architecture - Generic Interface Design And Java Implementation 1.2. UPnP Stack University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 6 of 19

  11. UPnP AV Architecture - Generic Interface Design And Java Implementation 1.2. UPnP Stack University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 6 of 19

  12. UPnP AV Architecture - Generic Interface Design And Java Implementation 1.2. UPnP Stack University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 6 of 19

  13. UPnP AV Architecture - Generic Interface Design And Java Implementation 1.2. UPnP Stack University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 6 of 19

  14. UPnP AV Architecture - Generic Interface Design And Java Implementation University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek

  15. UPnP AV Architecture - Generic Interface Design And Java Implementation MediaRenderer Device • play back of multimedia content • e.g. Windows Media Player, TV, beamer Control Point MediaServer Device • manages meta data of multimedia files and streams • meta data consist of information about format (mpg, jpg, avi...), owner, permissions, date, size, access protocols ... • PC, tuner, digital camera • searches for MediaServer and MediaRenderer • initiates connections • controls play back (play, stop, brighter, louder...) 1.3. UPnP AV Architecture University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 7 of 19

  16. UPnP AV Architecture - Generic Interface Design And Java Implementation MediaRenderer Device Control Point RenderingControl Service ContentDirectory Service ConnectionManager Service (opt.) AVTransport Service (opt.) AVTransport Service (opt.) MediaServer Device ConnectionManager Service (opt.) 1.3. UPnP AV Architecture University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 8 of 19

  17. UPnP AV Architecture - Generic Interface Design And Java Implementation University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek

  18. UPnP AV Architecture - Generic Interface Design And Java Implementation IP 1.4. UPnP AV Data Flow University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 9 of 19

  19. UPnP AV Architecture - Generic Interface Design And Java Implementation IP 1.4. UPnP AV Data Flow Control Point Media Renderer Media Server University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 9 of 19

  20. UPnP AV Architecture - Generic Interface Design And Java Implementation IP 1.4. UPnP AV Data Flow Control Point 1. Search Request Media Renderer Media Server University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 9 of 19

  21. UPnP AV Architecture - Generic Interface Design And Java Implementation IP 1.4. UPnP AV Data Flow Control Point 2. Search Response Media Renderer Media Server University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 9 of 19

  22. UPnP AV Architecture - Generic Interface Design And Java Implementation IP 1.4. UPnP AV Data Flow Control Point Media Renderer Media Server University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 9 of 19

  23. UPnP AV Architecture - Generic Interface Design And Java Implementation IP 1.4. UPnP AV Data Flow Control Point 3. Browse() Media Renderer Media Server University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 9 of 19

  24. UPnP AV Architecture - Generic Interface Design And Java Implementation IP 1.4. UPnP AV Data Flow • 4. Result • DIDL Lite (XML) • preconditioned protocols • file formats... Control Point Media Renderer Media Server University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 9 of 19

  25. UPnP AV Architecture - Generic Interface Design And Java Implementation IP 1.4. UPnP AV Data Flow Control Point 5. GetProtocolInfo() Media Renderer Media Server University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 9 of 19

  26. UPnP AV Architecture - Generic Interface Design And Java Implementation IP 1.4. UPnP AV Data Flow Control Point 6. supported protocols, accepted formats Media Renderer Media Server University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 9 of 19

  27. UPnP AV Architecture - Generic Interface Design And Java Implementation IP 1.4. UPnP AV Data Flow 7. matching between preconditioned and supported protocols Control Point Media Renderer Media Server University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 9 of 19

  28. UPnP AV Architecture - Generic Interface Design And Java Implementation IP 1.4. UPnP AV Data Flow Control Point 8. PrepareForConnection() Media Renderer Media Server University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 9 of 19

  29. UPnP AV Architecture - Generic Interface Design And Java Implementation IP 1.4. UPnP AV Data Flow Control Point 9. SetURI() Play, Pause, Stop... Media Renderer Media Server University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 9 of 19

  30. UPnP AV Architecture - Generic Interface Design And Java Implementation IP 1.4. UPnP AV Data Flow Control Point Media Renderer Media Server 10. Data transport („out of band“) University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 9 of 19

  31. UPnP AV Architecture - Generic Interface Design And Java Implementation University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek

  32. UPnP AV Architecture - Generic Interface Design And Java Implementation 2.1. AV Interface Examples University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 10 of 19

  33. UPnP AV Architecture - Generic Interface Design And Java Implementation 2.1. AV Interface Examples University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 11 of 19

  34. UPnP AV Architecture - Generic Interface Design And Java Implementation University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek

  35. UPnP AV Architecture - Generic Interface Design And Java Implementation 2.2. AV Interface Stack University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 12 of 19

  36. UPnP AV Architecture - Generic Interface Design And Java Implementation University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek

  37. UPnP AV Architecture - Generic Interface Design And Java Implementation 2.3. Application Code Examples Control Point UPnPAVFactory factory = new UPnPAVFactoryImpl(); MediaControlPoint cp = factory.getMediaControlPoint( new MediaControlPointListenerImpl() ); cp.start(); cp.searchForMediaRenderers(); cp.searchForMediaServers(); University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 13 of 19

  38. UPnP AV Architecture - Generic Interface Design And Java Implementation 2.3. Application Code Examples Control Point public class Listener implements MediaControlPointListener{ public void takeMediaServer( ProxyMediaServer p_server, MediaDevice p_parent_device ){ // access proxy services ProxyAVTransport avt = p_server.getProxyAVTransport(); ProxyConnectionManager cm = p_server.getProxyConnectionManager(); ProxyContentDirectory cd = p_server.getProxyContentDirectory(); // browse content directory BrowseResult browse_result = cd.browse( "0", ContentDirectory.BROWSE_FLAG_BROWSE_METADATA, "*", 0, 0, "" ); DidlLiteModel model = new DidlLiteModel(); String result = browse_result.getResult(); Element el_didl = XMLUtil.stringToElement(result); } University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 14 of 19

  39. UPnP AV Architecture - Generic Interface Design And Java Implementation 2.3. Application Code Examples University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 15 of 19

  40. UPnP AV Architecture - Generic Interface Design And Java Implementation University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek

  41. UPnP AV Architecture - Generic Interface Design And Java Implementation 2.4. Advantages • Why to use an interface layer: • separate development of stack and application • replacement of UPnP stack without modifying application code University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 16 of 19

  42. UPnP AV Architecture - Generic Interface Design And Java Implementation University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek

  43. UPnP AV Architecture - Generic Interface Design And Java Implementation 3.1. AV within SIRENA project • SIRENA = Service Infrastructure for Real time Embedded Networked Applications • part of the ITEA program • modify current AV Architecture: • extension by integrating QoS aspects • adapt architecture to fit small embedded devices University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 17 of 19

  44. UPnP AV Architecture - Generic Interface Design And Java Implementation University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek

  45. UPnP AV Architecture - Generic Interface Design And Java Implementation 3.2. Generalisation • analyzing service-oriented architecture (SOA) concepts (UPnP, Web Services, JINI, HAVi...) • designing device protocols independently of specific SOAs University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 18 of 19

  46. UPnP AV Architecture - Generic Interface Design And Java Implementation 3.2. Generalisation University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek Slide 19 of 19

More Related