diff --git a/src/net/java/sip/communicator/impl/neomedia/codec/audio/g722/JNIDecoder.java b/src/net/java/sip/communicator/impl/neomedia/codec/audio/g722/JNIDecoder.java
index a0c9067a0382e5d496d67392d933db4ef9118ff1..e4e3e5a4d02a8702976e09ea2d4baa6cc35f8cba 100644
--- a/src/net/java/sip/communicator/impl/neomedia/codec/audio/g722/JNIDecoder.java
+++ b/src/net/java/sip/communicator/impl/neomedia/codec/audio/g722/JNIDecoder.java
@@ -10,6 +10,7 @@
 import javax.media.format.*;
 
 import org.jitsi.impl.neomedia.codec.*;
+import org.jitsi.service.neomedia.codec.*;
 
 /**
  *
diff --git a/src/org/jitsi/impl/neomedia/AudioMediaStreamImpl.java b/src/org/jitsi/impl/neomedia/AudioMediaStreamImpl.java
index ad50819b1f002767bd2fab976271200c2f789cae..b6bef4cf266df9df5b162c445c05c69c5d4ab8d1 100644
--- a/src/org/jitsi/impl/neomedia/AudioMediaStreamImpl.java
+++ b/src/org/jitsi/impl/neomedia/AudioMediaStreamImpl.java
@@ -12,12 +12,12 @@
 import javax.media.control.*;
 import javax.media.format.*;
 
-import org.jitsi.impl.neomedia.codec.*;
 import org.jitsi.impl.neomedia.device.*;
 import org.jitsi.impl.neomedia.transform.dtmf.*;
 import org.jitsi.service.configuration.*;
 import org.jitsi.service.libjitsi.*;
 import org.jitsi.service.neomedia.*;
+import org.jitsi.service.neomedia.codec.*;
 import org.jitsi.service.neomedia.device.*;
 import org.jitsi.service.neomedia.event.*;
 import org.jitsi.service.protocol.*;
diff --git a/src/org/jitsi/impl/neomedia/MediaUtils.java b/src/org/jitsi/impl/neomedia/MediaUtils.java
index 1bd431b04c7210577bdb61dc466126e9c0fc1d1b..3b539b9b5135844d78a9ead7fa9e6e7a6a93cc8d 100644
--- a/src/org/jitsi/impl/neomedia/MediaUtils.java
+++ b/src/org/jitsi/impl/neomedia/MediaUtils.java
@@ -19,6 +19,7 @@
 import org.jitsi.service.configuration.*;
 import org.jitsi.service.libjitsi.*;
 import org.jitsi.service.neomedia.*;
+import org.jitsi.service.neomedia.codec.*;
 import org.jitsi.service.neomedia.device.*;
 import org.jitsi.service.neomedia.format.*;
 import org.jitsi.util.*;
diff --git a/src/org/jitsi/impl/neomedia/codec/audio/alaw/DePacketizer.java b/src/org/jitsi/impl/neomedia/codec/audio/alaw/DePacketizer.java
index df03ddac776a7c0ca50e7a1e421cc38f3a56de45..e9c5cd35e77c9bc13f93aa78c5e5695e8fcb9bc5 100644
--- a/src/org/jitsi/impl/neomedia/codec/audio/alaw/DePacketizer.java
+++ b/src/org/jitsi/impl/neomedia/codec/audio/alaw/DePacketizer.java
@@ -9,9 +9,8 @@
 import javax.media.*;
 import javax.media.format.*;
 
-import org.jitsi.impl.neomedia.codec.*;
-
 import com.sun.media.codec.audio.*;
+import org.jitsi.service.neomedia.codec.*;
 
 /**
  * DePacketizer for ALAW codec
diff --git a/src/org/jitsi/impl/neomedia/codec/audio/alaw/Packetizer.java b/src/org/jitsi/impl/neomedia/codec/audio/alaw/Packetizer.java
index d725e7d11b49f8dd1cf9aaaa19a30b9614d0b65c..540e32734a5483f314b471594b0624cafed56ea5 100644
--- a/src/org/jitsi/impl/neomedia/codec/audio/alaw/Packetizer.java
+++ b/src/org/jitsi/impl/neomedia/codec/audio/alaw/Packetizer.java
@@ -9,7 +9,7 @@
 import javax.media.*;
 import javax.media.format.*;
 
-import org.jitsi.impl.neomedia.codec.*;
+import org.jitsi.service.neomedia.codec.*;
 
 /**
  * Implements an RTP packetizer for the A-law codec.
diff --git a/src/org/jitsi/impl/neomedia/codec/audio/ilbc/JavaDecoder.java b/src/org/jitsi/impl/neomedia/codec/audio/ilbc/JavaDecoder.java
index 7809b82522964068fc0096ff8ad7995d12d55a36..c53e8c05807fec22b1a41964e817361ff14811bc 100644
--- a/src/org/jitsi/impl/neomedia/codec/audio/ilbc/JavaDecoder.java
+++ b/src/org/jitsi/impl/neomedia/codec/audio/ilbc/JavaDecoder.java
@@ -12,6 +12,7 @@
 import javax.media.format.*;
 
 import org.jitsi.impl.neomedia.codec.*;
+import org.jitsi.service.neomedia.codec.*;
 
 /**
  * Implements an iLBC decoder and RTP depacketizer as a {@link Codec}.
diff --git a/src/org/jitsi/impl/neomedia/codec/audio/ilbc/JavaEncoder.java b/src/org/jitsi/impl/neomedia/codec/audio/ilbc/JavaEncoder.java
index d5fbfb537a051c9d993345ca36fe18b0606c8dad..d0db70696b6d1127298d4308d123ee2a8805d84b 100644
--- a/src/org/jitsi/impl/neomedia/codec/audio/ilbc/JavaEncoder.java
+++ b/src/org/jitsi/impl/neomedia/codec/audio/ilbc/JavaEncoder.java
@@ -10,6 +10,7 @@
 import javax.media.format.*;
 
 import org.jitsi.impl.neomedia.codec.*;
+import org.jitsi.service.neomedia.codec.*;
 
 /**
  * Implements an iLBC encoder and RTP packetizer as a {@link Codec}.
diff --git a/src/org/jitsi/impl/neomedia/codec/audio/opus/JNIDecoder.java b/src/org/jitsi/impl/neomedia/codec/audio/opus/JNIDecoder.java
index 9f156a30f25d62c82f3adb4643e9f07894f01da5..1af80796104668b22a8da607f45774cba25b225a 100644
--- a/src/org/jitsi/impl/neomedia/codec/audio/opus/JNIDecoder.java
+++ b/src/org/jitsi/impl/neomedia/codec/audio/opus/JNIDecoder.java
@@ -11,6 +11,7 @@
 
 import net.sf.fmj.media.*;
 import org.jitsi.impl.neomedia.codec.*;
+import org.jitsi.service.neomedia.codec.*;
 
 /**
  * Implements an Opus decoder.
diff --git a/src/org/jitsi/impl/neomedia/codec/audio/opus/JNIEncoder.java b/src/org/jitsi/impl/neomedia/codec/audio/opus/JNIEncoder.java
index db790ec27fc2f151b5c1fae63e4ee730fbe5153e..9006edd44f4b40bd395e4c74f83b511c582875b1 100644
--- a/src/org/jitsi/impl/neomedia/codec/audio/opus/JNIEncoder.java
+++ b/src/org/jitsi/impl/neomedia/codec/audio/opus/JNIEncoder.java
@@ -10,6 +10,7 @@
 import javax.media.format.*;
 import net.sf.fmj.media.*;
 import org.jitsi.impl.neomedia.codec.*;
+import org.jitsi.service.neomedia.codec.*;
 
 /**
  * Implements an opus encoder.
diff --git a/src/org/jitsi/impl/neomedia/codec/audio/silk/JavaEncoder.java b/src/org/jitsi/impl/neomedia/codec/audio/silk/JavaEncoder.java
index 0cd38b228096be32be66663527a213a7536b15a4..3343af07588214585d232fc62c61551b921b159e 100644
--- a/src/org/jitsi/impl/neomedia/codec/audio/silk/JavaEncoder.java
+++ b/src/org/jitsi/impl/neomedia/codec/audio/silk/JavaEncoder.java
@@ -12,6 +12,7 @@
 import org.jitsi.impl.neomedia.codec.*;
 import org.jitsi.service.configuration.*;
 import org.jitsi.service.libjitsi.*;
+import org.jitsi.service.neomedia.codec.*;
 
 /**
  * Implements the SILK encoder as an FMJ/JMF <tt>Codec</tt>.
diff --git a/src/org/jitsi/impl/neomedia/codec/audio/speex/JNIDecoder.java b/src/org/jitsi/impl/neomedia/codec/audio/speex/JNIDecoder.java
index c43bfa668e07310cee7b0545dc4ceaba9fad05bc..3eb1df201dd2265ede46b999be42972942c99452 100644
--- a/src/org/jitsi/impl/neomedia/codec/audio/speex/JNIDecoder.java
+++ b/src/org/jitsi/impl/neomedia/codec/audio/speex/JNIDecoder.java
@@ -13,6 +13,7 @@
 import net.sf.fmj.media.*;
 
 import org.jitsi.impl.neomedia.codec.*;
+import org.jitsi.service.neomedia.codec.*;
 
 /**
  * Implements a Speex decoder and RTP depacketizer using the native Speex
diff --git a/src/org/jitsi/impl/neomedia/codec/audio/speex/JNIEncoder.java b/src/org/jitsi/impl/neomedia/codec/audio/speex/JNIEncoder.java
index c9ae3b6d550e7c5827d687dc31ab0496296464be..cde62c40dc65d84837f72ea1fbbf8dfb74d33774 100644
--- a/src/org/jitsi/impl/neomedia/codec/audio/speex/JNIEncoder.java
+++ b/src/org/jitsi/impl/neomedia/codec/audio/speex/JNIEncoder.java
@@ -13,6 +13,7 @@
 import net.sf.fmj.media.*;
 
 import org.jitsi.impl.neomedia.codec.*;
+import org.jitsi.service.neomedia.codec.*;
 
 /**
  * Implements a Speex encoder and RTP packetizer using the native Speex library.
diff --git a/src/org/jitsi/impl/neomedia/codec/audio/speex/JavaDecoder.java b/src/org/jitsi/impl/neomedia/codec/audio/speex/JavaDecoder.java
index 3d9883ee005bee64d69f5aed78b0a077e3f22b5c..79bd1a73b8f5a32f5e7e32a6f6eb6cecd6bfa456 100644
--- a/src/org/jitsi/impl/neomedia/codec/audio/speex/JavaDecoder.java
+++ b/src/org/jitsi/impl/neomedia/codec/audio/speex/JavaDecoder.java
@@ -14,6 +14,7 @@
 import net.sf.fmj.media.*;
 
 import org.jitsi.impl.neomedia.codec.*;
+import org.jitsi.service.neomedia.codec.*;
 import org.xiph.speex.*;
 
 /**
diff --git a/src/org/jitsi/impl/neomedia/codec/audio/speex/JavaEncoder.java b/src/org/jitsi/impl/neomedia/codec/audio/speex/JavaEncoder.java
index 220f969a9c1507cd3c86c2e9f1d1ebfd8d48bef2..a87323a0181c83718c2ee3bd22e8b9c89a474d90 100644
--- a/src/org/jitsi/impl/neomedia/codec/audio/speex/JavaEncoder.java
+++ b/src/org/jitsi/impl/neomedia/codec/audio/speex/JavaEncoder.java
@@ -12,6 +12,7 @@
 import net.sf.fmj.media.*;
 
 import org.jitsi.impl.neomedia.codec.*;
+import org.jitsi.service.neomedia.codec.*;
 import org.xiph.speex.*;
 
 /**
diff --git a/src/org/jitsi/impl/neomedia/codec/video/h263p/DePacketizer.java b/src/org/jitsi/impl/neomedia/codec/video/h263p/DePacketizer.java
index 3929e76325138ac4189ebbc3d3c8eb926a3883db..b120b39cdf4a10abe1bd01fda14c286e46c1840a 100644
--- a/src/org/jitsi/impl/neomedia/codec/video/h263p/DePacketizer.java
+++ b/src/org/jitsi/impl/neomedia/codec/video/h263p/DePacketizer.java
@@ -15,6 +15,7 @@
 import net.sf.fmj.media.*;
 
 import org.jitsi.impl.neomedia.codec.*;
+import org.jitsi.service.neomedia.codec.*;
 import org.jitsi.util.*;
 
 /**
diff --git a/src/org/jitsi/impl/neomedia/codec/video/h263p/JNIDecoder.java b/src/org/jitsi/impl/neomedia/codec/video/h263p/JNIDecoder.java
index cd773f4ecd2208a4e32b3b2a74fabe4b2f11e8c6..37e92f914abe7f10292d747542aa60259e9a880e 100644
--- a/src/org/jitsi/impl/neomedia/codec/video/h263p/JNIDecoder.java
+++ b/src/org/jitsi/impl/neomedia/codec/video/h263p/JNIDecoder.java
@@ -16,6 +16,7 @@
 
 import org.jitsi.impl.neomedia.codec.*;
 import org.jitsi.impl.neomedia.codec.video.*;
+import org.jitsi.service.neomedia.codec.*;
 
 /**
  * Implements a H.263+ decoder.
diff --git a/src/org/jitsi/impl/neomedia/codec/video/h263p/JNIEncoder.java b/src/org/jitsi/impl/neomedia/codec/video/h263p/JNIEncoder.java
index 2cad668d17c75d74dbab27469a1980556cab5fbf..2c89773f712e6ed8fa2cab254e554120ec33692a 100644
--- a/src/org/jitsi/impl/neomedia/codec/video/h263p/JNIEncoder.java
+++ b/src/org/jitsi/impl/neomedia/codec/video/h263p/JNIEncoder.java
@@ -15,6 +15,7 @@
 import net.sf.fmj.media.*;
 
 import org.jitsi.impl.neomedia.codec.*;
+import org.jitsi.service.neomedia.codec.*;
 
 /**
  * Implements a H.263+ encoder.
diff --git a/src/org/jitsi/impl/neomedia/codec/video/h263p/Packetizer.java b/src/org/jitsi/impl/neomedia/codec/video/h263p/Packetizer.java
index 31260b438ae761e036c116f112b40bc7a54f29dd..6f490cceeb75967be4093170cc7a7a326a763d31 100644
--- a/src/org/jitsi/impl/neomedia/codec/video/h263p/Packetizer.java
+++ b/src/org/jitsi/impl/neomedia/codec/video/h263p/Packetizer.java
@@ -16,6 +16,7 @@
 import net.sf.fmj.media.*;
 
 import org.jitsi.impl.neomedia.codec.*;
+import org.jitsi.service.neomedia.codec.*;
 // disambiguation
 
 /**
diff --git a/src/org/jitsi/impl/neomedia/codec/video/h264/DePacketizer.java b/src/org/jitsi/impl/neomedia/codec/video/h264/DePacketizer.java
index 6458283db7a66ef87071629bbbe8208a07b60251..b00e15434282309d786b051692513b8d8558059e 100644
--- a/src/org/jitsi/impl/neomedia/codec/video/h264/DePacketizer.java
+++ b/src/org/jitsi/impl/neomedia/codec/video/h264/DePacketizer.java
@@ -15,6 +15,7 @@
 import net.sf.fmj.media.*;
 
 import org.jitsi.impl.neomedia.codec.*;
+import org.jitsi.service.neomedia.codec.*;
 import org.jitsi.service.neomedia.control.*;
 import org.jitsi.util.*;
 
diff --git a/src/org/jitsi/impl/neomedia/codec/video/h264/JNIDecoder.java b/src/org/jitsi/impl/neomedia/codec/video/h264/JNIDecoder.java
index 0a1e3f90ca13e6e3d12f4e0ae2665e26477558de..8df250968f0669a5a689b2f898cf145bd62ad775 100644
--- a/src/org/jitsi/impl/neomedia/codec/video/h264/JNIDecoder.java
+++ b/src/org/jitsi/impl/neomedia/codec/video/h264/JNIDecoder.java
@@ -16,6 +16,7 @@
 
 import org.jitsi.impl.neomedia.codec.*;
 import org.jitsi.impl.neomedia.codec.video.*;
+import org.jitsi.service.neomedia.codec.*;
 import org.jitsi.service.neomedia.control.*;
 
 /**
diff --git a/src/org/jitsi/impl/neomedia/codec/video/h264/JNIEncoder.java b/src/org/jitsi/impl/neomedia/codec/video/h264/JNIEncoder.java
index 4062191fb88861795b40d5300d7724b6e91af9f2..f71b1cda219dd6e9a56ede410091158a979eea69 100644
--- a/src/org/jitsi/impl/neomedia/codec/video/h264/JNIEncoder.java
+++ b/src/org/jitsi/impl/neomedia/codec/video/h264/JNIEncoder.java
@@ -19,6 +19,7 @@
 import org.jitsi.impl.neomedia.format.*;
 import org.jitsi.service.configuration.*;
 import org.jitsi.service.libjitsi.*;
+import org.jitsi.service.neomedia.codec.*;
 import org.jitsi.service.neomedia.control.*;
 import org.jitsi.service.neomedia.event.*;
 import org.jitsi.util.*;
diff --git a/src/org/jitsi/impl/neomedia/codec/video/h264/Packetizer.java b/src/org/jitsi/impl/neomedia/codec/video/h264/Packetizer.java
index 5c5978c98720997e917653f190efa6982c312b25..0c914511726b78dc54079004fd07cd2d9b41ee62 100644
--- a/src/org/jitsi/impl/neomedia/codec/video/h264/Packetizer.java
+++ b/src/org/jitsi/impl/neomedia/codec/video/h264/Packetizer.java
@@ -17,6 +17,7 @@
 
 import org.jitsi.impl.neomedia.codec.*;
 import org.jitsi.impl.neomedia.format.*;
+import org.jitsi.service.neomedia.codec.*;
 // disambiguation
 
 /**
diff --git a/src/org/jitsi/impl/neomedia/device/DeviceConfiguration.java b/src/org/jitsi/impl/neomedia/device/DeviceConfiguration.java
index 5affd454f3938ee20ab83ac6f235344e37acaf24..bba9a8a5f9660e5639191115d9b51f3da2738f7b 100644
--- a/src/org/jitsi/impl/neomedia/device/DeviceConfiguration.java
+++ b/src/org/jitsi/impl/neomedia/device/DeviceConfiguration.java
@@ -16,11 +16,11 @@
 import javax.media.format.*;
 
 import org.jitsi.impl.neomedia.*;
-import org.jitsi.impl.neomedia.codec.*;
 import org.jitsi.impl.neomedia.codec.video.*;
 import org.jitsi.service.configuration.*;
 import org.jitsi.service.libjitsi.*;
 import org.jitsi.service.neomedia.*;
+import org.jitsi.service.neomedia.codec.*;
 import org.jitsi.util.*;
 import org.jitsi.util.event.*;
 
diff --git a/src/org/jitsi/impl/neomedia/device/MediaDeviceSession.java b/src/org/jitsi/impl/neomedia/device/MediaDeviceSession.java
index c9dccff8dd9e0c1c3d03bc75cf4062efdb98b65b..3189bad1b0054208667c08c58630f45c23ce0d28 100644
--- a/src/org/jitsi/impl/neomedia/device/MediaDeviceSession.java
+++ b/src/org/jitsi/impl/neomedia/device/MediaDeviceSession.java
@@ -18,10 +18,10 @@
 import javax.media.rtp.*;
 
 import org.jitsi.impl.neomedia.*;
-import org.jitsi.impl.neomedia.codec.*;
 import org.jitsi.impl.neomedia.format.*;
 import org.jitsi.impl.neomedia.protocol.*;
 import org.jitsi.service.neomedia.*;
+import org.jitsi.service.neomedia.codec.*;
 import org.jitsi.service.neomedia.device.*;
 import org.jitsi.service.neomedia.format.*;
 import org.jitsi.util.*;
diff --git a/src/org/jitsi/impl/neomedia/transform/dtmf/DtmfTransformEngine.java b/src/org/jitsi/impl/neomedia/transform/dtmf/DtmfTransformEngine.java
index 59bd3df6be6c764a51f1d03b2dcde9953f20a825..1abf3ec0f9b472a7a50e43f86f11d726ecbfb01d 100644
--- a/src/org/jitsi/impl/neomedia/transform/dtmf/DtmfTransformEngine.java
+++ b/src/org/jitsi/impl/neomedia/transform/dtmf/DtmfTransformEngine.java
@@ -11,9 +11,9 @@
 import javax.media.*;
 
 import org.jitsi.impl.neomedia.*;
-import org.jitsi.impl.neomedia.codec.*;
 import org.jitsi.impl.neomedia.transform.*;
 import org.jitsi.service.neomedia.*;
+import org.jitsi.service.neomedia.codec.*;
 import org.jitsi.service.neomedia.format.*;
 
 /**
diff --git a/src/org/jitsi/service/neomedia/codec/Constants.java b/src/org/jitsi/service/neomedia/codec/Constants.java
new file mode 100644
index 0000000000000000000000000000000000000000..7a842fe40444771424992e50118988cfcccaae26
--- /dev/null
+++ b/src/org/jitsi/service/neomedia/codec/Constants.java
@@ -0,0 +1,133 @@
+/*
+ * Jitsi, the OpenSource Java VoIP and Instant Messaging client.
+ *
+ * Distributable under LGPL license.
+ * See terms of license at gnu.org.
+ */
+package org.jitsi.service.neomedia.codec;
+
+import org.jitsi.util.*;
+
+/**
+ * Allows start import of <tt>org.jitsi.impl.neomedia.codec</tt>
+ * in order to get the constants define in
+ * <tt>org.jitsi.service.neomedia.codec.Constants</tt> without star
+ * import of <tt>org.jitsi.impl.neomedia.codec</tt>.
+ *
+ * @author Lubomir Marinov
+ */
+public class Constants
+{
+    /**
+     * The ALAW/RTP constant.
+     */
+    public static final String ALAW_RTP = "ALAW/rtp";
+
+    /**
+     * The G722 constant.
+     */
+    public static final String G722 = "g722";
+
+    /**
+     * The G722/RTP constant.
+     */
+    public static final String G722_RTP = "g722/rtp";
+
+    /**
+     * The iLBC constant.
+     */
+    public static final String ILBC = "ilbc";
+
+    /**
+     * The iLBC/RTP constant.
+     */
+    public static final String ILBC_RTP = "ilbc/rtp";
+
+    /**
+     * The SILK constant.
+     */
+    public static final String SILK = "SILK";
+
+    /**
+     * The SILK/RTP constant.
+     */
+    public static final String SILK_RTP = "SILK/rtp";
+
+    /**
+     * The SPEEX constant.
+     */
+    public static final String SPEEX = "speex";
+
+    /**
+     * The SPEEX/RTP constant.
+     */
+    public static final String SPEEX_RTP = "speex/rtp";
+
+    /**
+     * The OPUS/RTP constant.
+     */
+    public static final String OPUS_RTP = "opus/rtp";
+
+    /**
+     * The H264 constant.
+     */
+    public static final String H264 = "h264";
+
+    /**
+     * The H264/RTP constant.
+     */
+    public static final String H264_RTP = "h264/rtp";
+
+    /**
+     * The H263+ constant.
+     */
+    public static final String H263P = "H263-1998";
+
+    /**
+     * The H263+/RTP constant.
+     */
+    public static final String H263P_RTP = "h263-1998/rtp";
+
+    /**
+     * Pseudo format representing DTMF tones sent over RTP.
+     */
+    public static final String TELEPHONE_EVENT = "telephone-event";
+
+    /**
+     * mode    : Frame size for the encoding/decoding
+     * 20 - 20 ms
+     * 30 - 30 ms
+     */
+    public static int ILBC_MODE = 30;
+
+    /**
+     * Default video width.
+     */
+    public static final int VIDEO_WIDTH;
+
+    /**
+     * Default video height.
+     */
+    public static final int VIDEO_HEIGHT;
+
+    static
+    {
+
+        /*
+         * On Mac OS X, the Apple iSight camera reports two sizes 640x480 and
+         * 320x240 if we use the default size 352x288 we must use source format
+         * 640x480 in this situation we suffer from high cpu usage as every
+         * frame is scaled, so we use the non-standard format 320x240.
+         */
+        if (OSUtils.IS_MAC)
+        {
+            VIDEO_WIDTH = 320;
+            VIDEO_HEIGHT = 240;
+        }
+        else
+        {
+            VIDEO_WIDTH = 352;
+            VIDEO_HEIGHT = 288;
+        }
+    }
+}