20
MobileRC Will Worden Jackie Huynh Chris Shrives

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

Embed Size (px)

Citation preview

Page 1: 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

MobileRCWill Worden

Jackie HuynhChris Shrives

Page 2: 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

What does it do?Use your cell phone as a remote control for a

media control centerTwo sides – Computer Side application and

Phone Side application

Page 3: 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

Technologies involvedWLAN connection between phone and

computerPhone that can run J2ME application (We

tested on a Nokia e71/ Symbian S60 FP2)Computer side requires Python, VLC Player

(default player)

Page 4: 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

How do we do it?

Interpreter runs on computer, Phone connects to. Interpreter parses commands from phone and passes them to VLC for execution

INTERPERTERTCP

TCP

Page 5: 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

Phone SideJ2me applicationConnects over Wireless LAN rather than over

the air through cellular network No data costs associated with itTCP /UDP connection, predefined ports

Page 6: 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

Phone SideNetworking aspectsFinding 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

Page 7: 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

PeerfindingRegistrarService

Page 8: 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

Peerfinding

Broadcast AddressMessage hashed with md5

Page 9: 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

Peerfinding

Password matched, Connect

Page 10: 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

Phone SideTCP message commands after connection

establishedPredefined port on Computer Side, OS

assigns Phone side port

Page 11: 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

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.

Page 12: 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

ComputerSide (Interpreter)Python 2.6Console Application (GUI feature, cut)Maps internal commands to VLC commandsAccepts 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?

Page 13: 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

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

Page 14: 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

ComputerSide (Interpreter)Usage:

Page 15: 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

Problems found on Computer SideVLC 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.

Page 16: 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

CommandsLaunchPlayPauseStopNextRWDFFWPreviousVolume +/-Mute (VLC bugged)Full ScreenQuit

Page 17: 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

GUIKUIX library (

http://www.kalmeo.org/projects/kuix)Uses CSS to create dynamic UI

Page 18: 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

Outside sourceshttp://www.kalmeo.org/projects/kuixMd5 implementation for j2mehttp://mobilepit.com/10/compact-md5-class-

library-for-j2me-javame-app.html

Page 19: 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

Open Source!

This project is hosted by Google’s Project Hostinghttp://code.google.com/p/mobilerc/

MIT Licensed

Page 20: 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

Questions?