non-compliant MediaObject2.Type values
by Jussi Kukkonen
Hi,
First, doc/API.txt seems to be missing from dleyna-server repo. If the
idea is that only web page is updated, we should probably include a
url in docs/.
API.txt from media-service-upnp says this (looking at code, it seems
to accurately describe dleyna-server):
> Additional Values for the Type Property:
> ----------------------------------------
>
> The Type property tells what kind of object we are dealing with and
> which can take the below values in addition to those described
> in MediaServer2Spec specification (3).
> in case of Items:
> 'video.musicclip', 'video.broadcast'
> 'audio.broadcast', 'audio.book',
> 'playlist', 'item'
> and in case of Containers:
> 'album', 'album.music', 'album.photo'
> 'person', 'person.musicartist'
> 'genre', 'genre.music', 'genre.movie'
I think this is a mistake and makes the implementation non-compliant
with the org.gnome.MediaObject2 spec in a way that is harmful to
client developers. I realise there are other places where
dleyna-server does not implement some things or implements additional
things, but this is more problematic, basically an API break: The
MediaObject2 spec clearly says containers _must_ have type
"container", and applications will rely on that. Adding new types will
break clients.
As an example of this, dleyna-control makes this mistake -- I can't
browse by artist or genre:
https://github.com/01org/dleyna-control/issues/8. As another example
even the same document (API.txt) includes this example:
> def tree(server_path, level=0):
> bus = dbus.SessionBus()
> container = dbus.Interface(bus.get_object(
> 'com.intel.media-service-upnp', server_path),
> 'org.gnome.UPnP.MediaContainer2')
> objects = container.ListChildren(0, 0, ["DisplayName", "Path", "Type"])
> for props in objects:
> print " " * (level * 4) + ( props["DisplayName"] +
> " : (" + props["Path"]+ ")")
> if props["Type"] == "container":
> tree(props["Path"], level + 1)
I believe this will not work for all containers.
If the additional container types are required, could we add another
property for them instead?
- Jussi
9 years
Cloud-dLeyna is now UPnP Certified
by Mark Ryan
Hi All,
I'm proud to announce that we received UPnP certification for
cloud-dLeyna's Digitial Media Controller test application this week.
Cloud-dLeyna (https://github.com/01org/cloud-dleyna) provides a set of
HTML 5 APIs for building DLNA enabled applications, i.e., applications
that can consume the services of DMSs and DMRs. Cloud-dLeyna includes a
demo DMC written in HTML5 and it for this application that we received
certification.
This certification is very important for the dLeyna project as it
demonstrates that the dLeyna APIs can be used to build UPnP certifiable
applications. It's also good news for the GUPnP project. As dLeyna
depends on GUPnP, it also implies that GUPnP can be used to create UPnP
certifiable control points as well.
For the record, a complete bill of materials of the certified software
is given below:
Best Regards,
Mark
------------------------------------------
------------------------------------------------------------------
- COMPONENT: gssdp
- REPOSITORY: git://git.gnome.org/
- TAG: gssdp-0.14.2
- COMMIT ID: 791db40632b4b259ce7efa192cb6a760df3f285a
------------------------------------------------------------------
- COMPONENT: gupnp
- REPOSITORY: git://git.gnome.org/
- TAG: gupnp-0.20.1
- COMMIT ID: 6f006fbbfca7748514e604d5de63723696aa324c
------------------------------------------------------------------
- COMPONENT: gupnp-av
- REPOSITORY: git://git.gnome.org/
- TAG: gupnp-av-0.12.0
- COMMIT ID: b53db11078b4e3b888ca6b21f52dbb12cf12ec13
------------------------------------------------------------------
- COMPONENT: gupnp-dlna
- REPOSITORY: git://git.gnome.org/
- TAG: gupnp-dlna-0.10.0
- COMMIT ID: ffe6f463dcf7ce52b32592a65cf35c25bea19232
------------------------------------------------------------------
- COMPONENT: dleyna-core
- REPOSITORY: git://github.com/01org/
- TAG: v0.0.1
- COMMIT ID: c57a093ec383a5a0604a0c22db2ff2b03253c11a
------------------------------------------------------------------
- COMPONENT: dleyna-renderer
- REPOSITORY: git://github.com/01org/
- TAG: v0.0.1
- COMMIT ID: 408a73252abd1c8e46a5e4c4394d04b883010e39
------------------------------------------------------------------
- COMPONENT: dleyna-server
- REPOSITORY: git://github.com/01org/
- TAG: v0.0.1
- COMMIT ID: beb71c819c243a7a661994acd5053bbd346bef2c
------------------------------------------------------------------
- COMPONENT: dleyna-connector-dbus
- REPOSITORY: git://github.com/01org/
- TAG: v0.0.1
- COMMIT ID: 5d830b08455b5957cd2c7ee641fd196d34d0f1ab
------------------------------------------------------------------
- COMPONENT: cloud-dleyna
- REPOSITORY: git://github.com/01org/
- TAG: UCTT
- COMMIT ID: 7f159b2c27337afd0086b4400a253595e5263d6a
------------------------------------------------------------------
- COMPONENT: cloudeebus
- REPOSITORY: git://github.com/01org/
- TAG: v0.2.1
- COMMIT ID: 4af6e3d7dd1da4f87eb0cfcc2dd7e80fd9cc20f6
------------------------------------------------------------------
9 years, 3 months
Announcing the new dLeyna repositories
by Mark Ryan
Hi All,
As previously announced on this list (
https://lists.01.org/pipermail/dleyna/2013-February/000099.html ) we
have been re-organising both dLeyna's architecture and it's source code
repositories, with the aims of introducing a meaningful naming scheme,
improving code re-use and enabling support for different IPC mechanisms.
I'm pleased to announce that this work has finally been completed.
Here's a brief overview of what has changed.
Repositories:
---------------
In the past, the two dLeyna middleware components were stored in two
separate repositories:
https://github.com/01org/media-service-upnp
https://github.com/01org/renderer-service-upnp
These two repositories are now deprecated. Their code has been split up
and moved into 4 new repositories. These are:
https://github.com/01org/dleyna-core
https://github.com/01org/dleyna-server
https://github.com/01org/dleyna-renderer
https://github.com/01org/dleyna-connector-dbus
dLeyna-server provides APIs for discovering Digital Media Servers and
for browsing and searching their contents.
dLeyna-renderer provides APIs for discovering and manipulating Digital
Media Renderers.
The two dLeyna components mentioned above share a lot of common code.
For example, they use the same logging and task management systems and
the same IPC abstraction mechanism (more on this later on). To improve
code re-use, all of this common code has been moved to a separate
library, dLeyna-core.
dLeyna-server and dLeyna-renderer are implemented as services rather
than libraries and hence they make their APIs available via IPC
mechanisms rather than directly through function calls. The dLeyna
services are designed to support different IPC mechanisms. Internally
they use an abstract API to perform IPC tasks, such as publishing an
object or sending a notification, and these tasks are delegated through
this API to a dynamically loaded shared library called a connector.
Currently, the dLeyna project contains only a single connector module,
dLeyna-connector-dbus. As its name suggests, dLeyna-connector-dbus can
be used to provide a d-Bus API for the dLeyna services.
Finally, our test DMP, previously located at
https://github.com/01org/media-service-demo
has been renamed to dLeyna-control and moved to a new repository:
https://github.com/01org/dleyna-control
Incidentally, this component has had quite a few updates lately,
including performance and UI responsiveness improvements, migration to
gtk 3.0 and gstreamer 1.0, and more intelligent sorting.
All the old repositories are still available and will continue to be so.
However, they are deprecated and the code will no longer be
maintained. Please enter bugs and feature requests on the new repos.
API Changes:
---------------
As we have renamed our components there have necessarily been some
changes to the d-Bus APIs. A brief summary is provided below:
Service Name Changes:
com.intel.MediaServiceUPnP -> com.intel.dleyna-server
com.intel.RendererServiceUPnP -> com.intel.dleyna-renderer
Object Path Changes:
/com/intel/MediaServiceUPnP -> /com/intel/dLeynaServer
/com/intel/RendererServiceUPnP -> /com/intel/dLeynaRenderer
Interface Name Changes:
com.intel.UPnP.MediaDevice -> com.intel.dLeynaServer.MediaDevice
com.intel.RendererServiceUPnP.Manager -> com.intel.dLeynaRenderer.Manager
com.intel.RendererServiceUPnP.PushHost -> com.intel.dLeynaRenderer.PushHost
Executable Name Changes:
---------------------
Finally, the executable names for the services have also changed.
media-service-upnp -> dleyna-server-service
renderer-service-upnp -> dleyna-renderer-service
Please let us know if you have any questions or encounter any problems
with the new repositories.
Best Regards,
Mark Ryan
9 years, 3 months
BAT report for dLeyna (03/08/2013)
by Prigent, Christophe
Basic Acceptance Test results report for dLeyna (03/08/2013)
Objective
The objective is to check we can build dLeyna and its components without problem from fresh sources, and give a global quality status by testing key functionalities.
All BAT test cases are executed manually.
Quality summary
Regarding BAT results, all alpha test cases can be executed.
Setup
- COMPONENT: gssdp
- REPOSITORY: git://git.gnome.org/
- TAG: gssdp-0.14.2
- COMMIT ID: 791db40632b4b259ce7efa192cb6a760df3f285a
------------------------------------------------------------------
- COMPONENT: gupnp
- REPOSITORY: git://git.gnome.org/
- TAG: gupnp-0.20.1
- COMMIT ID: 6f006fbbfca7748514e604d5de63723696aa324c
------------------------------------------------------------------
- COMPONENT: gupnp-av
- REPOSITORY: git://git.gnome.org/
- TAG: gupnp-av-0.12.0
- COMMIT ID: b53db11078b4e3b888ca6b21f52dbb12cf12ec13
------------------------------------------------------------------
- COMPONENT: gupnp-dlna
- REPOSITORY: git://git.gnome.org/
- TAG: gupnp-dlna-0.10.0
- COMMIT ID: ffe6f463dcf7ce52b32592a65cf35c25bea19232
------------------------------------------------------------------
- COMPONENT: dleyna-core
- REPOSITORY: git://github.com/01org/
- TAG: No Tag - HEAD
- COMMIT ID: fe88b36ac0bd31ce2461e7d5a6ef9372893b52c9
------------------------------------------------------------------
- COMPONENT: dleyna-renderer
- REPOSITORY: git://github.com/01org/
- TAG: No Tag - HEAD
- COMMIT ID: 8de18eed056cefc2b91e6bb16e00e52378718ac0
------------------------------------------------------------------
- COMPONENT: dleyna-server
- REPOSITORY: git://github.com/01org/
- TAG: No Tag - HEAD
- COMMIT ID: 6b9249f2b95ee7e01546bce4ea6366c4e7aa25f7
------------------------------------------------------------------
- COMPONENT: dleyna-connector-dbus
- REPOSITORY: git://github.com/01org/
- TAG: No Tag - HEAD
- COMMIT ID: f639f104ffde29176bff1581517bfd17316d23b5
------------------------------------------------------------------
- COMPONENT: cloud-dleyna
- REPOSITORY: git://github.com/01org/
- TAG: UCTT
- COMMIT ID: 7f159b2c27337afd0086b4400a253595e5263d6a
------------------------------------------------------------------
- COMPONENT: cloudeebus
- REPOSITORY: git://github.com/01org/
- TAG: v0.2.1
- COMMIT ID: 4af6e3d7dd1da4f87eb0cfcc2dd7e80fd9cc20f6
------------------------------------------------------------------
- COMPONENT: rygel
- REPOSITORY: git://git.gnome.org/
- TAG: RYGEL_0_17_9
- COMMIT ID: e74e25fa30f173e5debf36420072efce9d0a1cad
Results
Passed
100%
Failed
0%
Blocked
0%
Run rate
100%
Bug status
New bugs:
None
Closed bugs:
None
Details
Results are shared via QA Reports:
http://otc-qa-reports.fr.intel.com/Upstream/Laptop/dLeyna/Laptop/792
Name
Result
Comment
Check all components are integrated
PASS
Check all services and components can be launched
PASS
Check the communicating endpoints establish communication
PASS
Check presence of dLeyna in dBus
PASS
Check functioning with Cloud Dleyna
PASS
Check DLNA capabilities and features are retrieved when a new device connects
PASS
Check DMS serves up media
PASS
Tested with DMS: Rygel
Check DMP browse content and play the selected media
PASS
Tested with DMP: media service demo
Check DMC controls the content selection and content rendering between networked devices
PASS
Tested with DMC: Cloud Dleyna
Check DMR renders content
PASS
Tested with DMR: Sony Bravia kdl-26ex320
Check content can be uploaded
PASS
Tested with DMC: Cloud Dleyna
Check content is synchronized
PASS
Tested with Download Synchronization Controller
---------------------------------------------------------------------
Intel Corporation SAS (French simplified joint stock company)
Registered headquarters: "Les Montalets"- 2, rue de Paris,
92196 Meudon Cedex, France
Registration Number: 302 456 199 R.C.S. NANTERRE
Capital: 4,572,000 Euros
This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
9 years, 3 months