Class SsrcTransformEngine
- java.lang.Object
-
- org.jitsi.impl.neomedia.transform.SinglePacketTransformer
-
- org.jitsi.impl.neomedia.transform.SinglePacketTransformerAdapter
-
- org.jitsi.impl.neomedia.transform.csrc.SsrcTransformEngine
-
- All Implemented Interfaces:
PacketTransformer,TransformEngine
public class SsrcTransformEngine extends SinglePacketTransformerAdapter implements TransformEngine
Implements read-only support for "A Real-Time Transport Protocol (RTP) Header Extension for Client-to-Mixer Audio Level Indication". Optionally, drops RTP packets indicated to be generated from a muted audio source in order to avoid wasting processing power such as decrypting, decoding and audio mixing.- Author:
- Emil Ivov, Lyubomir Marinov
-
-
Field Summary
Fields Modifier and Type Field Description static StringDROP_MUTED_AUDIO_SOURCE_IN_REVERSE_TRANSFORMThe name of the ConfigurationService property which specifies whether SsrcTransformEngine is to drop RTP packets indicated as generated from a muted audio source inreverseTransform(RawPacket).
-
Constructor Summary
Constructors Constructor Description SsrcTransformEngine(MediaStreamImpl mediaStream)Initializes a new SsrcTransformEngine to be utilized by a specific MediaStreamImpl.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Closes this PacketTransformer i.e.PacketTransformergetRTCPTransformer()Always returns null since this engine does not require any RTCP transformations.PacketTransformergetRTPTransformer()Returns a reference to this class since it is performing RTP transformations in here.RawPacketreverseTransform(RawPacket pkt)Extracts the list of CSRC identifiers and passes it to the MediaStream associated with this engine.voidsetSsrcAudioLevelExtensionID(byte extID, MediaDirection dir)-
Methods inherited from class org.jitsi.impl.neomedia.transform.SinglePacketTransformerAdapter
transform
-
Methods inherited from class org.jitsi.impl.neomedia.transform.SinglePacketTransformer
reverseTransform, transform
-
-
-
-
Field Detail
-
DROP_MUTED_AUDIO_SOURCE_IN_REVERSE_TRANSFORM
public static final String DROP_MUTED_AUDIO_SOURCE_IN_REVERSE_TRANSFORM
The name of the ConfigurationService property which specifies whether SsrcTransformEngine is to drop RTP packets indicated as generated from a muted audio source inreverseTransform(RawPacket).
-
-
Constructor Detail
-
SsrcTransformEngine
public SsrcTransformEngine(MediaStreamImpl mediaStream)
Initializes a new SsrcTransformEngine to be utilized by a specific MediaStreamImpl.- Parameters:
mediaStream- the MediaStreamImpl to utilize the new instance
-
-
Method Detail
-
close
public void close()
Closes this PacketTransformer i.e. releases the resources allocated by it and prepares it for garbage collection.- Specified by:
closein interfacePacketTransformer- Overrides:
closein classSinglePacketTransformer
-
getRTCPTransformer
public PacketTransformer getRTCPTransformer()
Always returns null since this engine does not require any RTCP transformations.- Specified by:
getRTCPTransformerin interfaceTransformEngine- Returns:
- null since this engine does not require any RTCP transformations.
-
getRTPTransformer
public PacketTransformer getRTPTransformer()
Returns a reference to this class since it is performing RTP transformations in here.- Specified by:
getRTPTransformerin interfaceTransformEngine- Returns:
- a reference to this instance of the SsrcTransformEngine.
-
reverseTransform
public RawPacket reverseTransform(RawPacket pkt)
Extracts the list of CSRC identifiers and passes it to the MediaStream associated with this engine. Other than that the method does not do any transformations since CSRC lists are part of RFC 3550 and they shouldn't be disrupting the rest of the application.- Overrides:
reverseTransformin classSinglePacketTransformerAdapter- Parameters:
pkt- the RTP RawPacket that we are to extract a SSRC list from.- Returns:
- the same RawPacket that was received as a parameter since we don't need to worry about hiding the SSRC list from the rest of the RTP stack.
-
setSsrcAudioLevelExtensionID
public void setSsrcAudioLevelExtensionID(byte extID, MediaDirection dir)
-
-