sdp.Media Maven / Gradle / Ivy
/*
* Media.java
*
* Created on December 19, 2001, 10:28 AM
*/
package javax.sdp;
import java.util.*;
/** A Media represents an m= field contained within a MediaDescription. The Media
* identifies information about the format(s) of the
* media associated with the MediaDescription.
*
* The Media field includes:
*
* a mediaType (e.g. audio, video, etc.)
* a port number (or set of ports)
* a protocol to be used (e.g. RTP/AVP)
* a set of media formats which correspond to Attributes associated with the
* media description.
*
* Here is an example:
*
* m=audio 60000 RTP/AVP 0
* a=rtpmap:0 PCMU/8000
*
* This example identifies that the client can receive audio on port 60000 in
* format 0 which corresponds to PCMU/8000.
*
* Please refer to IETF RFC 2327 for a description of SDP.
*
* @author deruelle
* @version 1.0
*/
public interface Media extends Field {
/** Returns the type (audio,video etc) of the media defined by this description.
* @throws SdpParseException
* @return the string media type.
*/
public String getMediaType()
throws SdpParseException;
/** Sets the type (audio,video etc) of the media defined by this description.
* @param mediaType to set
* @throws SdpException if mediaType is null
*/
public void setMediaType(String mediaType)
throws SdpException;
/** Returns the port of the media defined by this description
* @throws SdpParseException
* @return the integer media port.
*/
public int getMediaPort()
throws SdpParseException;
/** Sets the port of the media defined by this description
* @param port to set
* @throws SdpException
*/
public void setMediaPort(int port)
throws SdpException;
/** Returns the number of ports associated with this media description
* @throws SdpParseException
* @return the integer port count.
*/
public int getPortCount()
throws SdpParseException;
/** Sets the number of ports associated with this media description.
* @param portCount portCount - the integer port count.
* @throws SdpException
*/
public void setPortCount(int portCount)
throws SdpException;
/** Returns the protocol over which this media should be transmitted.
* @throws SdpParseException
* @return the String protocol, e.g. RTP/AVP.
*/
public String getProtocol()
throws SdpParseException;
/** Sets the protocol over which this media should be transmitted.
* @param protocol - the String protocol, e.g. RTP/AVP.
* @throws SdpException if the protocol is null
*/
public void setProtocol(String protocol)
throws SdpException;
/** Returns an Vector of the media formats supported by this description.
* Each element in this Vector will be an String value which matches one of
* the a=rtpmap: attribute fields of the media description.
* @param create to set
* @throws SdpException
* @return the Vector.
*/
public Vector getMediaFormats(boolean create)
throws SdpParseException;
/** Adds a media format to the media description.
* Each element in this Vector should be an String value which matches one of the
* a=rtpmap: attribute fields of the media description.
* @param mediaFormats the format to add.
* @throws SdpException if the vector is null
*/
public void setMediaFormats(Vector mediaFormats)
throws SdpException;
/** Generates a string description of this object.
* @return the description.
*/
public String toString();
}