diff --git a/coreapi/linphonecore.c b/coreapi/linphonecore.c index 4ae24d0e9..a6911b301 100644 --- a/coreapi/linphonecore.c +++ b/coreapi/linphonecore.c @@ -2159,6 +2159,13 @@ bool_t linphone_core_inc_invite_pending(LinphoneCore*lc){ return FALSE; } +#ifdef TEST_EXT_RENDERER +static void rendercb(void *data, const MSPicture *local, const MSPicture *remote){ + ms_message("rendercb, local buffer=%p, remote buffer=%p", + local ? local->planes[0] : NULL, remote? remote->planes[0] : NULL); +} +#endif + void linphone_core_init_media_streams(LinphoneCore *lc, LinphoneCall *call){ SalMediaDescription *md=call->localdesc; lc->audiostream=audio_stream_new(md->streams[0].port,linphone_core_ipv6_enabled(lc)); @@ -2186,8 +2193,12 @@ void linphone_core_init_media_streams(LinphoneCore *lc, LinphoneCall *call){ rtp_session_set_transports(lc->audiostream->session,lc->a_rtp,lc->a_rtcp); #ifdef VIDEO_ENABLED - if ((lc->video_conf.display || lc->video_conf.capture) && md->streams[1].port>0) + if ((lc->video_conf.display || lc->video_conf.capture) && md->streams[1].port>0){ lc->videostream=video_stream_new(md->streams[1].port,linphone_core_ipv6_enabled(lc)); +#ifdef TEST_EXT_RENDERER + video_stream_set_render_callback(lc->videostream,rendercb,NULL); +#endif + } #else lc->videostream=NULL; #endif @@ -2661,7 +2672,11 @@ void linphone_core_set_ring_level(LinphoneCore *lc, int level){ if (sndcard) ms_snd_card_set_level(sndcard,MS_SND_CARD_PLAYBACK,level); } - +/** + * Sets call playback gain in db + * + * @ingroup media_parameters +**/ void linphone_core_set_soft_play_level(LinphoneCore *lc, float level){ float gain=level; lc->sound_conf.soft_play_lev=level; @@ -2672,11 +2687,17 @@ void linphone_core_set_soft_play_level(LinphoneCore *lc, float level){ ms_filter_call_method(st->volrecv,MS_VOLUME_SET_DB_GAIN,&gain); }else ms_warning("Could not apply gain: gain control wasn't activated."); } + +/** + * Returns call playback gain in db + * + * @ingroup media_parameters +**/ float linphone_core_get_soft_play_level(LinphoneCore *lc) { float gain=0; AudioStream *st=lc->audiostream; if (st->volrecv){ - ms_filter_call_method(st->volrecv,MS_VOLUME_GET,&gain); + ms_filter_call_method(st->volrecv,MS_VOLUME_GET_GAIN_DB,&gain); }else ms_warning("Could not get gain: gain control wasn't activated."); return gain;