GSOC Proposal: Streaming for Android remote client
#1
Project Information:
  • Summary:
    This project aims to improve the remote client for android devices by adding new features to the existing application and by fixing some of the bugs reported in the project bug tracker.
    Also the project tackles the battery consumption problem caused by Wi-Fi and proposes an alternative solution using Bluetooth.

  • Benefits:
    This project will improve interactions between the user and Xbmc. Most people already have a smart phone so they don't have to invest into new hardware. An application that allows remote control of the Media player may be of great interest to an user.
    Wi-Fi is a big battery consumer and an alternative solution may be preferred by some users.

  • What will the project focus on:
    The project will focus on adding extra functionality and also on solving some of the current features bugs. The important parts from the projects are Android (both presentation and business part) and the API used by the web service to communicate with the media player.


  • Goals:
    Primary Goal: Enable Media Streaming to device.
    Secondary Goal: Download media locally to device's SD card, Improve existing user interface
    Optional Goal: Bluetooth connectivity, proof of concept.


  • How will I achieve this:
    In the first week I will get accustomed with the project by fixing some minor bugs and understanding the architecture of the project.

    After this ramp-up period I will extend the Web Service API to allow streaming of media files. Android Media player accepts URLs to be set as data source so the web service has to provide the data stream from the file and export it to a connecting host ( Remote client). I have already done something similar by streaming files over SMB protocol. Once the media input stream is available to the client I can either stream the files remotely or copy them locally on SD card.
    I will then create a user interface to allow local file browsing and media streaming, that fits with the rest of the application.

    I would like to improve the existing UI by fixing some of the high priority bugs and enhancements posted in the issue tracker.

    I would like to offer an alternative to Wi-Fi, which is a battery drainer, by connecting via Bluetooth instead. To implement this feature I will have to create a Connection Handler that accepts Bluetooth connection over Serial Port Protocol (SPP) and a Message Adapter that translates the messages received over Bluetooth to the Web Service. This will be implemented only as a proof of concept, and the mobile device will have limited functionality (remote control only) with this connection type. I have some prior experience with Bluetooth API on an android device.

  • Timeline:
    June 17 – June 23: Ramp up period. Small bug fixes to get familiar with the project.
    June 24 – July 7: Extend JSON API to allow streaming over http.
    July 8 – July 21: Creating User Interface for streaming media files.
    July 22 – July 28: Download media locally Option, user interface
    July 29 – August 11: Stability period. Bug fixing
    August 12 – August 26: Bluetooth concept
    August 26 – September 1: Stability period. Bug fixing
    September 2 – September 8: Documentation
    September 9 – September 16: Overhead period (holidays, unforeseen problems)

  • What does it touch in XBMC:
    Android-xbmcRemote project and the Web Service.

  • Requirements:
    In order to complete this project the developer will need to have a firm understanding of Object Oriented Programming, Java and Android API. Also the developer will need to know basic SQL and how to interact with JSON-RPC API.


  • Possible Mentors:


Personal Information:

Name: Cristian Ichimescu
Email: [email protected]

Background Info: I am student at University Polytechnic of Bucharest, Faculty of Automatic Control and Computers. I am in my second year of Master of Science majoring Internet Engineering Systems.

Computer skills and knowledge:
Object Oriented Programming, Semantic web, Adaptive and Collaborative Systems, Multiple Agent Systems, Information Retrieval Systems, Android API, Design Patterns, Artificial Intelligence, Database Usage, Kernel Programming, Communication Protocols.

If you have any further questions or feedback to offer please contact me.

I am looking forward to collaborating with you,
Cristian
Reply


Messages In This Thread
GSOC Proposal: Streaming for Android remote client - by cristian - 2013-05-07, 09:58
Logout Mark Read Team Forum Stats Members Help
GSOC Proposal: Streaming for Android remote client0