Download - DLNA bundles - OSGi as a Media Gateway
© Hitachi Solutions, Ltd. 2011. All rights reserved.
OSGi Devcon 2011
Hitachi Solutions
Mar 24, 2011
Shinya Nobuoka
DLNA Bundles – OSGi as a Media Gateway
© Hitachi Solutions, Ltd. 2011. All rights reserved.
• Motivation
Outline
• What is DLNA? Why?
• DLNA bundles
• Applications
• Summary
1
© Hitachi Solutions, Ltd. 2011. All rights reserved.
Who we are
2
OSGi bundle developer at Hitachi Solutions
Shinya Nobuoka
Hitachi Solutions
- System Integrator/Developer
- Location: Tokyo, Japan
- Providing OSGi-certified product
“SuperJ Engine Framework”
© Hitachi Solutions, Ltd. 2011. All rights reserved.
• Motivation
Outline
• What is DLNA? Why?
• DLNA bundles
• Applications
• Summary
3
© Hitachi Solutions, Ltd. 2011. All rights reserved.
Motivation
What is the killer application/service on OSGi?
We focused on Media services
Idea & Objective:
Develop DLNA bundles those enable media
services through the internet
OSGi
Home Gateway
DLNA
bundles
Video Site
Friend’s Home
Picture SharingVideo
DLNA
Device
DLNA
Picture
4
© Hitachi Solutions, Ltd. 2011. All rights reserved.
• Motivation
Outline
• What is DLNA? Why?• DLNA bundles
• Applications
• Summary
5
© Hitachi Solutions, Ltd. 2011. All rights reserved.
What is DLNA?
DLNA Standard for sharing media contents among
home devices on the LAN
6
Player (DMP/DMR)Server (DMS)
(1) play
(2) control
Controller
(DMC)
Video
(Case 1) Watch a video in recorder from TV
(Case 2) Use cell phone as a remote controller
© Hitachi Solutions, Ltd. 2011. All rights reserved.
Why DLNA?
DLNA is a widely accepted standard on
home network area
There are a lot of home devices those
support DLNA
PCSmart Phone
HDD Recorder
TV
Game Devices
9000 DLNA-certified products
440 million DLNA-certified devices
7
© Hitachi Solutions, Ltd. 2011. All rights reserved.
• Motivation
Outline
• DLNA bundles• Applications
• Summary
• What is DLNA? Why?
8
© Hitachi Solutions, Ltd. 2011. All rights reserved.
DLNA Bundles Overview
OSGi
UPnP
DMS Core DMC Core
DMS Proxy HTML DMCUSB DMS
Make HGW
to be a DMS
Contents
Get media files from
the internet, open it for
home net.
Video Site
Control DLNA
devices from
browser
controlDLNA
[Issue 1] How to implement DLNA stack
[Issue 2] Getting internet contents into DLNA9
© Hitachi Solutions, Ltd. 2011. All rights reserved.
How to implement DLNA stack 1/3
DLNA is based on UPnP (Universal Plug and Play)
UPnP is standardized as a OSGi service.Basic idea is to implement DLNA service on the
UPnP service
UPnP
DLNAAutomatic device
discovery on the
same network
Media contents sharing
among electric devices
(e.g. TV, recorder,..)
UPnP (stack)
DLNA App
But..10
DLNA (stack)
© Hitachi Solutions, Ltd. 2011. All rights reserved.
DLNA App
Problem
UPnP service does not provide functions needed to
implement DLNA service
Example Case
11
DLNA app needs <dlna:> tag info inserted into UPnP message
How to implement DLNA stack 2/3
UPnP service has no means to include <dlna:> tag info
into UPnP message
Need to extend UPnP service
Original interface of UPnP should not be changed
(else it causes compatibility problem)
DLNA
device
UPnP
DLNA
<?xml…>
<device>
…
<dlna:X_DLNADOC…>
DMS-1.50
</dlna:X_DLNADOC>
© Hitachi Solutions, Ltd. 2011. All rights reserved. 12
Our Solution
Add “hidden interface” to UPnP by using
Dictionary argument
UPnP
DLNA
UPnP.device.type: urn:schemas…
UPnP.device.manufacturer: Hitachi
…
DLNA.x_dlnadoc: DMS-1.50
Device info
DLNA App
<?xml…>
<device>
…
<dlna:X_DLNADOC…>
DMS-1.50
</dlna:X_DLNADOC>
DLNA
device
Dictionary (Map)
object
How to implement DLNA stack 3/3
UPnP service adds <dlna:> tag info into UPnP message only
if <dlna:> tag info was present in the Dictionary argument
from DLNA App
Example Case (cont.)
© Hitachi Solutions, Ltd. 2011. All rights reserved.
DMS ProxyDLNA
device
・ -------・ -------・ -------・ -------
contents list
・ -------・ -------・ -------・ -------
DLNA
contents list
contents filecontents file
13
UPnP
Getting internet contents into DLNA 1/4
Idea: DMS Proxy
DMS (DLNA server) which get contents from the
internet and show them as DLNA contents
Video Site X
Picture Site YDLNA
DLNA
protocol
1. Convert contents list to DLNA format/protocol
2. Transcode videos (flv, mp4) to DLNA format (mpeg2)
© Hitachi Solutions, Ltd. 2011. All rights reserved. 14
Getting internet contents into DLNA 2/4
Implementation issues of DMS Proxy on HGW
1. Lack of CPU power for video transcoding
Solution: Transcoding Server
2. Implementation cost of DLNA applications
Solution: DMS Core
© Hitachi Solutions, Ltd. 2011. All rights reserved.
Enables real-time transcoding using server’s
CPU resource
Can be worked on PlugComputer, PC, etc..
Video Site X
DLNA
device
Transcoding
Server
FLVMPEG2MPEG2
15
UPnP
Transcoding Server
Getting internet contents into DLNA 3/4
DMS Proxy
© Hitachi Solutions, Ltd. 2011. All rights reserved.
MPEG2
DMS Core
Video Site X
Picture Site Y
Simple API・ -------・ -------・ -------・ -------
DLNA
DLNA
device
• Generate DLNA
contents list
• conceal the detail of
DLNA protocol
• Get contents list
• Get contents file Picture Site X
16
UPnP
Video Site Y
Provides core functions for implementing DMS
Simplifies DMS application development
・ -------・ -------・ -------・ -------
Getting internet contents into DLNA 4/4
DMS Core
© Hitachi Solutions, Ltd. 2011. All rights reserved.
• Motivation
Outline
• DLNA bundles
• Applications• Summary
• What is DLNA? Why?
17
© Hitachi Solutions, Ltd. 2011. All rights reserved.
DMS Proxy for a video site
Use smart phone as a controller
Transcoding
Server
Video Site A
DLNA
device
Smart Phone
Select a video,
push it to DLNA device
(1)
(2)
(3)
(4)
OSGi
DMC Core
18
Video Site X
(DMS Proxy)
DMS Core
© Hitachi Solutions, Ltd. 2011. All rights reserved.
My HomeFriend’s Home
(e.g. Parents)
(1) Take picture,
upload to HGW (2) Send
OSGi
(3) Send
DLNA
Eye-Fi
card
19
Picture sharing between homes
Send pictures to friend’s home
DMS/DMC Core
DLNA
Picture Frame
Pic Reciever
© Hitachi Solutions, Ltd. 2011. All rights reserved.
• Motivation
Outline
• DLNA bundles
• Applications
• Summary
• What is DLNA? Why?
20
© Hitachi Solutions, Ltd. 2011. All rights reserved.
Summary
Developed DLNA bundles those can be
used for internet-based media service DLNA stack can be implemented by
extending UPnP service
Server side transcoding is needed for real time
streaming of video files
It is possible to bring internet contents into
local DLNA network
There are many possible media services
waiting to be implemented with DLNA
bundles
21
© Hitachi Solutions, Ltd. 2011. All rights reserved.
Thank you!
Shinya Nobuoka
DLNA is a registered trademark and DLNA Certified is a trademark of the Digital Living Network Alliance.
Eye-Fi is a registered trademark of Eye-Fi, inc.
UPnP is a trademark of the UPnP Implementers Corporation.
All other trademarks or registered trademarks are the property of their respective owners.
http://www.hitachi-solutions.com/
22