Add video zoom API

This commit is contained in:
Pierre-Eric Pelloux-Prayer 2012-04-17 11:13:29 +02:00
parent 51694fd79a
commit 02369158f5
3 changed files with 26 additions and 1 deletions

View file

@ -4776,3 +4776,26 @@ void linphone_core_init_default_params(LinphoneCore*lc, LinphoneCallParams *para
params->in_conference=FALSE;
}
void linphone_call_zoom_video(LinphoneCall* call, float zoom_factor, float cx, float cy) {
VideoStream* vstream = call->videostream;
float zoom[3];
if (zoom_factor < 1)
zoom_factor = 1;
float halfsize = 0.5 * 1.0 / zoom_factor;
if ((cx - halfsize) < 0)
cx = 0 + halfsize;
if ((cx + halfsize) > 1)
cx = 1 - halfsize;
if ((cy - halfsize) < 0)
cy = 0 + halfsize;
if ((cy + halfsize) > 1)
cy = 1 - halfsize;
zoom[0] = zoom_factor;
zoom[1] = cx;
zoom[2] = cy;
ms_filter_call_method(vstream->output, MS_VIDEO_DISPLAY_ZOOM, &zoom);
}

View file

@ -1131,6 +1131,8 @@ typedef struct LinphoneTunnel LinphoneTunnel;
* get tunnel instance if available
*/
LinphoneTunnel *linphone_core_get_tunnel(LinphoneCore *lc);
void linphone_call_zoom_video(LinphoneCall* call, float zoom_factor, float cx, float cy);
#ifdef __cplusplus
}

@ -1 +1 @@
Subproject commit da89da8f938e658ef713511e2ff653bce4b7d423
Subproject commit c194c9209bf6c96d419c0513f979ca1114ff3111