13
Distributed Media Player Students: Ran Margolin & Dan Waxman Supervisor: Ittay Eyal

D istributed M edia P layer

  • Upload
    andie

  • View
    25

  • Download
    0

Embed Size (px)

DESCRIPTION

Students: Ran Margolin & Dan Waxman Supervisor: Ittay Eyal. D istributed M edia P layer. Project Objective. Theory - Log. Synchronized Log - identical behavior. Read/Execute. Read/Execute. Log Play PauseStop PausePlay Stop. Log Play PauseStop PausePlay Stop. Synced. Issue. - PowerPoint PPT Presentation

Citation preview

Page 1: D istributed  M edia  P layer

Distributed Media Player

Students:Ran Margolin & Dan Waxman

Supervisor:Ittay Eyal

Page 2: D istributed  M edia  P layer

Project Objective

Page 3: D istributed  M edia  P layer

Theory - Log Synchronized Log - identical behavior.

Log1. Play2. PauseStop3. PausePlay4. Stop

Log1. Play2. PauseStop3. PausePlay4. Stop

Synced

Read/Execute Read/Execute

IssueIssueBroadcast Broadcast

Page 4: D istributed  M edia  P layer

Theory – NCT (Network Clock Time) Commands executed

synchronously.

Log1. 11:03 - Play2. 11:07 -

PauseStop3. 11:12 -

PausePlay4. 11:13 - Stop

Synced

Read/Execute Read/Execute

IssueIssueBroadcast Broadcast

SynchronizedCurrent Time (11:12)

Log1. 11:03 - Play2. 11:07 -

PauseStop3. 11:12 -

PausePlay4. 11:13 - Stop

Current Time (11:12)

Page 5: D istributed  M edia  P layer

Network Structure Identical privileges and

control.

Synchronization via broadcast messages & peer2peer exchange.

Page 6: D istributed  M edia  P layer

Software Design - Structure

User pressesplayBroadcast command + retrieve

song

Using Database, retrieve song from

hard drive

Play Song + update

GUI

Presentation Tier

Logic Tier

Data Tier

Page 7: D istributed  M edia  P layer

Software Design - Modules

DMPControll

er

Neighbor

List Song List

Media

PlayerLo

gListe

n Serve

r

NCTControll

er

Neighbor

List

Listen

Server

Clock

GUI

Page 8: D istributed  M edia  P layer

Software Design – Design Patterns Observer –

Sub modules inherit java.util.Observable Core modules implement

java.util.Observer. Decorator – Used in GUI.

Implemented using Swing library.

Page 9: D istributed  M edia  P layer

Software Design – Technologies JAVA Song library maintained using

MySQL Media files played using Java

Media Framework

Page 10: D istributed  M edia  P layer

Software Design – Data Types Used TreeSet – Inner implementation of

NeighborList. (log[n])

ArrayList – SongList transfer.

MySQL – Song library data (SongList).

Page 11: D istributed  M edia  P layer

Software Design – Inheritance/ Interface

Interface Serializable- Transfer of data between users.

Interface Observer/Class Obervable – Monitor & update changes between modules.

Interface Comparable- Facilitate comparison in data structures.

Page 12: D istributed  M edia  P layer

Problems JMF non real-time oriented

Workaround: Heuristic algorithms (partial results)

Playback rate varies according to CPU workload

Page 13: D istributed  M edia  P layer

The End