edu.virginia.cs.mng.hypercast.demo
Class MediaStreamer

java.lang.Object
  |
  +--edu.virginia.cs.mng.hypercast.demo.MediaStreamer

public class MediaStreamer
extends java.lang.Object

The MediaStreamer class multicasts media file(s) to a multicast overlay running on Hypercast overlay topology.


Field Summary
private  float bitRate
           
private static int DEFAULT_BITRATE
          Default streaming bitrate
private  java.lang.String fileName
           
private  int fileSeq
           
private  int loopNum
           
private static int MAX_BITRATE
          Default maxium bitrate
private  java.util.Hashtable mediaFileMap
          This is for sending multipul media files
private static int MIN_BITRATE
          Default minimum bitrate
private static int READBUFFERSIZE
          Default reading buffer size
private static int WAIT_TIME_TO_START
          Default WAIT_TIME_TO_START
private  int waitTimeToStart
           
 
Constructor Summary
(package private) MediaStreamer()
           
 
Method Summary
static void main(java.lang.String[] args)
           
 boolean sendFile(java.lang.String fname, float brate, I_OverlaySocket sock)
          Send a file to the multicast overlay
 long sleepTimeFromBitrate(float brate, int sendbuffersize)
          Calculate sleep time between sending packages from a given bitrate
 void start(java.lang.String[] args)
          Start MediaStreamer.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

DEFAULT_BITRATE

private static int DEFAULT_BITRATE
Default streaming bitrate

READBUFFERSIZE

private static int READBUFFERSIZE
Default reading buffer size

MIN_BITRATE

private static int MIN_BITRATE
Default minimum bitrate

MAX_BITRATE

private static int MAX_BITRATE
Default maxium bitrate

WAIT_TIME_TO_START

private static int WAIT_TIME_TO_START
Default WAIT_TIME_TO_START

waitTimeToStart

private int waitTimeToStart

mediaFileMap

private java.util.Hashtable mediaFileMap
This is for sending multipul media files

fileSeq

private int fileSeq

fileName

private java.lang.String fileName

bitRate

private float bitRate

loopNum

private int loopNum
Constructor Detail

MediaStreamer

MediaStreamer()
Method Detail

main

public static void main(java.lang.String[] args)

start

public void start(java.lang.String[] args)
Start MediaStreamer.

sleepTimeFromBitrate

public long sleepTimeFromBitrate(float brate,
                                 int sendbuffersize)
Calculate sleep time between sending packages from a given bitrate
Parameters:
brate - sending bitrate
sendbuffersize - the size of the buffer which holds outgoing stream
Returns:
sleep time between

sendFile

public boolean sendFile(java.lang.String fname,
                        float brate,
                        I_OverlaySocket sock)
Send a file to the multicast overlay
Parameters:
fname - the name of the media file
brate - the sending bitrate in kbits/s
sock - the outgoing socket