Job offers

  • Design, implementation and integration of a graphical user interface for the Peer in the P2PSP python implementation.
P2PSP (http://p2psp.org/) is an open-source application layer protocol for the real-time streaming of multimedia content over the Internet. There already is a working implementation in Python but it does not have any integrated GUI, so the user must run a player separately. The purpose of this work is to use LibVLC (a media framework that embeds the features of VLC into an application) to integrate a peer and a player into a single executable. However, any other suggestions about multimedia libraries are welcome. The P2PSP source code is available at https://launchpad.net/p2psp. You can find more information about LibVLC and Python in https://wiki.videolan.org/PythonBinding/. The code must be documented with Doxygen.
    • Expected deliverables: A single executable integrating a GUI, a player and a P2PSP peer. 
    • Knowledge prerequisites: Python programming skills. 
    • Skill level: Basic. 
    • Requirements: BS or MS in Computer Science. 
    • Location: Work from home (weekly meetings will be arranged). 
    • Duration: 160 hours. 

  • Design and Implementation of a new source video from mobile phone (Android). 
Mobile phones are nowadays present in everyone's pocket, meaning that there is a camera at virtually any populated place in the world. Giving users the chance to share what they are watching live with the rest of the world seems to be a good idea and is a natural application of the phone+Internet combination. On the other hand, P2PSP is a minimal (easy to implement) protocol designed for the streaming of media (audio and video). At the present time, there is a working Python implementation available at Launchpad. The goal of this work is the development of an Android app that captures the video of the camera and sends it to a streaming server (Icecast) on real time. From there, P2PSP distributes the stream to the rest of the world. The idea is to use the LibVLC, a media framework that can be embedded into an application to get multimedia capabilities. More information about LibVLC and Android can be found in https://bitbucket.org/edwardcw/libvlc-android-sample. The code must be documented with Doxygen. 
    • Expected deliverables: An application for Android that captures the video of the camera and sends it to a streaming server (Icecast) in real time. 
    • Knowledge prerequisites: Basic skills on computer networks and sockets, Android programming skills. 
    • Skill level: Intermediate. 
    • Requirements: BS or MS in Computer Science. 
    • Location: Work from home (weekly meetings will be arranged). 
    • Duration: 320 hours.


Note: for more information about these job offers, contact us at info@luxunda.es