1 / 20

MobileRC

MobileRC. Will Worden Jackie Huynh Chris Shrives. What does it do?. Use your cell phone as a remote control for a media control center Two sides – Computer Side application and Phone Side application. Technologies involved. WLAN connection between phone and computer

oberon
Télécharger la présentation

MobileRC

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MobileRC Will Worden Jackie Huynh Chris Shrives

  2. What does it do? • Use your cell phone as a remote control for a media control center • Two sides – Computer Side application and Phone Side application

  3. Technologies involved • WLAN connection between phone and computer • Phone that can run J2ME application (We tested on a Nokia e71/ Symbian S60 FP2) • Computer side requires Python, VLC Player (default player)

  4. How do we do it? • Interpreter runs on computer, Phone connects to. Interpreter parses commands from phone and passes them to VLC for execution INTERPERTER TCP TCP

  5. Phone Side • J2me application • Connects over Wireless LAN rather than over the air through cellular network • No data costs associated with it • TCP /UDP connection, predefined ports

  6. Phone Side • Networking aspects • Finding Peers • Features both manual entry (history of previous connections stored locally on phone) • Automated peer detection on WLAN • UDP broadcast on subnet to find listening peers

  7. Peerfinding Registrar Service

  8. Peerfinding Broadcast Address Message hashed with md5

  9. Peerfinding Password matched, Connect

  10. Phone Side • TCP message commands after connection established • Predefined port on Computer Side, OS assigns Phone side port

  11. Problems Encountered on PhoneSide • Problems found: Many wireless routers don’t allow broadcast msg • Nokia does not recognize 255.255.255.255 as valid host • Symbian does not allow phone to report its own IP address (Security feature) • Nokia phones cannot connect to an address with port 80 (Midlet must be signed by trusted authority such as Verisign or Thawte) • Workaround: Connects to a registrar service that provides the IP information.

  12. ComputerSide (Interpreter) • Python 2.6 • Console Application (GUI feature, cut) • Maps internal commands to VLC commands • Accepts TCP Connections from mobile devices. • Makes separate TCP connection to VLC • Connects to VLC’s Remote Control Interface • Why have interpreter? Why not connect mobile devices to VLC directly?

  13. ComputerSide (Interpreter) • Decoupling • You can build a different application to act as the remote control. (e.g. iPhone application) • You can control other media players as well, as long as they have some sort of remote control interface INTERPERTER

  14. ComputerSide (Interpreter) • Usage:

  15. Problems found on Computer Side • VLC does not provide any playback information that can be used to get status of the player. • Commands sent to VLC are limited (e.g. Pause/Resume) • Difficult to detect VLC installation location. Just assumed default.

  16. Commands • Launch • Play • Pause • Stop • Next • RWD • FFW • Previous • Volume +/- • Mute (VLC bugged) • Full Screen • Quit

  17. GUI • KUIX library (http://www.kalmeo.org/projects/kuix) • Uses CSS to create dynamic UI

  18. Outside sources • http://www.kalmeo.org/projects/kuix • Md5 implementation for j2me • http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html

  19. Open Source! • This project is hosted by Google’s Project Hosting • http://code.google.com/p/mobilerc/ • MIT Licensed

  20. Questions?

More Related