Smart Media Network 1.0 week12 status Controller Team Server Team Device Team.

26
Smart Media Network 1.0 week12 status Controller Team Server Team Device Team
  • date post

    19-Dec-2015
  • Category

    Documents

  • view

    214
  • download

    0

Transcript of Smart Media Network 1.0 week12 status Controller Team Server Team Device Team.

Smart Media Network 1.0 week12 status

Controller Team

Server Team

Device Team

Controller / User Interfaces1. Discover / present media devices on the SMN network

• LDAP2. Provide an interface to the device controls

• Win32 / Borland C++ Builder3. Allow users to direct content from player to output devices

• SOAP4. Present the changing state of the network

• Devices entering or leaving• Device state changes (volume, track, etc…)

TWO UNIQUE TRACKSUniversal Remote InterfaceHuman Centered Interface

Universal Remote

Primary intent is to provide a remedial interface to ALL controls published by devices on the SMN network

Currently:• All devices (minus controllers) are

presented• All controls are presented (although only

Play, Stop and Volume have been published

• When “Play” is selected, the user chooses an output device from a list of devices accepting the stream type

• Device and control listings are refreshed every 10 seconds

Human Centered InterfacePrimary intent is to provide a hyper-usable interface to a select set of device and control types. Emphasis is on consistency of control between different devices. This controller will be usable in an eyes-free manner.

2 Part Interface:•Physical (TurboRing Trackball)•Visual (on-screen display)

Ring ALWAYS controls the volume•Quick swipes cclockwise mutes•Quick swipes clockwise restores volumeTrackball can…•Select a device•Move through tracks (CD, DVD…)•Change the station (TV, radio…)•Navigate media specific menus (DVD…)Button alternates the Play/Pause(Stop) state of devices

Controller Development

To date, most efforts have been toward developing the universal remote. This will guarantee a usable system.

Techniques used in the universal remote will be applied to the Human Centered Remote. Both are developed for the same platform with same development environment and net libraries.

While the Universal Remote is in a working state with only minimal technical obstacles remaining, the Human Centered Remote is still in its earliest stages (only a custom trackball/ring driver has been developed.

Server Team

• LDAP server based on OpenLDAP

• Can run on very minimal PC (Pentium I, 166Mhz, 64MB, 2GB)

• LDAP server modified to expire devices that do not re-register

• Open problem: how to do LDAP server discovery?

LDAP Schema

• Devices and Controllers register themselves, re-register frequently

• Devices publish their capabilities and controls

• Capabilities include supported classes of functionality and stream types supported

• Controllers publish the fact that they exist (for receiving event notifications)

Devices

• PLAYERS• Can generate a

stream• Controlled by

controllers using controls that the device publishes (some may have fixed semantics, some not)

• PRESENTERS• Can accept a stream

and render it in human-usable form (e.g. to a video monitor, to speakers)

• Can be controlled by a controller or by a player device

Device Team

• Audio: XMMS plugin (Icecast backend) to do Shoutcast streaming MP3

• Video: VideoLan MPEG-2 streams with Perl scripts to control interaction with SMN to spawn/kill clients, change controls

• Player/presenter architecture: when player receives a PLAY message it queries LDAP server then controls presenter with the controls it gets

Devices, cont’d

• Uses C++ for XMMS plug-in

• Testing GUI written in Python

• Videolan wrappers and device publishers written in Perl

• OS used is Linux: Redhat 7.3 and 8.0

Java Media Frame (JMF) In Pervasive and Mobile

computing

Window Media Player / JMF• Window Media Player (WMP)

• Stable, easy control• Longer initial time• Use Java.awt.Robot to simulate the control event • Difficult to update to new version / license issue

• JMF• Construct a player by our own • Easy control• Short initial time• Platform independent

• WMP and JMF can based on the same server and controller

System structure using JMF

Commands Commands

Commands

Media list

Media list

Server Player Remote Player

Controller

System structure and implementation

Controller design

General ideas:

• Select a poplar device as future controller

• Simple usage

• Ubiquitous access

• Extremely reliable

• Intuitive interaction

• Easy to upgrade

• Lower resource consumption

Streaming media between devices

• JMF Supports Real-Time Transport Protocol– Capture and transmit real-time video– Present media files remotely

• More available and more reliable by combining numerous devices, and using existing networking technology– Great future for pervasive and mobile

computing

Simple Media Networking Protocol (SMNP)

COMP7970

Pervasive and Mobile Computing

James Pate Williams, Jr.

SMNP

• Proprietary solution to home entertainment wire snarl problem

• Uses new line terminated strings over Transmission Control Protocol (TCP)

• System consists of a central server, controllers, and devices, a device can have multiple controllers

• A presentation device can be a controller/device hybrid

SMNP (Continued)

• The system was implemented using Java 2 Standard Edition (J2SE) and Java 4 Mobile Edition (J4ME)

• The system uses the Java Media Framework (JMF) and the Gracenote Compact Disc Database (CDDB) http://java.sun.com/products/java-media/jmf/ http://www.gracenote.com/developer/

• The current system consists of an AVI movie/WAV file consumer/producer pair, a CD device, a master volume (mixer) device, J2SE controllers, and J4ME controllers

SMNP J2SE Screen Shot

J4ME Mixer Device Controller

J4ME CD Device Controller

VCD SVCD DVD DV-C

Resoultion 352x240 480x480 720x480 720x480(NTSC)

Video MPEG1 MPEG2 MPEG1 or 2 DV

Compression 1150Kbit/sec 2524Kbit/sec up to 9.8Mbit/sec 25Mbit/sec

29.97 frames/sec 29.97 frames/sec 29.97 frames/sec 29.97 frames/sec

Audio MPEG1 MPEG1 MPEG1 DV

Compression 224Kbit/sec 224Kbit/sec ? ?

Total Bit Rate 1374Kbit/sec 2748Kbit/sec about 10Mbit/sec 36Mbit/sec

Quality Good Great Excellent Excellent

(include track information and etc.)

Type of Streams

Simulation Environments (using NS-2)

1

2

3

4

5

6

...

S D

BW : 100Mbit/sec

BW : 100Mbit/sec

Simulation Environments (cont’d)

VCD SVCD DVD DV-CBandWidth (BW)

(Propagation Delay)

All Links have 100Mbit/sec BW(100 ms)

Flow Type Full Duplex Flow(Drop-Tail – Sinks in Destination)

Packet Size(0.005 sec Interval)

940 bytes 1875 bytes 6250 bytes 22500 bytes

BW per Stream 1.5Mbit/sec 3Mbit/sec 10Mbit/sec 36Mbit/sec

# of Streams 3, 50, 51, 55 10, 25, 26, 27,28, 30

6, 7, 8, 10 2, 3, 5

Transport Protocol UDP with Constant Bit Rate (CBR)

Simulation Time Start : 10 sec, Stop 50 secTotal Simulation Time : 60 sec

0

10

20

30

40

50

60

1 2 3 4

Trials

# o

f Str

eam

s

0

5

10

15

20

25

30

35

1 2 3 4 5 6

Trials

# o

f S

tre

am

s

01

23

45

67

89

1 2 3 4

Trials

# o

f S

trea

ms

0

1

2

3

4

5

6

1 2 3

Trials

# o

f S

tre

am

s

VCD SVCD

DVD DV-C

Results # of Input Streams

# of Stable Streams

Summary of Evaluation

VCD SVCD DVD DV-CBW per Stream 1.5Mbit/sec 3Mbit/sec 10Mbit/sec 36Mbit/sec

Stream Includes Video + Audio Video + Audio + Track Info.+ Etc.

# of Input Streams 3, 50, 51, 55 10, 25, 26, 27,28, 30

6, 7, 8, 10 2, 3, 5

# of Stable Streams 50 25 7 2

This simulation does not consider error bit rate or else.