Jitsi: the OpenSource Java VoIP and Instant Messaging client.

net.java.sip.communicator.impl.neomedia.format
Class MediaFormatFactoryImpl

java.lang.Object
  extended by net.java.sip.communicator.impl.neomedia.format.MediaFormatFactoryImpl
All Implemented Interfaces:
MediaFormatFactory

public class MediaFormatFactoryImpl
extends Object
implements MediaFormatFactory

Implements MediaFormatFactory for the JMF Format types.

Author:
Lyubomir Marinov

Field Summary
 
Fields inherited from interface net.java.sip.communicator.service.neomedia.format.MediaFormatFactory
CHANNELS_NOT_SPECIFIED, CLOCK_RATE_NOT_SPECIFIED
 
Constructor Summary
MediaFormatFactoryImpl()
           
 
Method Summary
 MediaFormat createMediaFormat(byte rtpPayloadType)
          Creates a MediaFormat for the specified RTP payload type with default clock rate and set of format parameters.
 MediaFormat createMediaFormat(byte rtpPayloadType, String encoding, double clockRate, int channels, float frameRate, Map<String,String> formatParams, Map<String,String> advancedParams)
          Creates a MediaFormat either for the specified rtpPayloadType or for the specified encoding, clockRate, channels and set of format parameters.
 MediaFormat createMediaFormat(String encoding)
          Creates a MediaFormat for the specified encoding with default clock rate and set of format parameters.
 MediaFormat createMediaFormat(String encoding, double clockRate)
          Creates a MediaFormat for the specified encoding with the specified clockRate and a default set of format parameters.
 MediaFormat createMediaFormat(String encoding, double clockRate, int channels)
          Creates a MediaFormat for the specified encoding, clockRate and channels and a default set of format parameters.
 MediaFormat createMediaFormat(String encoding, double clockRate, int channels, float frameRate, Map<String,String> formatParams, Map<String,String> advancedParams)
          Creates a MediaFormat for the specified encoding, clockRate, channels and set of format parameters.
 MediaFormat createMediaFormat(String encoding, double clockRate, Map<String,String> formatParams, Map<String,String> advancedParams)
          Creates a MediaFormat for the specified encoding, clockRate and set of format parameters.
 MediaFormat createUnknownMediaFormat(MediaType type)
          Creates an unknown MediaFormat.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MediaFormatFactoryImpl

public MediaFormatFactoryImpl()
Method Detail

createUnknownMediaFormat

public MediaFormat createUnknownMediaFormat(MediaType type)
Creates an unknown MediaFormat.

Specified by:
createUnknownMediaFormat in interface MediaFormatFactory
Parameters:
type - MediaType
Returns:
unknown MediaFormat

createMediaFormat

public MediaFormat createMediaFormat(String encoding)
Creates a MediaFormat for the specified encoding with default clock rate and set of format parameters. If encoding is known to this MediaFormatFactory, returns a MediaFormat which is either an AudioMediaFormat or a VideoMediaFormat instance. Otherwise, returns null.

Specified by:
createMediaFormat in interface MediaFormatFactory
Parameters:
encoding - the well-known encoding (name) to create a MediaFormat for
Returns:
a MediaFormat with the specified encoding which is either an AudioMediaFormat or a VideoMediaFormat instance if encoding is known to this MediaFormatFactory; otherwise, null
See Also:
MediaFormatFactory.createMediaFormat(String)

createMediaFormat

public MediaFormat createMediaFormat(byte rtpPayloadType)
Creates a MediaFormat for the specified RTP payload type with default clock rate and set of format parameters. If rtpPayloadType is known to this MediaFormatFactory, returns a MediaFormat which is either an AudioMediaFormat or a VideoMediaFormat instance. Otherwise, returns null.

Specified by:
createMediaFormat in interface MediaFormatFactory
Parameters:
rtpPayloadType - the RTP payload type of the MediaFormat to create
Returns:
a MediaFormat with the specified rtpPayloadType which is either an AudioMediaFormat or a VideoMediaFormat instance if rtpPayloadType is known to this MediaFormatFactory; otherwise, null
See Also:
MediaFormatFactory.createMediaFormat(byte)

createMediaFormat

public MediaFormat createMediaFormat(String encoding,
                                     double clockRate)
Creates a MediaFormat for the specified encoding with the specified clockRate and a default set of format parameters. If encoding is known to this MediaFormatFactory, returns a MediaFormat which is either an AudioMediaFormat or a VideoMediaFormat instance. Otherwise, returns null.

Specified by:
createMediaFormat in interface MediaFormatFactory
Parameters:
encoding - the well-known encoding (name) to create a MediaFormat for
clockRate - the clock rate in Hz to create a MediaFormat for
Returns:
a MediaFormat with the specified encoding and clockRate which is either an AudioMediaFormat or a VideoMediaFormat instance if encoding is known to this MediaFormatFactory; otherwise, null
See Also:
MediaFormatFactory.createMediaFormat(String, double)

createMediaFormat

public MediaFormat createMediaFormat(String encoding,
                                     double clockRate,
                                     int channels)
Creates a MediaFormat for the specified encoding, clockRate and channels and a default set of format parameters. If encoding is known to this MediaFormatFactory, returns a MediaFormat which is either an AudioMediaFormat or a VideoMediaFormat instance. Otherwise, returns null.

Specified by:
createMediaFormat in interface MediaFormatFactory
Parameters:
encoding - the well-known encoding (name) to create a MediaFormat for
clockRate - the clock rate in Hz to create a MediaFormat for
channels - the number of available channels (1 for mono, 2 for stereo) if it makes sense for the MediaFormat with the specified encoding; otherwise, ignored
Returns:
a MediaFormat with the specified encoding, clockRate and channels and a default set of format parameters which is either an AudioMediaFormat or a VideoMediaFormat instance if encoding is known to this MediaFormatFactory; otherwise, null
See Also:
MediaFormatFactory.createMediaFormat(String, double, int)

createMediaFormat

public MediaFormat createMediaFormat(String encoding,
                                     double clockRate,
                                     Map<String,String> formatParams,
                                     Map<String,String> advancedParams)
Creates a MediaFormat for the specified encoding, clockRate and set of format parameters. If encoding is known to this MediaFormatFactory, returns a MediaFormat which is either an AudioMediaFormat or a VideoMediaFormat instance. Otherwise, returns null.

Specified by:
createMediaFormat in interface MediaFormatFactory
Parameters:
encoding - the well-known encoding (name) to create a MediaFormat for
clockRate - the clock rate in Hz to create a MediaFormat for
formatParams - any codec specific parameters which have been received via SIP/SDP or XMPP/Jingle
advancedParams - advanced attributes received via SIP/SDP or XMPP/Jingle
Returns:
a MediaFormat with the specified encoding, clockRate and set of format parameters which is either an AudioMediaFormat or a VideoMediaFormat instance if encoding is known to this MediaFormatFactory; otherwise, null
See Also:
MediaFormatFactory.createMediaFormat(String, double, Map, Map)

createMediaFormat

public MediaFormat createMediaFormat(String encoding,
                                     double clockRate,
                                     int channels,
                                     float frameRate,
                                     Map<String,String> formatParams,
                                     Map<String,String> advancedParams)
Creates a MediaFormat for the specified encoding, clockRate, channels and set of format parameters. If encoding is known to this MediaFormatFactory, returns a MediaFormat which is either an AudioMediaFormat or a VideoMediaFormat instance. Otherwise, returns null.

Specified by:
createMediaFormat in interface MediaFormatFactory
Parameters:
encoding - the well-known encoding (name) to create a MediaFormat for
clockRate - the clock rate in Hz to create a MediaFormat for
frameRate - the frame rate in number of frames per second to create a MediaFormat for
channels - the number of available channels (1 for mono, 2 for stereo) if it makes sense for the MediaFormat with the specified encoding; otherwise, ignored
formatParams - any codec specific parameters which have been received via SIP/SDP or XMPP/Jingle
advancedParams - any parameters which have been received via SIP/SDP or XMPP/Jingle
Returns:
a MediaFormat with the specified encoding, clockRate, channels and set of format parameters which is either an AudioMediaFormat or a VideoMediaFormat instance if encoding is known to this MediaFormatFactory; otherwise, null
See Also:
MediaFormatFactory.createMediaFormat(String, double, int, float, Map, Map)

createMediaFormat

public MediaFormat createMediaFormat(byte rtpPayloadType,
                                     String encoding,
                                     double clockRate,
                                     int channels,
                                     float frameRate,
                                     Map<String,String> formatParams,
                                     Map<String,String> advancedParams)
Creates a MediaFormat either for the specified rtpPayloadType or for the specified encoding, clockRate, channels and set of format parameters. If encoding is known to this MediaFormatFactory, ignores rtpPayloadType and returns a MediaFormat which is either an AudioMediaFormat or a VideoMediaFormat instance. If rtpPayloadType is not MediaFormat.RTP_PAYLOAD_TYPE_UNKNOWN and encoding is null, uses the encoding associated with rtpPayloadType.

Specified by:
createMediaFormat in interface MediaFormatFactory
Parameters:
rtpPayloadType - the RTP payload type to create a MediaFormat for; MediaFormat.RTP_PAYLOAD_TYPE_UNKNOWN if encoding is not null. If rtpPayloadType is not MediaFormat#RTP_PAYLOAD_TYPE_UNKNOWN and encoding is not null, rtpPayloadType is ignored
encoding - the well-known encoding (name) to create a MediaFormat for; null
clockRate - the clock rate in Hz to create a MediaFormat for
frameRate - the frame rate in number of frames per second to create a MediaFormat for
channels - the number of available channels (1 for mono, 2 for stereo) if it makes sense for the MediaFormat with the specified encoding; otherwise, ignored
formatParams - any codec specific parameters which have been received via SIP/SDP or XMPP/Jingle
advancedParams - any parameters which have been received via SIP/SDP or XMPP/Jingle
Returns:
a MediaFormat with the specified encoding, clockRate, channels and set of format parameters which is either an AudioMediaFormat or a VideoMediaFormat instance if encoding is known to this MediaFormatFactory; otherwise, null

Jitsi: the OpenSource Java VoIP and Instant Messaging client.

Jitsi, the OpenSource Java VoIP and Instant Messaging client.
Distributable under LGPL license.