diff --git a/src/org/jitsi/impl/neomedia/MediaStreamImpl.java b/src/org/jitsi/impl/neomedia/MediaStreamImpl.java index 6663033bf221a31671f92a71f6158e9670025e05..1acc13bedb57a862b3d7bf4a0afccd41c5c700d9 100644 --- a/src/org/jitsi/impl/neomedia/MediaStreamImpl.java +++ b/src/org/jitsi/impl/neomedia/MediaStreamImpl.java @@ -24,6 +24,7 @@ import org.jitsi.impl.neomedia.format.*; import org.jitsi.impl.neomedia.protocol.*; import org.jitsi.impl.neomedia.rtp.*; +import org.jitsi.impl.neomedia.rtp.translator.*; import org.jitsi.impl.neomedia.transform.*; import org.jitsi.impl.neomedia.transform.csrc.*; import org.jitsi.impl.neomedia.transform.dtmf.*; @@ -3214,9 +3215,12 @@ public void setSSRCFactory(SSRCFactory ssrcFactory) this.ssrcFactory = ssrcFactory; StreamRTPManager rtpManager = this.rtpManager; + RTPTranslator translator = rtpTranslator; if (rtpManager != null) rtpManager.setSSRCFactory(ssrcFactory); + else if (translator instanceof RTPTranslatorImpl) + ((RTPTranslatorImpl)translator).setSSRCFactory(ssrcFactory); } } diff --git a/src/org/jitsi/impl/neomedia/rtp/translator/RTPTranslatorImpl.java b/src/org/jitsi/impl/neomedia/rtp/translator/RTPTranslatorImpl.java index 036dbc5c11c26b19538f3161d84781a6376786dd..66d05ce05c73848e86e04b6bca813fc9195b8ad2 100644 --- a/src/org/jitsi/impl/neomedia/rtp/translator/RTPTranslatorImpl.java +++ b/src/org/jitsi/impl/neomedia/rtp/translator/RTPTranslatorImpl.java @@ -1046,4 +1046,24 @@ public boolean writeRTCPFeedbackMessage( rtcpFeedbackMessage, destination); } + + /** + * Sets the <tt>SSRCFactory</tt> which is to generate new synchronization + * source (SSRC) identifiers. + * + * @param ssrcFactory the <tt>SSRCFactory</tt> which is to generate new + * synchronization source (SSRC) identifiers or <tt>null</tt> if this + * <tt>MediaStream</tt> is to employ internal logic to generate new + * synchronization source (SSRC) identifiers + */ + public void setSSRCFactory(SSRCFactory ssrcFactory) + { + RTPManager manager = this.manager; + if (manager instanceof + org.jitsi.impl.neomedia.jmfext.media.rtp.RTPSessionMgr) + { + ((org.jitsi.impl.neomedia.jmfext.media.rtp.RTPSessionMgr)manager) + .setSSRCFactory(ssrcFactory); + } + } }