Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by...

60
Software Architecture for Networked Digital Media

Transcript of Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by...

Page 1: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

����������������������

���� �������� ����� �������� �

����������������

������������������������������

Software Architecture forNetworked Digital Media

Page 2: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

���� ��� � ����! ������ ��� � ����! ��

" ���#���" ���#���

�Overview of protocols used by networked digital media devices such as music players, media servers, media adapters, etc.

�Description of UPnP™ and DLNA architecture and implementations

Page 3: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

���� ��� � ����! ������ ��� � ����! ��

" ��#��" ��#��

��������������� ����������������������������

���������

����������

��������

���

�������������������

�����

Page 4: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

���� ��� � ����! ������ ��� � ����! ��

" ��#��" ��#��

�������������������������������

�� !������

�� ���" ��#�$��

� ��

���������� ��� ��%�����

������&�������

�'(��)� ��������������*+,,-#�.

�����

Page 5: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

���� ��� � ����! ������ ��� � ����! ��

" ���#���" ���#���

�/ � %�� �0 &�1����1-��&1���

�'!�0 2�31�4&

�5��%0 )�� 1�� 1/� 15

������%������0 � !1" �-1� �-1����

� (����������0 ��(�����16,7�++��#��1����

��3�&0 ������ ��8����������������������#����

Page 6: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"�%� ���$"�"�%� ���&&

���'����'� ����'����'� �

�)������������� �������

�Formerly Universal Plug and Play

�9:,,���#���

����� �������0 ��� 1-��&1����

�'������-�� ��

�& ������ �0 &�

�5�������-������0 5-�

� �������1)���& ��������1����

Page 7: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

�(����(���&& ���'���'� ����'���'� �

�������3������������&�����

�Digital Home Working Group - DHWG

�9+;,���#���

� ������ ��8����������������������#����

� ��8���������������/ � &�

�<������������� ��

�&����������8��������8����������������

Page 8: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

Physical Media

Network

Transport

Ethernet, WiFi, HomePlug, Bluetooth, Firewire, etc.

UPnP Application

UPnP Core

General Core

IP

TCPUDP

HTTP

SSDP

Discovery Description Control Events Presentation

Streaming

XML SOAP GENA HTML

Internet Gateway Device, Media Server, Media Renderer, UPnP Printer

$"�"�� #) �#�� $"�"�� #) �#��

Page 9: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

Physical Media

Network

Transport

Ethernet, WiFi, HomePlug, Bluetooth, Firewire, etc.

UPnP Application

UPnP Core

General Core

IP

TCPUDP

HTTP

SSDP

Discovery Description Control Events Presentation

Streaming

XML SOAP GENA HTML

Internet Gateway Device, Media Server, Media Renderer, UPnP Printer

$"�"�� #) �#�� $"�"�� #) �#��

Page 10: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

*������� ��")+� #���*������� ��")+� #���

(�+ (�+

���(�����0 +,=��+,,=�

�'�%� 0 6,7�++��#��

�)��� �

���$��0 ����(����� �5������� �������

�= �����(

�%�������

�����

Page 11: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

Physical Media

Network

Transport

Ethernet, WiFi, HomePlug, Bluetooth, Firewire, etc.

UPnP Application

UPnP Core

General Core

IP

TCPUDP

HTTP

SSDP

Discovery Description Control Events Presentation

Streaming

XML SOAP GENA HTML

Internet Gateway Device, Media Server, Media Renderer, UPnP Printer

$"�"�� #) �#�� $"�"�� #) �#��

Page 12: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

*������� ��*������� ��&& ���� ��,����� ��,�

- ����� �- ����� �

��� �/� �5 � ���0 /���'&�>3&�

�5 0 5������� ������ �������������

��� 0 ������������������ ������

������������#��(��#��������������

�&�� ����������

�/� 0 /����������� ������

�/������ ���� ������

��(���1������������������������

Page 13: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

Physical Media

Network

Transport

Ethernet, WiFi, HomePlug, Bluetooth, Firewire, etc.

UPnP Application

UPnP Core

General Core

IP

TCPUDP

HTTP

SSDP

Discovery Description Control Events Presentation

Streaming

XML SOAP GENA HTML

Internet Gateway Device, Media Server, Media Renderer, UPnP Printer

$"�"�� #) �#�� $"�"�� #) �#��

Page 14: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"����� #) �#�� $"�"����� #) �#��

MediaController

MediaServer

MediaRenderer

UPnP AV Actions and Events

Digital Media Stream

Page 15: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"����� #) �#�� $"�"����� #) �#��

������������

����������#�/ � ������

��� ����8������������������

�<�����������������������&������

�<������������������������&������

�<�������&����������&������

Page 16: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"����� #) �#�� $"�"����� #) �#��

������<�������

����������#�/ � ������

������������8��������������������

�<�������<��������������&������

�<������������������������&������

�<�������&����������&������

Page 17: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"����� #) �#�� $"�"����� #) �#��

��������������

����������/ � ����������<��������

����������������������&���������������

������<����������������<��������

�����������������������&������������������<��������

������&����������&������������������<��������

Page 18: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"������ �� ���$"�"������ �� ���

���������������( �������������������

����������#�/ � ������

� ���������������/ � ��������������������

�= ��0����������8�����������������/ � <��������

Page 19: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"������ �� ���$"�"������ �� ���

������<������� ���( �������������������

����������#�/ � ������

� ���������������/ � ��������������������

�= ��0����������8�����������������/ � �������

Page 20: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"������ �� ���$"�"������ �� ���

������<������� ���(�������������� �������������������

����������#�/ � ������

� ���������������/ � &���������������������

�= ��0����������8��������������/ � �������8�����<�������

�= ��0����������8��������������/ � <�������� 8�����������

Page 21: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"������ �� ���$"�"������ �� ���

��3�&����������� ����

����0���������#�/ � ������

� �����������<������� *������������.

� �����������������������������������������������������

��3�&�����������������

���������/ � &������������

Page 22: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"����$"�"����&& .������� #�� +�.������� #�� +�

� � #� � #

�������������������

��5�30 2�3#�������������������8������#����

���������������#?���

�&# �0 ����1��������0 (���1&�����0 �����

�=�������0 ����������������

������(���0 ��������8�����

Page 23: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"����$"�"����&& /� ���.��� ���/� ���.��� ���

� � #� � #

������<������� �������

��� ��1=���(�����1��������1����

������� �������

��������������������# ���

�<�������� �������������*@@@@.

��(������������

�<��������8� ���������

Page 24: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"����$"�"����&& .���#� ���.���#� ���

!���� �� � #!���� �� � #

���������������<������� �������

�/���#������� ���������������

�����#������0 & ���1�����1���

������%������0 � !1� �-071" �-1����

�&����#����0 =�������(1����

�� �����&�������0 '(��A�������B

Page 25: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"����$"�"����&& ���- ����� �����- ����� ��

� � #� � #

���������������<������� �������

�4������

� ��1 � ��1����1����1%%1����

�<������� ������0 ����

�������������0 �(����

����#� ���8��4 �0480=���������

��0�����8�� �<09��

�5���(���� �'������8��������������

Page 26: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

�(���� � ����! ���(���� � ����! ��

%� ����%� ����

��3�&����� ������%������

�& ���0 3 ��

�5����0 " �-

������0 � �-07

��3�&4�����������%������

�& ���0 � !1&&�

�5����0 �-

������0 � �-0C

Page 27: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

Physical Media

Network

Transport

Ethernet, WiFi, HomePlug, Bluetooth, Firewire, etc.

UPnP Application

UPnP Core

General Core

IP

TCPUDP

HTTP

SSDP

Discovery Description Control Events Presentation

Streaming

XML SOAP GENA HTML

Internet Gateway Device, Media Server, Media Renderer, UPnP Printer

$"�"�� #) �#�� $"�"�� #) �#��

Page 28: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

*+� -0�*+� -0� - ����� ��- ����� ��

" ���#��" ���#��

�/ � ������� ��)�� �������8�����������������()�� �����8��������

�/ � ������ ����� ��)�� ������8�����������������()�� ������8��������

�)�� +�+��D ����

� ��������������������

��( �������������8�����#�����

Page 29: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

Physical Media

Network

Transport

Ethernet, WiFi, HomePlug, Bluetooth, Firewire, etc.

UPnP Application

UPnP Core

General Core

IP

TCPUDP

HTTP

SSDP

Discovery Description Control Events Presentation

Streaming

XML SOAP GENA HTML

Internet Gateway Device, Media Server, Media Renderer, UPnP Printer

$"�"�� #) �#�� $"�"�� #) �#��

Page 30: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

1!(�.)� �#� �� #�1!(�.)� �#� �� #�

� ����������������������������������

���������8����� �����$�(����

�) ���������(��������#�

��$�����#�*�2�����#� ���� �3��� ���.

�5�����������������8����� ���8����

����������5����������

�)�� 1����1%� 1�����3���1��������1����

�/ � ���2�3����)��

Page 31: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

2���1!(�2���1!(�

.)� �#� �� #�.)� �#� �� #�

�3������<��� ��������������

���8�����������%�����

�3�������$��������

����������2�3��� �����8���/ � ������

�'�08�������� ����������D ����

������������ �������������D ����

������ ������*���0���������.���#� ���

Page 32: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

1!(������1!(������

<?xml version="1.0"?><AddressParameters>

<IpAddress>123.45.67.123</IpAddress><SubnetMask>255.255.255.0</SubnetMask><Gateway>123.45.67.200</Gateway>

</AddressParameters>

typedef struct {char fIpAddress[4];char fMask[4];char fGateway[4];

} myAddress;

Page 33: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

Physical Media

Network

Transport

Ethernet, WiFi, HomePlug, Bluetooth, Firewire, etc.

UPnP Application

UPnP Core

General Core

IP

TCPUDP

HTTP

SSDP

Discovery Description Control Events Presentation

Streaming

XML SOAP GENA HTML

Internet Gateway Device, Media Server, Media Renderer, UPnP Printer

$"�"�� #) �#�� $"�"�� #) �#��

Page 34: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

�3�"��3�"�&& � ����3�4#���##���� ����3�4#���##���

" ���#��" ���#��

�2�3�#?��������)��

�����������=����#?����

�������)�� (�����0 ����0&�����

�'����������������������'�#��������

�/ � ����3�&�����8��4& +�+

Page 35: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

�3�"�������3�"������

<s:Envelopexmlns:s=\"http://schemas.xmlsoap.org/soap/envelope/\"xmlns:xsi=\"http://www.w3.org/1999/XMLSchema-instance\"xmlns:xsd=\"http://www.w3.org/1999/XMLSchema\"><s:Body>

<m:sayHello xmlns:m='urn:Example1'><name xsi:type='xsd:string'>James</name>

</m:sayHello></s:Body>

</s:Envelope>

Namespaces indicate scope for particular elements/attributes.“s”, “xsi” and “xsd” defined for entire document.“m” defined for sayHello element.

Page 36: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

Physical Media

Network

Transport

Ethernet, WiFi, HomePlug, Bluetooth, Firewire, etc.

UPnP Application

UPnP Core

General Core

IP

TCPUDP

HTTP

SSDP

Discovery Description Control Events Presentation

Streaming

XML SOAP GENA HTML

Internet Gateway Device, Media Server, Media Renderer, UPnP Printer

$"�"�� #) �#�� $"�"�� #) �#��

Page 37: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"��� #�� �#�� +$"�"��� #�� �#�� +

�����������(���������� ������*��� .

�/� � ������#����

������� �����

������(*�1#�����1#���.

�3�����

��������

�<�������������(��D ����

�&��� ��������#������( �����

Page 38: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"��� #�� �#�� +�$"�"��� #�� �#�� +�

����������

NOTIFY * HTTP/1.1HOST: 239.255.255.250:1900CACHE-CONTROL: 300LOCATION: http://169.254.17.39/MyMediaRenderer.xmlNT: upnp:rootdeviceNTS: ssdp:aliveSERVER: Allegro RomPager 4.32 UPnP/1.0 Streamium/1.0USN: 4F3G-014579-AEFEAA-234567-000017

CACHE-CONTROL - seconds until advertisement expiresLOCATION - URL of root device descriptionNT - Type of searchUSN - UUID of this device

Page 39: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

Physical Media

Network

Transport

Ethernet, WiFi, HomePlug, Bluetooth, Firewire, etc.

UPnP Application

UPnP Core

General Core

IP

TCPUDP

HTTP

SSDP

Discovery Description Control Events Presentation

Streaming

XML SOAP GENA HTML

Internet Gateway Device, Media Server, Media Renderer, UPnP Printer

$"�"�� #) �#�� $"�"�� #) �#��

Page 40: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"��� #���# �� ��$"�"��� #���# �� ��

�2�3����)��

�������������8

������������*5-�1�<1��1����.

���������������

���� 8��� ������8��������

�/��D �������5�������

�)�� /<3�8��&������1������1 �����������

Page 41: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"��� #���# �� ���$"�"��� #���# �� ���

����������

<?xml version="1.0"?><root xmlns="urn:schemas-upnp-org:device-1-0"><specVersion><major>1</major><minor>0</minor></specVersion><device><deviceType>urn:schemas-upnp-org:device:MediaRenderer:1</deviceType><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><UPC>Universal Product Code</UPC>

Page 42: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"��� #���# �� ���$"�"��� #���# �� ���

����������

<serviceList><service><serviceType>urn:schemas-upnp-org::RenderingControl:1</serviceType><serviceId>urn:upnp-org:serviceId:RenderingControl</serviceId><SCPDURL>URL to service description</SCPDURL><controlURL>URL for control</controlURL><eventSubURL>URL for eventing</eventSubURL></service><service><serviceType>urn:schemas-upnp-org::ConnectionManager:1</serviceType><serviceId>urn:upnp-org:serviceId:ConnectionManager</serviceId><SCPDURL>URL to service description</SCPDURL><controlURL>URL for control</controlURL><eventSubURL>URL for eventing</eventSubURL></service>

</serviceList><presentationURL>URL for presentation</presentationURL></device>

</root>

Page 43: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

Physical Media

Network

Transport

Ethernet, WiFi, HomePlug, Bluetooth, Firewire, etc.

UPnP Application

UPnP Core

General Core

IP

TCPUDP

HTTP

SSDP

Discovery Description Control Events Presentation

Streaming

XML SOAP GENA HTML

Internet Gateway Device, Media Server, Media Renderer, UPnP Printer

$"�"�� #) �#�� $"�"�� #) �#��

Page 44: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"�.��� ���/5���$"�"�.��� ���/5���

POST /ServerControl HTTP/1.1HOST: 169.254.17.39:8181CONTENT-TYPE: text/xml; charset="utf-8"CONNECTION: closeSOAPACTION: "urn:schemas-upnp-org:service:ContentDirectory:1#Browse"

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

<s:Body><u:Browse xmlns:u="urn:schemas-upnp-org:service:ContentDirectory:1">

<ObjectID>0</ObjectID><BrowseFlag>BrowseDirectChildren</BrowseFlag><Filter>*</Filter><StartingIndex>0</StartingIndex><RequestedCount>10</RequestedCount><SortCriteria></SortCriteria>

</u:Browse></s:Body>

</s:Envelope>

Page 45: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"�.��� ���/�����$"�"�.��� ���/�����

HTTP/1.1 200 OKCONTENT-TYPE: text/xml; charset="utf-8"Date: Mon, 09 Aug 2004 15:02:55 GMTContent-Length: 1028Server: Allegro-Software-RomPager/4.32

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

<s:Body><u:BrowseResponse xmlns:u="urn:schemas-upnp-org:service:ContentDirectory:1">

<Result>&lt;DIDL-Lite xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot;>

&lt;container id=&quot;947&quot; parentID=&quot;0&quot; restricted=&quot;1&quot; childCount=&quot;5&quot;>&lt;dc:title>Playlists&lt;/dc:title>&lt;upnp:class>object.container&lt;/upnp:class>

&lt;/container>&lt;container id=&quot;948&quot; parentID=&quot;0&quot; restricted=&quot;1&quot; childCount=&quot;15&quot;>&lt;dc:title>AudioItems&lt;/dc:title>&lt;upnp:class>object.container&lt;/upnp:class>

&lt;/container>&lt;/DIDL-Lite>

</Result><NumberReturned>2</NumberReturned><TotalMatches>2</TotalMatches>

</u:BrowseResponse></s:Body>

</s:Envelope>

Page 46: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"�.��� ���/�����$"�"�.��� ���/�����

<u:BrowseResponse xmlns:u="urn:schemas-upnp-org:service:ContentDirectory:1"><Result>&lt;DIDL-Lite xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;

xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot;xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot;>

&lt;container id=&quot;947&quot; parentID=&quot;0&quot;restricted=&quot;1&quot; childCount=&quot;5&quot;>

&lt;dc:title>Playlists&lt;/dc:title>&lt;upnp:class>object.container&lt;/upnp:class>

&lt;/container>&lt;container id=&quot;948&quot; parentID=&quot;0&quot;

restricted=&quot;1&quot; childCount=&quot;15&quot;>&lt;dc:title>AudioItems&lt;/dc:title>&lt;upnp:class>object.container&lt;/upnp:class>

&lt;/container>&lt;/DIDL-Lite>

</Result><NumberReturned>2</NumberReturned><TotalMatches>2</TotalMatches>

</u:BrowseResponse>

Page 47: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

Physical Media

Network

Transport

Ethernet, WiFi, HomePlug, Bluetooth, Firewire, etc.

UPnP Application

UPnP Core

General Core

IP

TCPUDP

HTTP

SSDP

Discovery Description Control Events Presentation

Streaming

XML SOAP GENA HTML

Internet Gateway Device, Media Server, Media Renderer, UPnP Printer

$"�"�� #) �#�� $"�"�� #) �#��

Page 48: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"�$"�"�2��� ��2��� ��

�-��&0 -������E�����������8�������&��(����� ��

�)�� ����������

������� ����*�.��� �� #����#����/�� #����#���������

���������������������8����������� #����#��� ����)�� ������������� ����)�� ������

Page 49: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"�$"�"�2��� ��2��� �� ����������

SUBSCRIBE /RenderControlSubs HTTP/1.1HOST: 169.254.17.39CALLBACK: http://169.254.42.57/NotificationsNT: upnp:eventTIMEOUT: 3600

Host is device addressCallback is Control Point URL for notificationsTimeout value is subscription duration request seconds

HTTP/1.1 200 OKSID: uuid:BBFEAA-10244096-000037TIMEOUT: 900

Timeout value is actual subscription duration seconds

Page 50: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"�$"�"�2��� ��2��� �� ����������

NOTIFY /NotificationSink HTTP/1.1HOST: 169.254.42.57:4004NT: upnp:eventNTS: upnp:propchangeSID: uuid:c0a80249-3f03c2c4SEQ: 5Content-Type: text/xml; charset="utf-8"

<e:propertyset xmlns:e="urn:schemas-upnp-org:event-1-0"><e:property>

<LastChange>&lt;Event xmlns=&quot;urn:schemas-upnp-org:metadata10/RCS/&quot;&gt;

&lt;InstanceID val=&quot;0&quot;&gt;&lt;Mute channel=&quot;Master&quot; val=&quot;1&quot;/&gt;

&lt;/InstanceID&gt;&lt;/Event&gt;

</LastChange></e:property>

</e:propertyset>

Page 51: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

Physical Media

Network

Transport

Ethernet, WiFi, HomePlug, Bluetooth, Firewire, etc.

UPnP Application

UPnP Core

General Core

IP

TCPUDP

HTTP

SSDP

Discovery Description Control Events Presentation

Streaming

XML SOAP GENA HTML

Internet Gateway Device, Media Server, Media Renderer, UPnP Printer

$"�"�� #) �#�� $"�"�� #) �#��

Page 52: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

$"�"��� #�" ����� ��$"�"��� #�" ����� ��

�)��3����)�� *'�#0#��������������.

�) ����������#��������8������

�'������2 ������ �������������(��5��������$�����

���������'�#���������#� ���1������� ��(��#�����������

Page 53: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

Physical Media

Network

Transport

Ethernet, WiFi, HomePlug, Bluetooth, Firewire, etc.

UPnP Application

UPnP Core

General Core

IP

TCPUDP

HTTP

SSDP

Discovery Description Control Events Presentation

Streaming

XML SOAP GENA HTML

Internet Gateway Device, Media Server, Media Renderer, UPnP Printer

$"�"�� #) �#�� $"�"�� #) �#��

Page 54: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

� � ����! ���� �� ��� � ����! ���� �� ��

�/ � ����������������4 �0480=���

�&�������������(����������

����05������� ���������������

��3�&��������������

�)�� �����������D ����

�)�� -��8���<������� ��������

�5�����������# 88���������

�4�(��������������(�����������������

Page 55: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

Physical Media

Network

Transport

Ethernet, WiFi, HomePlug, Bluetooth, Firewire, etc.

UPnP Application

UPnP Core

General Core

IP

TCPUDP

HTTP

SSDP

Discovery Description Control Events Presentation

Streaming

XML SOAP GENA HTML

Internet Gateway Device, Media Server, Media Renderer, UPnP Printer

$"�"�� #) �#�� $"�"�� #) �#��

Page 56: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

��������� ����� ���������� ����� �

������ '''������ '''

Allegro provides highly portable software toolkits that help embedded device manufacturers build Internet connectivity for machine-to-people and machine-to-machine applications.

Page 57: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

���� ��" ��#��%�� �+���� ��" ��#��%�� �+

RomPager Scheduler and Core Services

TCP File System (optional) UDP (optional)

Web Servers RomPager Basic RomPager Advanced SoftPages Remote Host Graphlets RomPager SecureWeb Clients RomWebClient RomWebClient Advanced RomWebClient Secure����

OS Services

Software Abstraction Layer

SMTP Clients RomMailer Basic RomMailer Standard RomMailer Advanced

POP3 Clients RomPOP Basic RomPOP Standard

RomPOP Advanced

Command Line RomTelnet RomConsole RomCLI RomCLI Secure

UPnP Toolkits RomPlug Basic RomPlug Advanced RomPlug Control

XML Translator RomXML

DNS Client RomDNS

NTP Client RomTime

Page 58: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

/��"���/��"��� -���� ��-���� ��

�=����������

���������������1�����������1 �����������

����4& 1��2�3���������D ����

�&�������������

�% / � 5������������

�4������5-�1�����<�����1���������������

������� ����

�% / � 5������������

�4����������������� ���

Page 59: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

/��"���/��"��� ���� #�� ������� #�� ���

-���� ��-���� ��

�=������%�� ������������(�$���& 5�

������8���� �����8��������8��������

�5-�0 5�������-������������

�������#�8������* 4��1 1��31����.

�������4& �������

������<�����1����������1�����������

��5�3� �����1)�� ���������� �����

��3�&� �����

)��(0���&������& 5

Page 60: Software Architecture for Networked Digital Media · 2012. 3. 21. · Overview of protocols used by networked digital media devices such as music players, media servers, media adapters,

www.allegrosoft.com