diff --git a/Makefile.am b/Makefile.am
index 84c1e019ffbed7901184147d479d002969208232..66d01711dd89c2b2cee09cfff096700dbeab99e2 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -39,7 +39,7 @@ ZIP_EXCLUDED=include lib \
 
 SDK_ZIPFILE=$(shell cd $(top_builddir) && pwd)/lib$(PACKAGE)-win32-$(VERSION).zip
 SDK_EXCLUDED= \
-	bin/linphone-3.exe \
+	bin/linphone.exe \
 	lib/*.la \
 	share/linphone \
 	share/pixmaps \
diff --git a/console/commands.c b/console/commands.c
index 21067c641eba2cc7ff4b92627f9819154736253c..c110d3731577b9aedf4fba2751eb9183eb1b3187 100644
--- a/console/commands.c
+++ b/console/commands.c
@@ -78,6 +78,7 @@ static int lpc_cmd_unregister(LinphoneCore *, char *);
 static int lpc_cmd_duration(LinphoneCore *lc, char *args);
 static int lpc_cmd_status(LinphoneCore *lc, char *args);
 static int lpc_cmd_ports(LinphoneCore *lc, char *args);
+static int lpc_cmd_param(LinphoneCore *lc, char *args);
 static int lpc_cmd_speak(LinphoneCore *lc, char *args);
 static int lpc_cmd_acodec(LinphoneCore *lc, char *args);
 static int lpc_cmd_vcodec(LinphoneCore *lc, char *args);
@@ -315,6 +316,10 @@ static LPC_COMMAND advanced_commands[] = {
 	{ "ports", lpc_cmd_ports, "Network ports configuration", 
 			"'ports'  \t: prints current used ports.\n"
 			"'ports sip <port number>'\t: Sets the sip port.\n" },
+	{ "param", lpc_cmd_param, "parameter set or read as normally given in .linphonerc",
+			"'param <section> <parameter> [<value>]'  \t: reads [sets] given parameter.\n"
+			"NOTES: - changes may become effective after (re)establishing a sip connection.\n"
+			"       - upon exit, .linphonerc will reflect the updated state.\n" },
 	{ "speak", lpc_cmd_speak, "Speak a sentence using espeak TTS engine",
 			"This feature is available only in file mode. (see 'help soundcard')\n"
 			"'speak <voice name> <sentence>'	: speak a text using the specified espeak voice.\n"
@@ -473,7 +478,8 @@ lpc_cmd_help(LinphoneCore *lc, char *arg)
 		}
 		
 		linphonec_out("---------------------------\n");
-		linphonec_out("Type 'help <command>' for more details or 'help advanced' to list additional commands.\n");
+		linphonec_out("Type 'help <command>' for more details or\n");
+		linphonec_out("     'help advanced' to list additional commands.\n");
 
 		return 1;
 	}
@@ -2014,6 +2020,35 @@ static int lpc_cmd_ports(LinphoneCore *lc, char *args)
 	return 1;
 }
 
+static int lpc_cmd_param(LinphoneCore *lc, char *args)
+{
+	char section[20], param[20], value[50];
+	const char *string;
+
+	if (args == NULL) {
+		return 0;
+	}
+	switch (sscanf(args,"%s %s %s",section,param,value)) {
+		// case 1 might show all current settings under a section
+		case 2:
+			string = lp_config_get_string(linphone_core_get_config(lc), section, param, "(undef)");
+			linphonec_out("current value: %s\n", string);
+			break;
+		case 3:
+			if (lp_config_get_string(linphone_core_get_config(lc), section, param, NULL) != NULL) {
+				lp_config_set_string(linphone_core_get_config(lc), section, param, value);
+			// no indication of existence
+				linphonec_out("updated value: %s\n", value);
+			} else {
+				linphonec_out("only update of existing variables are allowed\n");
+			}
+			break;
+		default:
+			return 0;
+    }
+	return 1;
+}
+
 static int lpc_cmd_speak(LinphoneCore *lc, char *args){
 #ifndef WIN32
 	char voice[64];
diff --git a/coreapi/callbacks.c b/coreapi/callbacks.c
index f40cc447c9edcc05881b7cf20cbda67ef409f5db..c3751ada4fb5617c9a51f7938354de54fd0b27a2 100644
--- a/coreapi/callbacks.c
+++ b/coreapi/callbacks.c
@@ -235,10 +235,12 @@ static void call_ringing(SalOp *h){
 		if (lc->ringstream!=NULL) return;	/*already ringing !*/
 		if (lc->sound_conf.play_sndcard!=NULL){
 			MSSndCard *ringcard=lc->sound_conf.lsd_card ? lc->sound_conf.lsd_card : lc->sound_conf.play_sndcard;
-			ms_message("Remote ringing...");
 			lc->ringstream=ring_start(lc->sound_conf.remote_ring,2000,ringcard);
-			linphone_call_set_state(call,LinphoneCallOutgoingRinging,"Remote ringing");		
 		}
+		ms_message("Remote ringing...");
+		if (lc->vtable.display_status) 
+			lc->vtable.display_status(lc,_("Remote ringing..."));
+		linphone_call_set_state(call,LinphoneCallOutgoingRinging,"Remote ringing");
 	}else{
 		/*accept early media */
 		if (call->audiostream && call->audiostream->ticker!=NULL){
diff --git a/coreapi/linphonecore.c b/coreapi/linphonecore.c
index 928209827dfaa8ed13fa4f9c4b1e580522d56150..9156fe40ee8d9927a2d8e82eb5e740dde16d5f5f 100644
--- a/coreapi/linphonecore.c
+++ b/coreapi/linphonecore.c
@@ -2716,6 +2716,7 @@ static MSSndCard *get_card_from_string_id(const char *devid, unsigned int cap){
  * Returns true if the specified sound device can capture sound.
  *
  * @ingroup media_parameters
+ * @param lc The LinphoneCore object
  * @param devid the device name as returned by linphone_core_get_sound_devices()
 **/
 bool_t linphone_core_sound_device_can_capture(LinphoneCore *lc, const char *devid){
@@ -2729,6 +2730,7 @@ bool_t linphone_core_sound_device_can_capture(LinphoneCore *lc, const char *devi
  * Returns true if the specified sound device can play sound.
  *
  * @ingroup media_parameters
+ * @param lc The LinphoneCore object
  * @param devid the device name as returned by linphone_core_get_sound_devices()
 **/
 bool_t linphone_core_sound_device_can_playback(LinphoneCore *lc, const char *devid){
@@ -2742,6 +2744,7 @@ bool_t linphone_core_sound_device_can_playback(LinphoneCore *lc, const char *dev
  * Sets the sound device used for ringing.
  *
  * @ingroup media_parameters
+ * @param lc The LinphoneCore object
  * @param devid the device name as returned by linphone_core_get_sound_devices()
 **/
 int linphone_core_set_ringer_device(LinphoneCore *lc, const char * devid){
@@ -2756,6 +2759,7 @@ int linphone_core_set_ringer_device(LinphoneCore *lc, const char * devid){
  * Sets the sound device used for playback.
  *
  * @ingroup media_parameters
+ * @param lc The LinphoneCore object
  * @param devid the device name as returned by linphone_core_get_sound_devices()
 **/
 int linphone_core_set_playback_device(LinphoneCore *lc, const char * devid){
@@ -2770,6 +2774,7 @@ int linphone_core_set_playback_device(LinphoneCore *lc, const char * devid){
  * Sets the sound device used for capture.
  *
  * @ingroup media_parameters
+ * @param lc The LinphoneCore object
  * @param devid the device name as returned by linphone_core_get_sound_devices()
 **/
 int linphone_core_set_capture_device(LinphoneCore *lc, const char * devid){
@@ -2784,6 +2789,7 @@ int linphone_core_set_capture_device(LinphoneCore *lc, const char * devid){
  * Returns the name of the currently assigned sound device for ringing.
  *
  * @ingroup media_parameters
+ * @param lc The LinphoneCore object
 **/
 const char * linphone_core_get_ringer_device(LinphoneCore *lc)
 {
@@ -2795,6 +2801,7 @@ const char * linphone_core_get_ringer_device(LinphoneCore *lc)
  * Returns the name of the currently assigned sound device for playback.
  *
  * @ingroup media_parameters
+ * @param lc The LinphoneCore object
 **/
 const char * linphone_core_get_playback_device(LinphoneCore *lc)
 {
@@ -2805,6 +2812,7 @@ const char * linphone_core_get_playback_device(LinphoneCore *lc)
  * Returns the name of the currently assigned sound device for capture.
  *
  * @ingroup media_parameters
+ * @param lc The LinphoneCore object
 **/
 const char * linphone_core_get_capture_device(LinphoneCore *lc)
 {
@@ -2814,8 +2822,10 @@ const char * linphone_core_get_capture_device(LinphoneCore *lc)
 /**
  * Returns an unmodifiable array of available sound devices.
  *
- * @ingroup media_parameters
  * The array is NULL terminated.
+ *
+ * @ingroup media_parameters
+ * @param lc The LinphoneCore object
 **/
 const char**  linphone_core_get_sound_devices(LinphoneCore *lc){
 	build_sound_devices_table(lc);
@@ -2858,6 +2868,7 @@ void linphone_core_set_sound_source(LinphoneCore *lc, char source)
  * Sets the path to a wav file used for ringing.
  *
  * @param path The file must be a wav 16bit linear. Local ring is disabled if null
+ * @param lc The LinphoneCore object
  *
  * @ingroup media_parameters
 **/
@@ -2875,6 +2886,7 @@ void linphone_core_set_ring(LinphoneCore *lc,const char *path){
 /**
  * Returns the path to the wav file used for ringing.
  *
+ * @param lc The LinphoneCore object
  * @ingroup media_parameters
 **/
 const char *linphone_core_get_ring(const LinphoneCore *lc){
@@ -3143,6 +3155,7 @@ static void toggle_video_preview(LinphoneCore *lc, bool_t val){
  * initiate future calls with video or not. The two boolean parameters indicate in which
  * direction video is enabled. Setting both to false disables video entirely.
  *
+ * @param lc The LinphoneCore object
  * @param vcap_enabled indicates whether video capture is enabled
  * @param display_enabled indicates whether video display should be shown
  *
@@ -3222,6 +3235,7 @@ bool_t linphone_core_self_view_enabled(const LinphoneCore *lc){
  * Sets the active video device.
  *
  * @ingroup media_parameters
+ * @param lc The LinphoneCore object
  * @param id the name of the video device as returned by linphone_core_get_video_devices()
 **/
 int linphone_core_set_video_device(LinphoneCore *lc, const char *id){
@@ -3251,6 +3265,7 @@ int linphone_core_set_video_device(LinphoneCore *lc, const char *id){
 /**
  * Returns the name of the currently active video device.
  *
+ * @param lc The LinphoneCore object
  * @ingroup media_parameters
 **/
 const char *linphone_core_get_video_device(const LinphoneCore *lc){
diff --git a/gtk/.gitignore b/gtk/.gitignore
index 398d60f0292e25e0d683a8a59fdd15ef828e2fbf..b1b1529c6bb6c5037d1cd92f6898f6cb7fa236fb 100644
--- a/gtk/.gitignore
+++ b/gtk/.gitignore
@@ -1,4 +1,4 @@
-linphone-3
+linphone
 .libs
 .deps
 linphone.res
diff --git a/gtk/Makefile.am b/gtk/Makefile.am
index a2c38b342abe92aa482aa0c952f1943359676bcd..58f5306596b972c31ac4c72e8dd6f45268d7ba25 100644
--- a/gtk/Makefile.am
+++ b/gtk/Makefile.am
@@ -27,9 +27,9 @@ if BUILD_GTK_UI
 
 BUILT_SOURCES=version_date.h
 
-bin_PROGRAMS=linphone-3
+bin_PROGRAMS=linphone
 
-linphone_3_SOURCES=	\
+linphone_SOURCES=	\
 			main.c \
 			propertybox.c \
 			friendlist.c \
@@ -45,7 +45,7 @@ linphone_3_SOURCES=	\
 			loginframe.c \
 			linphone.h 
 
-linphone_3_LDADD=$(ORTP_LIBS) \
+linphone_LDADD=$(ORTP_LIBS) \
 		$(MEDIASTREAMER_LIBS) \
 		$(top_builddir)/coreapi/liblinphone.la \
 			$(LIBGTK_LIBS) $(INTLLIBS) 
@@ -56,10 +56,10 @@ if BUILD_WIN32
 linphone.res:	$(LINPHONE_ICO_RC_FILE) $(LINPHONE_ICO_FILE)
 	windres $(LINPHONE_ICO_RC_FILE) -O coff -o linphone.res
 
-linphone_3_LDADD+=linphone.res -lwininet
-linphone_3_LDFLAGS=-Wl,--export-all-symbols -mwindows
+linphone_LDADD+=linphone.res -lwininet
+linphone_LDFLAGS=-Wl,--export-all-symbols -mwindows
 else
-linphone_3_LDFLAGS=-export-dynamic
+linphone_LDFLAGS=-export-dynamic
 endif
 
 uidir=$(datadir)/linphone
diff --git a/linphone.iss.in b/linphone.iss.in
index b7726f542e7d807e1272053c9c7dc4c22271ad34..b0cbd08f048121c5d815db0f04a39429c7727fa6 100644
--- a/linphone.iss.in
+++ b/linphone.iss.in
@@ -30,19 +30,19 @@ Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{
 #include "linphone-win32.filelist"
 
 [Icons]
-Name: "{group}\Linphone"; Filename: "{app}\bin\linphone-3.exe" ; WorkingDir: "{app}"
-Name: "{userdesktop}\Linphone"; Filename: "{app}\bin\linphone-3.exe"; WorkingDir: "{app}" ; Tasks: desktopicon
+Name: "{group}\Linphone"; Filename: "{app}\bin\linphone.exe" ; WorkingDir: "{app}"
+Name: "{userdesktop}\Linphone"; Filename: "{app}\bin\linphone.exe"; WorkingDir: "{app}" ; Tasks: desktopicon
 
 [Registry]
 Root: HKCR; Subkey: "sip";
 Root: HKCR; Subkey: "sip"; ValueData: "URL: SIP protocol" ; ValueType:string
 Root: HKCR; Subkey: "sip"; ValueName: "EditFlags"; ValueData: "02 00 00 00" ; ValueType:binary
 Root: HKCR; Subkey: "sip"; ValueName: "URL Protocol" ;  ValueType:string
-Root: HKCR; Subkey: "sip\DefaultIcon"; ValueData: "{app}\bin\linphone-3.exe"; ValueType:string ; Flags:uninsdeletekey
+Root: HKCR; Subkey: "sip\DefaultIcon"; ValueData: "{app}\bin\linphone.exe"; ValueType:string ; Flags:uninsdeletekey
 Root: HKCR; Subkey: "sip\shell"
 Root: HKCR; Subkey: "sip\shell\open"
-Root: HKCR; Subkey: "sip\shell\open\command"; ValueType:string ; ValueData: "{app}\bin\linphone-3.exe --workdir {app} --call %1"; Flags:uninsdeletekey
+Root: HKCR; Subkey: "sip\shell\open\command"; ValueType:string ; ValueData: "{app}\bin\linphone.exe --workdir {app} --call %1"; Flags:uninsdeletekey
 
 [Run]
-Filename: "{app}\bin\linphone-3.exe"; Description: "{cm:LaunchProgram,Linphone}"; WorkingDir: "{app}" ; Flags: nowait postinstall skipifsilent
+Filename: "{app}\bin\linphone.exe"; Description: "{cm:LaunchProgram,Linphone}"; WorkingDir: "{app}" ; Flags: nowait postinstall skipifsilent
 
diff --git a/linphone.kdevelop b/linphone.kdevelop
index 27eac222671a9610f08fa5a8a7aa5dcfe87bba0d..2cb0437f5a571e3d97bdda68bda0f7b3c56bff29 100644
--- a/linphone.kdevelop
+++ b/linphone.kdevelop
@@ -16,7 +16,7 @@
   <kdevcustomproject>
     <run>
       <directoryradio>executable</directoryradio>
-      <mainprogram>gtk-glade/linphone-3</mainprogram>
+      <mainprogram>gtk-glade/linphone</mainprogram>
       <programargs/>
       <globaldebugarguments/>
       <globalcwd/>
diff --git a/mediastreamer2 b/mediastreamer2
index b9a6dad7339175e894d1a0f291ccb5d1143e3199..b0eddd4c81b5055534aceb0bf85f0eafb6151d42 160000
--- a/mediastreamer2
+++ b/mediastreamer2
@@ -1 +1 @@
-Subproject commit b9a6dad7339175e894d1a0f291ccb5d1143e3199
+Subproject commit b0eddd4c81b5055534aceb0bf85f0eafb6151d42
diff --git a/scripts/builder-mingw.mk b/scripts/builder-mingw.mk
index 7363218af95bebf6cf4d39c603a68d41f6d107b8..0a9937cc3e41a17054bdf16f33deacab3d1eee89 100644
--- a/scripts/builder-mingw.mk
+++ b/scripts/builder-mingw.mk
@@ -11,7 +11,7 @@ MSX264_ZIP=$(WORKDIR)/msx264.zip
 INSTALL_ROOT=$(WORKDIR)/root
 FILELIST=$(WORKDIR)/linphone-bundle.filelist
 
-LINPHONE_VERSION=strings $(INSTALL_ROOT)/bin/linphone-3.exe |grep linphone_ident | sed 's/linphone_ident_string=//'
+LINPHONE_VERSION=strings $(INSTALL_ROOT)/bin/linphone.exe |grep linphone_ident | sed 's/linphone_ident_string=//'
 
 $(WORKDIR):
 	mkdir -p $(WORKDIR)
diff --git a/share/linphone.desktop.in b/share/linphone.desktop.in
index 7a490a74d038a4b0bcd0f0330254dfc29c568ba6..d8ab62a5b246ea23ef3aa667e200bb4a1266ce83 100644
--- a/share/linphone.desktop.in
+++ b/share/linphone.desktop.in
@@ -4,7 +4,7 @@ Comment=Linphone is a web-phone
 Comment[fr]=Linphone est un web-phone.
 Comment[de]=Linphone ist ein web-phone.
 Type=Application
-Exec=linphone-3
+Exec=linphone
 Icon=@prefix@/share/pixmaps/linphone/linphone.png
 Terminal=false
-Categories=Network;Telephony;
\ No newline at end of file
+Categories=Network;Telephony;