2019-11-13 Gera, Zoltán

BSc Thesis Topic: DLNA Media Controller App



All our home media players support UPnP protocol and the DLNA subset of functionality. However, there is no FLOSS mobile app which does one simple thing: Acts as a DLNA Controller between Server and Renderer devices. There is no need for streaming, conversion or any other impractical, battery consuming activity on the phone. We need a simple app which maps up the already present funcionality in the network and allows reliable monitoring and control of it. That's all!

This topic focuses on audio playback first, video is optional.

Functional requirements

  • The app maps up DLNA/UPnP devices in the local network and allows to browse them.

  • It allows selecting a media Renderer/Player device to be used for playback.

  • It allows to browse a Server device for media content and enables to play supported content by the selected Renderer/Player.

  • It monitors the playback progress and makes the usual basic controls (pause, play, stop...) available.

  • The app has a basic playlist funcionality with ordered and random order functions.

  • Optional: It can use the exposed Rendering Control elements to allow controlling of volume and other audio playback parameters.

  • Optional: It also allows video controls besides audio controls.

Non functional requirements

  • The battery consumption of the app is minimal as only basic polling should be done on the network.

  • The app is completely Free/Libre and Open Source Software. As such, it has a version available and maintained on https://f-droid.org/.

  • The source code is hosted and developed openly.

The photo of cassette tape buttons is from https://www.freeimages.co.uk.