From Home Enabled Personal Media To Instant Personal Media Sharing
Upcoming SlideShare
Loading in...5

From Home Enabled Personal Media To Instant Personal Media Sharing






Total Views
Views on SlideShare
Embed Views



3 Embeds 22 14 6 2



Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

From Home Enabled Personal Media To Instant Personal Media Sharing From Home Enabled Personal Media To Instant Personal Media Sharing Presentation Transcript

  • … through Innovation From home enabled Personal Media to Instant Personal Media Sharing Bernardo Cardoso S@H 3.12.2009 This document is intellectual property of PT Inovação, SA and it´s use or spread is prohibited without express written permission.
  • … through Innovation Digital Home • Our homes are evolving Yesterday Today Tomorrow Disconnected Siloed Convergent
  • … through Innovation Digital Life • Our gadgets are proliferating
  • … through Innovation Digital Devices and Assets • Taking hundreds or thousands of photos and videos is easy, but sorting and uploading them? Not really... • Lets not forget the music too… • Lots of new gadgets are network enabled… • Everything will be network enabled • So, let them discovery, search and do the work, we just want to control… 12/16/2009
  • … through Innovation Two technologies to the rescue 12/16/2009
  • … through Innovation UPnP Technologies • Use established Internet standards – XML, UDP/TCP/IP, SOAP • Have an open, flexible architecture for service discovery and control – Simple Service Discovery Protocol (SSDP) – Generic Event Notification Architecture (GENA) – Service Control Protocol Description/Device Description Document (SCPD/DDD) • UPnP Device Architecture (UDA) – 0 Addressing: IP assignment on any network (AutoIP) – 1 Discovery: Of services/devices (SSDP) – 2 Description: Syntax for devices/services (SCPD/DDD) – 3 Control: Of device services (SOAP) – 4 Eventing: Updates of variables (GENA) – 5 Presentation: Access to device HTML page • Device Control Protocols (DCPs) – APIs for various device functionality – Described using SCPD syntax and UDA protocols
  • … through Innovation UPnP Protocol Stack Vendor-specific API above Vendor-specific physical net UPnP vendor UPnP Forum UPnP Device Architecture HTTPU/MU GENA SSDP SOAP HTTP GENA HTTP UDP TCP IP Vendor-specific OS below
  • … through Innovation 0 Addressing • Control point and device get address – Use a DHCP server – Else use Auto IP (Always looking for DHCP server) • What is Auto IP? – Pick an address in 169.254/16 range – Check to see if it is used (ARP) – Periodically check for DHCP server • Use DNS if available – Easier for a human to use – More static
  • … through Innovation UPnP Device Architecture Devices Controllers NOTIFY messages (presence announcements) Discovery SSDP M-SEARCH messages (device/service search) SSDP Description GET device & service description XML Control UPnP Actions SOAP Event subscriptions Events GENA Event notifications GENA
  • … through Innovation 1 Discovery • New device can advertise its services to control points • Control point can search for the devices of interest • Control point gets to know about the devices, its services and a pointer to a more detailed information
  • … through Innovation 1 Discovery: Advertising • New device multicasts a number of discovery messages to a standard multicast NOTIFY * HTTP/1.1 HOST: CACHE-CONTROL: max-age = seconds until advertisement expires LOCATION: URL for UPnP description for root device NT: search target NTS: ssdp:alive USN: advertisement UUID • Sends a cancellation message if device is going to become unavailable
  • … through Innovation 1 Discovery: Search – Control point multicasts a search message with a target equal to the type or identifier for a device or service M-SEARCH * HTTP/1.1 HOST: MAN: "ssdp:discover" MX: seconds to delay response ST: search target – Uses multicast variant of HTTP that has been extended using SSDP methods headers – M-Search is a method defined by SSDP
  • … through Innovation 1 Discovery: Response – Responses from devices contain discovery messages identical to those advertised by newly connected devices except that now they are unicast HTTP/1.1 200 OK CACHE-CONTROL: max-age = seconds until advertisement expires LOCATION: URL for UPnP description for root device ST: search target USN: advertisement UUID
  • … through Innovation 2 Description: Device (phys) <?xml version="1.0"?> <root xmlns="urn:schemas-upnp-org:device-1-0"> <URLBase>base URL for all relative URLs</URLBase> <device> <friendlyName>short user-friendly title</friendlyName> <manufacturer>manufacturer name</manufacturer> <manufacturerURL>URL to manufacturer site</manufacturerURL> <modelDescription>long user-friendly title</modelDescription> <modelName>model name</modelName> <modelNumber>model number</modelNumber> <modelURL>URL to model site</modelURL> <serialNumber>manufacturer's serial number</serialNumber> <UDN>uuid:UUID</UDN> Unique Device Name <UPC>Universal Product Code</UPC> <deviceType>urn:schemas-upnp-org:device:deviceType</deviceType> <serviceList> <service> <serviceType>urn:schemas-upnp-org:service:serviceType:v</serviceType> <serviceId>urn:upnp-org:serviceId:serviceID</serviceId> <SCPDURL>URL to service description</SCPDURL> <controlURL>URL for control</controlURL> <eventSubURL>URL for eventing</eventSubURL> </service> Declarations for other services (if any) go here </serviceList> <deviceList>Description of embedded devices (if any) go here</deviceList> <iconList> <icon> <mimetype>image/format</mimetype> <width>horizontal pixels</width> <height>vertical pixels</height> <depth>color depth</depth> <url>URL to icon</url> </icon> XML to declare other icons, if any, go here </iconList> <presentationURL>URL for presentation</presentationURL> </device> <specVersion> <major>1</major> <minor>0</minor> </specVersion> </root> 16-12-2009
  • … through Innovation 3 Control: Invoke Action M-POST path of control URL HTTP/1.1 HOST: host of control URL:port of control URL CONTENT-TYPE: text/xml; charset="utf-8" MAN: ""; ns=01 01-SOAPACTION: "urn:schemas-upnp-org:service:serviceType:v#actionName" <s:Envelope xmlns:s="" s:encodingStyle=""> <s:Body> <u:actionName xmlns:u="urn:schemas-upnp-org:service:serviceType:v"> <argumentName>in arg value</argumentName> other in args and their values (if any) go here </u:actionName> </s:Body> </s:Envelope>
  • … through Innovation 4 Eventing: Subscribing SUBSCRIBE publisher path HTTP/1.1 HOST: publisher host:publisher port CALLBACK: <delivery URL> NT: upnp:event TIMEOUT: Second-requested subscription duration • Control point subscribes to receive messages of a services • Sends a URL to receive event messages • Subscribe, callback and NT are GENA headers • Publisher sends a response to this message
  • … through Innovation 4 Eventing: Notify • The values of changed state variables to all the subscribers. The initial message contains all the state variables. NOTIFY delivery path HTTP/1.1 HOST: delivery host:delivery port CONTENT-TYPE: text/xml NT: upnp:event NTS: upnp:propchange SID: uuid:subscription-UUID SEQ: event key <e:propertyset xmlns:e="urn:schemas-upnp-org:event-1-0"> <e:property> <variableName>new value</variableName> </e:property> Other variable names and values (if any) go here </e:propertyset> 16-12-2009
  • … through Innovation UPnP Stacks • Intel UPnP SDK and Reference Code – download-tools/ • Microsoft UPnP APIs – • Platinum UPnP SDK – • CyberLink for Java – • Portable UPnP SDK (libupnp) – • Coherence - a DLNA/UPnP Framework for the Digital Living (Python) –
  • … through Innovation Hands On
  • … through Innovation UPnP Media Devices Devices Controllers UPnP MediaServer CP MediaServer UPnP Control Point UPnP MediaRenderer MediaRenderer CP
  • … through Innovation DLNA • Industry consortium – 250+ companies – Consumer Electronics – Computing Industry – Mobile Devices – Content distributors • Goal: Establish an ecosystem of compatible products for networked media devices • Develops standards-based specifications: “DLNA Guidelines”
  • … through Innovation DLNA Stack
  • … through Innovation DLNA 2-Box Models 2. Select 1. Get Media Library info content 2-box pull 3. Get Content stream 1. Get Media Library info and select content 2-box push 2. Pass URI for selected content 3. Get Content binary stream
  • … through Innovation DLNA 3-Box Model 2. Select content 1. Get Media Library info 3. Pass URI & metadata for selected content 4. Get Content binary stream
  • … through Innovation Device Classes Category: Home Networked Devices (HND) Category: Mobile Handheld Devices (MHD) Digital Media Server (DMS) Mobile Digital Media Server (M-DMS) (M- Digital Media Player (DMP) Mobile Digital Media Player (M-DMP) (M- Digital Media Renderer (DMR) Digital Media Controller (DMC) Mobile Digital Media Controller (M-DMC) (M- Digital Media Printer (DMPr) Mobile Digital Media Uploader (M-DMU) (M- Mobile Digital Media Downloader (M-DMD) (M- Upload Controller (+UP+) DMS with upload support Download Controller (+DN+) DMS with download support Push Controller (+PU+) DMR Printing Controller 1 (+PR1+) DMPr Printing Controller 2 (+PR2+) 16-12-2009 DMPr
  • … through Innovation Media Formats • The term “Format” is equivalent to “codec” or “codec family” • List of DLNA-approved formats: Video Audio Images MPEG-1 LPCM AC-3 MPEG-2 MPEG-1/2 L2 ATRAC3plus JPEG H.263 MPEG-1/2 L3 WMA PNG MPEG-4 Part 2 MPEG-4 AAC LC WMA Professional GIF MPEG-4 Part 10 MPEG-4 AAC LTP AMR TIFF WMV9 MPEG-4 HE AAC AMR-WB+ VC-1 MPEH-4 BSAC G.726
  • … through Innovation DMS Protocols and Services UPnP MediaServer Content Directory Service (CDS) Connection Manager Service (CMS) Media Streaming UPnP DA (Device) HTTP TCP/IP Wi-Fi and/or Ethernet
  • … through Innovation Content Directory Service - CDS • The CDS provides a logical structure for the media library available in the Server: – Containers Collection of other containers or items Single entity that users perceive as one – Items piece of content • Resources Binary representation of the content (a file or a stream) – DMCs and DMPs retrieve media library information from a DMS using different CDS actions
  • … through Innovation Hands On
  • … through Innovation New ideas • Make UPnP not only use Internet Protocols (kind of ) but actually connect to the Internet – Upload content from local devices directly to Online Media Sharing sites: Flickr, Youtube, Sapo Fotos, Sapo Vídeos – Make Online Media accessible to UPnP AV/DLNA devices • Get to non-media assets – RSS feeds to TV via UPnP AV/DLNA – Check movies to see in theater • Interconnect UPnP domains – Share my media with my friends instantaneous, with a little help from a little fiber 12/16/2009
  • … through Innovation Hands On
  • … through Innovation MAD Media Aggregator and Distributor
  • … through Innovation MAD – All Content
  • … through Innovation MAD – Personal DMS
  • … through Innovation MAD – Check movies on theater
  • … through Innovation MAD – Browse my DMS
  • … through Innovation MAD – Upload to Sapo Fotos
  • … through Innovation MAD – Share with Friends
  • … through Innovation MAD – Sapo Fotos – Mais Vistas
  • … through Innovation Q&A
  • … through Innovation Referências • UPnP Standards – • UPnP Overview - Oct 2007 – • An Overview of the DLNA Architecture / DLNA Device Implementation – 208d3754b2d6/DLNA_Part_1_RS08.pptx – 208d3754b2d6/DLNA_Part_2_RS08.pptx • UPnP MediaServer using Intels SDK for Windows Home Server and Xbox 360 –
  • … through Innovation Bernardo Cardoso S@H 3.12.2009 This document is intellectual property of PT Inovação, SA and it´s use or spread is prohibited without express written permission.