diff --git a/src/org/jitsi/impl/neomedia/MediaStreamImpl.java b/src/org/jitsi/impl/neomedia/MediaStreamImpl.java
index 07da5774087d76751b4ad72b693250cb426f21fb..6287c0b66c70ec71be032da9b9e3c22f331d101b 100644
--- a/src/org/jitsi/impl/neomedia/MediaStreamImpl.java
+++ b/src/org/jitsi/impl/neomedia/MediaStreamImpl.java
@@ -683,16 +683,6 @@ else if (dataSource instanceof PullDataSource)
 
                 if (getLocalSourceID() != localSSRC)
                     setLocalSourceID(localSSRC);
-
-                /*
-                 * If a ZRTP engine is available, then let it know about the
-                 * SSRC of the new SendStream. Currently, ZRTP supports only one
-                 * SSRC per engine.
-                 */
-                TransformEngine engine = srtpControl.getTransformEngine();
-
-                if ((engine != null) && (engine instanceof ZRTPTransformEngine))
-                    ((ZRTPTransformEngine)engine).setOwnSSRC(localSSRC);
             }
             catch (IOException ioe)
             {
@@ -2514,6 +2504,17 @@ protected void setLocalSourceID(long localSourceID)
 
             this.localSourceID = localSourceID;
 
+            /*
+             * If a ZRTP engine is available, then let it know about the
+             * SSRC of the new SendStream. Currently, ZRTP supports only one
+             * SSRC per engine.
+             */
+            TransformEngine engine = srtpControl.getTransformEngine();
+            if ((engine != null) && (engine instanceof ZRTPTransformEngine))
+            {
+                ((ZRTPTransformEngine)engine).setOwnSSRC(getLocalSourceID());
+            }
+
             firePropertyChange(PNAME_LOCAL_SSRC, oldValue, this.localSourceID);
         }
     }