diff --git a/src/net/java/sip/communicator/service/neomedia/MediaService.java b/src/net/java/sip/communicator/service/neomedia/MediaService.java
index b1e2a8e63..78efbaa0c 100644
--- a/src/net/java/sip/communicator/service/neomedia/MediaService.java
+++ b/src/net/java/sip/communicator/service/neomedia/MediaService.java
@@ -35,7 +35,8 @@ public interface MediaService
* Returns a list containing all devices known to this service
* implementation and handling the specified MediaType.
*
- * @param mediaType the media type that
+ * @param mediaType the media type (i.e. AUDIO or VIDEO) that we'd like
+ * to obtain the device list for.
*
* @return the list of MediaDevices currently known to handle the
* specified mediaType.
@@ -45,10 +46,13 @@ public interface MediaService
/**
* Creates a MediaStream that will be using the specified
* MediaDevice for both capture and playback of media exchanged
+ * via the specified connector.
*
- * @return
+ * @param the connector that the stream should use for sending and receiving
+ * media.
+ *
+ * @return the newly created MediaStream.
*/
- public MediaStream createMediaStream();
-
-
+ public MediaStream createMediaStream(StreamConnector connector,
+ MediaDevice device);
}
diff --git a/src/net/java/sip/communicator/service/neomedia/MediaStream.java b/src/net/java/sip/communicator/service/neomedia/MediaStream.java
index dfb3f87a0..26bcaab67 100644
--- a/src/net/java/sip/communicator/service/neomedia/MediaStream.java
+++ b/src/net/java/sip/communicator/service/neomedia/MediaStream.java
@@ -6,6 +6,11 @@
*/
package net.java.sip.communicator.service.neomedia;
+import java.net.*;
+
+import net.java.sip.communicator.service.neomedia.device.*;
+import net.java.sip.communicator.service.neomedia.format.*;
+
/**
* The MediaStream class represents a (generally) bidirectional RTP
* stream between exactly two parties. The class reflects one media stream, in
@@ -52,4 +57,107 @@ public interface MediaStream
*/
public static final String DISABLE_VIDEO_SUPPORT_PROPERTY_NAME
= "net.java.sip.communicator.service.media.DISABLE_VIDEO_SUPPORT";
+
+ /**
+ * Starts capturing media from this stream's MediaDevice and then
+ * streaming it through the local StreamConnector toward the
+ * stream's target address and port. The method also puts the
+ * MediaStream in a listening state that would make it play all
+ * media received from the StreamConnector on the stream's
+ * MediaDevice.
+ */
+ public void start();
+
+ /**
+ * Stops all streaming and capturing in this MediaStream and closes
+ * and releases all open/allocated devices/resources. This method has no
+ * effect on an already closed stream and is simply ignored.
+ */
+ public void stop();
+
+ /**
+ * Sets the MediaFormat that this MediaStream should be
+ * transmitting in.
+ *
+ * @param fmt the MediaFormat that this MediaStream should
+ * be transmitting in.
+ */
+ public void setFormat(MediaFormat fmt);
+
+ /**
+ * Returns the MediaFormat that this stream is currently
+ * transmitting in.
+ *
+ * @return the MediaFormat that this stream is currently
+ * transmitting in.
+ */
+ public MediaFormat getFormat();
+
+ public void setDevice(MediaDevice device);
+
+ public MediaDevice getDevice();
+
+ public String getRemoteSourceID();
+
+ public String getLocalSourceID();
+
+ public InetSocketAddress getRemoteControlAddress();
+
+ public InetSocketAddress getRemoteDataAddress();
}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+