DLNA Media Server Virtual Appliance

From Yocto Project
(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
 
__FORCETOC__
 
__FORCETOC__
A [http://en.wikipedia.org/wiki/Digital_Living_Network_Alliance DLNA] Media Server is a device that stores media content that can be accessed by media players and  rederers found in the same local network. The goal of the project was creating a minimal solution to meet theese requirements. This was achieved using the tools provided by the [http://www.yoctoproject.org/ yocto] project through the creation of the meta-dlna layer.
+
A [http://en.wikipedia.org/wiki/Digital_Living_Network_Alliance DLNA] Media Server is a device that stores media content that can be accessed by media players and  rederers found in the same local network. The goal of the project was creating a minimal solution to meet theese requirements. This was achieved using the tools provided by the [http://www.yoctoproject.org/ yocto] project through the creation of the meta-dlna layer.[[File:Example.jpg]]
  
 
== Introduction ==
 
== Introduction ==
Line 7: Line 7:
 
The functionality of the Media Server was implemented as a new layer, the meta-dlna layer, which can easily be integrated over any poky distribution. Stability and reliability was achieved by using the denzil branch of the yocto project.
 
The functionality of the Media Server was implemented as a new layer, the meta-dlna layer, which can easily be integrated over any poky distribution. Stability and reliability was achieved by using the denzil branch of the yocto project.
 
<br/>
 
<br/>
 +
[TODO] - KVM
  
 
== Package dependencies ==
 
== Package dependencies ==
 
+
===== Rygel =====
The solution was build around [https://live.gnome.org/Rygel/ rygel], an application used for media content sharing on a home network. Rygel implements its functionality through a plugin mechanism. A solution uses the [https://live.gnome.org/Rygel/ MediaExport] plugin which exports files and folders over the network. This was preffered because it represents a more lightweight alternative.
+
The solution was build around [https://live.gnome.org/Rygel/ rygel], an application used for media content sharing on a home network. Rygel implements its functionality through a plugin mechanism.
 +
===== Tracker plugin =====
 +
[http://projects.gnome.org/tracker/ Tracker] reprezents a data storage for devices that keeps semantic metadata about files and folders and enables data sharing throughout a local network.
 +
===== MediaExport plugin =====
 +
The [https://live.gnome.org/Rygel/ MediaExport] plugin exports files and folders over the network. This solution was preferred to Tracker because it represents a more lightweight alternative and meets to all project requirements.
 +
<br/>[TODO] - KVM
  
 
== How to integrate DLNA to a poky distribution ==
 
== How to integrate DLNA to a poky distribution ==
The meta-dlna layer was created using the [https://wiki.yoctoproject.org/wiki/Combo-layer combo-layer tool]. To use it follow the next steps:
+
The meta-dlna layer was created using the [https://wiki.yoctoproject.org/wiki/Combo-layer combo-layer tool]. To enable it, follow the next steps:
 
* Copy the <tt>meta-dlna</tt> folder into the root directory of a <tt>poky</tt> distribution. <tt>Cd</tt> into the poky folder.
 
* Copy the <tt>meta-dlna</tt> folder into the root directory of a <tt>poky</tt> distribution. <tt>Cd</tt> into the poky folder.
 
* Add the layer to <tt>build/conf/bblayers.conf</tt>:
 
* Add the layer to <tt>build/conf/bblayers.conf</tt>:

Revision as of 00:51, 6 September 2012

A DLNA Media Server is a device that stores media content that can be accessed by media players and rederers found in the same local network. The goal of the project was creating a minimal solution to meet theese requirements. This was achieved using the tools provided by the yocto project through the creation of the meta-dlna layer.File:Example.jpg

Contents

Introduction

Poky is a platform-independant layer that provides useful features and functionalities for embedded solutions. A Quick Start Guide and further information can be found on the main page of the Poky Project. The functionality of the Media Server was implemented as a new layer, the meta-dlna layer, which can easily be integrated over any poky distribution. Stability and reliability was achieved by using the denzil branch of the yocto project.
[TODO] - KVM

Package dependencies

Rygel

The solution was build around rygel, an application used for media content sharing on a home network. Rygel implements its functionality through a plugin mechanism.

Tracker plugin

Tracker reprezents a data storage for devices that keeps semantic metadata about files and folders and enables data sharing throughout a local network.

MediaExport plugin

The MediaExport plugin exports files and folders over the network. This solution was preferred to Tracker because it represents a more lightweight alternative and meets to all project requirements.
[TODO] - KVM

How to integrate DLNA to a poky distribution

The meta-dlna layer was created using the combo-layer tool. To enable it, follow the next steps:

  • Copy the meta-dlna folder into the root directory of a poky distribution. Cd into the poky folder.
  • Add the layer to build/conf/bblayers.conf:
[...]
BBLAYERS="
         $POKY_HOME/meta-dlna/meta-guacamayo
[...]
  • Add some extra features to build/local.conf:
[...]
DISTRO_FEATURES = "ext2 largefile usbhost xattr nfs zeroconf pci ${DISTRO_FEATURES_LIBC} x11" 
[...]
  • source the oe-init-env script
  • build the image using the guacamayo-image-mediaserver target
bitbake guacamayo-image-mediaserver [TODO] 

For testing purposes, demo content can be added by inserting the following line into build/conf/local.conf:

[...]
IMAGE_FEATURES_append = " guacamayo-demos"
[...]
Personal tools