diff --git a/configure.ac b/configure.ac index 81042d2bb746e3d2d62f004058f5d98b455ad494..fe399168a4b820e80968e2fbdb0a46c457920101 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,6 @@ dnl Process this file with autoconf to produce a configure script. -AC_INIT([linphone],[3.4.2],[linphone-developers@nongnu.org]) +AC_INIT([linphone],[3.4.3],[linphone-developers@nongnu.org]) AC_CANONICAL_SYSTEM AC_CONFIG_SRCDIR([coreapi/linphonecore.c]) diff --git a/coreapi/linphonecall.c b/coreapi/linphonecall.c index 9a21ca65b5dbeed6fdccf7224c09fe668f4e5f96..8959c01b93f10a675148db2a5b85bd6ebc3a2363 100644 --- a/coreapi/linphonecall.c +++ b/coreapi/linphonecall.c @@ -1079,3 +1079,33 @@ bool_t linphone_call_echo_limiter_enabled(const LinphoneCall *call){ } } +/** + * Returns the measured sound volume played locally (received from remote) + * It is expressed in dbm0. +**/ +float linphone_call_get_play_volume(LinphoneCall *call){ + AudioStream *st=call->audiostream; + if (st && st->volsend){ + float vol=0; + ms_filter_call_method(st->volsend,MS_VOLUME_GET,&vol); + return vol; + + } + return LINPHONE_VOLUME_DB_LOWEST; +} + +/** + * Returns the measured sound volume recorded locally (sent to remote) + * It is expressed in dbm0. +**/ +float linphone_call_get_record_volume(LinphoneCall *call){ + AudioStream *st=call->audiostream; + if (st && st->volrecv){ + float vol=0; + ms_filter_call_method(st->volrecv,MS_VOLUME_GET,&vol); + return vol; + + } + return LINPHONE_VOLUME_DB_LOWEST; +} + diff --git a/coreapi/linphonecore.h b/coreapi/linphonecore.h index 81ab3e949948770cfd2d3446fb0b07d20f8c747d..6e55ea2e36003e80103d518be6bd4d019c21068a 100644 --- a/coreapi/linphonecore.h +++ b/coreapi/linphonecore.h @@ -253,6 +253,8 @@ bool_t linphone_call_camera_enabled(const LinphoneCall *lc); int linphone_call_take_video_snapshot(LinphoneCall *call, const char *file); LinphoneReason linphone_call_get_reason(const LinphoneCall *call); const char *linphone_call_get_remote_user_agent(LinphoneCall *call); +float linphone_call_get_play_volume(LinphoneCall *call); +float linphone_call_get_record_volume(LinphoneCall *call); void *linphone_call_get_user_pointer(LinphoneCall *call); void linphone_call_set_user_pointer(LinphoneCall *call, void *user_pointer); /** @@ -283,6 +285,10 @@ void linphone_call_enable_echo_limiter(LinphoneCall *call, bool_t val); * @ingroup media_parameters **/ bool_t linphone_call_echo_limiter_enabled(const LinphoneCall *call); + +/*keep this in sync with mediastreamer2/msvolume.h*/ +#define LINPHONE_VOLUME_DB_LOWEST (-120) /**< Lowest measured that can be returned.*/ + /** * @addtogroup proxies * @{ diff --git a/mediastreamer2 b/mediastreamer2 index d81b5016b2badea5a3c8b335a0cb9ea000e69711..63788c7a33857e6994da7138d40efa6fff6f6c92 160000 --- a/mediastreamer2 +++ b/mediastreamer2 @@ -1 +1 @@ -Subproject commit d81b5016b2badea5a3c8b335a0cb9ea000e69711 +Subproject commit 63788c7a33857e6994da7138d40efa6fff6f6c92