Indicate what RTCP packet has been updated in the LinphoneCallStats structure.

This commit is contained in:
Ghislain MARY 2014-03-18 16:15:32 +01:00
parent 22e88c8da1
commit 0e2446c0b6
2 changed files with 18 additions and 0 deletions

View file

@ -2691,6 +2691,7 @@ void linphone_call_background_tasks(LinphoneCall *call, bool_t one_second_elapse
freemsg(call->stats[LINPHONE_CALL_STATS_VIDEO].received_rtcp);
call->stats[LINPHONE_CALL_STATS_VIDEO].received_rtcp = evd->packet;
evd->packet = NULL;
call->stats[LINPHONE_CALL_STATS_VIDEO].updated = LinphoneCallStatsReceivedRTCPUpdate;
update_local_stats(&call->stats[LINPHONE_CALL_STATS_VIDEO],(MediaStream*)call->videostream);
if (lc->vtable.call_stats_updated)
lc->vtable.call_stats_updated(lc, call, &call->stats[LINPHONE_CALL_STATS_VIDEO]);
@ -2700,6 +2701,7 @@ void linphone_call_background_tasks(LinphoneCall *call, bool_t one_second_elapse
freemsg(call->stats[LINPHONE_CALL_STATS_VIDEO].sent_rtcp);
call->stats[LINPHONE_CALL_STATS_VIDEO].sent_rtcp = evd->packet;
evd->packet = NULL;
call->stats[LINPHONE_CALL_STATS_VIDEO].updated = LinphoneCallStatsSentRTCPUpdate;
update_local_stats(&call->stats[LINPHONE_CALL_STATS_VIDEO],(MediaStream*)call->videostream);
if (lc->vtable.call_stats_updated)
lc->vtable.call_stats_updated(lc, call, &call->stats[LINPHONE_CALL_STATS_VIDEO]);
@ -2734,6 +2736,7 @@ void linphone_call_background_tasks(LinphoneCall *call, bool_t one_second_elapse
freemsg(call->stats[LINPHONE_CALL_STATS_AUDIO].received_rtcp);
call->stats[LINPHONE_CALL_STATS_AUDIO].received_rtcp = evd->packet;
evd->packet = NULL;
call->stats[LINPHONE_CALL_STATS_AUDIO].updated = LinphoneCallStatsReceivedRTCPUpdate;
update_local_stats(&call->stats[LINPHONE_CALL_STATS_AUDIO],(MediaStream*)call->audiostream);
if (lc->vtable.call_stats_updated)
lc->vtable.call_stats_updated(lc, call, &call->stats[LINPHONE_CALL_STATS_AUDIO]);
@ -2743,6 +2746,7 @@ void linphone_call_background_tasks(LinphoneCall *call, bool_t one_second_elapse
freemsg(call->stats[LINPHONE_CALL_STATS_AUDIO].sent_rtcp);
call->stats[LINPHONE_CALL_STATS_AUDIO].sent_rtcp = evd->packet;
evd->packet = NULL;
call->stats[LINPHONE_CALL_STATS_AUDIO].updated = LinphoneCallStatsSentRTCPUpdate;
update_local_stats(&call->stats[LINPHONE_CALL_STATS_AUDIO],(MediaStream*)call->audiostream);
if (lc->vtable.call_stats_updated)
lc->vtable.call_stats_updated(lc, call, &call->stats[LINPHONE_CALL_STATS_AUDIO]);

View file

@ -564,6 +564,19 @@ enum _LinphoneUpnpState{
typedef enum _LinphoneUpnpState LinphoneUpnpState;
/**
* Enum describing what has been updated in a LinphoneCallStats object.
**/
typedef enum _LinphoneCallStatsRTCPUpdate LinphoneCallStatsRTCPUpdate;
/**
* Enum describing what has been updated in a LinphoneCallStats object.
**/
enum _LinphoneCallStatsRTCPUpdate {
LinphoneCallStatsReceivedRTCPUpdate, /**< received_rtcp field of LinphoneCallStats object has been updated */
LinphoneCallStatsSentRTCPUpdate /**< sent_rtcp field of LinphoneCallStats object has been updated */
};
/**
* The LinphoneCallStats objects carries various statistic informations regarding quality of audio or video streams.
*
@ -594,6 +607,7 @@ struct _LinphoneCallStats {
float upload_bandwidth; /**<Download bandwidth measurement of sent stream, expressed in kbit/s, including IP/UDP/RTP headers*/
float local_late_rate; /**<percentage of packet received too late over last second*/
float local_loss_rate; /**<percentage of lost packet over last second*/
LinphoneCallStatsRTCPUpdate updated; /**< Tell which RTCP packet has been updated (received_rtcp or sent_rtcp) */
};
/**