Liblinphone  5.3.0
Macros | Typedefs | Enumerations | Functions
Call misc

Obtaining information about a running call: sound volumes, quality indicators. More...

Macros

#define LINPHONE_VOLUME_DB_LOWEST   (-120) /* WARNING: keep this in sync with mediastreamer2/msvolume.h */
 Lowest volume measurement that can be returned by linphone_call_get_play_volume() or linphone_call_get_record_volume(), corresponding to pure silence.
 
#define LINPHONE_CALL_STATS_AUDIO   ((int)LinphoneStreamTypeAudio)
 
#define LINPHONE_CALL_STATS_VIDEO   ((int)LinphoneStreamTypeVideo)
 
#define LINPHONE_CALL_STATS_TEXT   ((int)LinphoneStreamTypeText)
 
#define LINPHONE_CALL_STATS_RECEIVED_RTCP_UPDATE   (1 << 0)
 received_rtcp field of LinphoneCallStats object has been updated
 
#define LINPHONE_CALL_STATS_SENT_RTCP_UPDATE   (1 << 1)
 sent_rtcp field of LinphoneCallStats object has been updated
 
#define LINPHONE_CALL_STATS_PERIODICAL_UPDATE   (1 << 2)
 Every seconds LinphoneCallStats object has been updated.
 

Typedefs

typedef struct _LinphoneCallStats LinphoneCallStats
 This object carry various statistic informations regarding the quality of an audio or video stream for a given LinphoneCall. More...
 
typedef enum _LinphoneSupportLevel LinphoneSupportLevel
 

Enumerations

enum  _LinphoneSupportLevel {
  LinphoneSupportLevelNoSupport = 0,
  LinphoneSupportLevelOptional = 1,
  LinphoneSupportLevelMandatory = 2
}
 

Functions

LinphoneStreamType linphone_call_stats_get_type (const LinphoneCallStats *stats)
 Get the type of the stream the stats refer to. More...
 
float linphone_call_stats_get_sender_loss_rate (const LinphoneCallStats *stats)
 Get the local loss rate since last report. More...
 
float linphone_call_stats_get_receiver_loss_rate (const LinphoneCallStats *stats)
 Gets the remote reported loss rate since last report. More...
 
float linphone_call_stats_get_local_loss_rate (const LinphoneCallStats *stats)
 Get the local loss rate since last report. More...
 
float linphone_call_stats_get_local_late_rate (const LinphoneCallStats *stats)
 Gets the local late rate since last report. More...
 
float linphone_call_stats_get_sender_interarrival_jitter (const LinphoneCallStats *stats)
 Gets the local interarrival jitter. More...
 
float linphone_call_stats_get_receiver_interarrival_jitter (const LinphoneCallStats *stats)
 Gets the remote reported interarrival jitter. More...
 
const rtp_stats_t * linphone_call_stats_get_rtp_stats (const LinphoneCallStats *stats)
 
uint64_t linphone_call_stats_get_late_packets_cumulative_number (const LinphoneCallStats *stats)
 Gets the cumulative number of late packets. More...
 
float linphone_call_stats_get_download_bandwidth (const LinphoneCallStats *stats)
 Get the bandwidth measurement of the received stream, expressed in kbit/s, including IP/UDP/RTP headers. More...
 
float linphone_call_stats_get_upload_bandwidth (const LinphoneCallStats *stats)
 Get the bandwidth measurement of the sent stream, expressed in kbit/s, including IP/UDP/RTP headers. More...
 
float linphone_call_stats_get_rtcp_download_bandwidth (const LinphoneCallStats *stats)
 Get the bandwidth measurement of the received RTCP, expressed in kbit/s, including IP/UDP/RTP headers. More...
 
float linphone_call_stats_get_rtcp_upload_bandwidth (const LinphoneCallStats *stats)
 Get the bandwidth measurement of the sent RTCP, expressed in kbit/s, including IP/UDP/RTP headers. More...
 
LinphoneIceState linphone_call_stats_get_ice_state (const LinphoneCallStats *stats)
 Get the state of ICE processing. More...
 
LinphoneUpnpState linphone_call_stats_get_upnp_state (const LinphoneCallStats *stats)
 Get the state of uPnP processing. More...
 
LinphoneAddressFamily linphone_call_stats_get_ip_family_of_remote (const LinphoneCallStats *stats)
 Get the IP address family of the remote peer. More...
 
float linphone_call_stats_get_jitter_buffer_size_ms (const LinphoneCallStats *stats)
 Get the jitter buffer size in ms. More...
 
float linphone_call_stats_get_round_trip_delay (const LinphoneCallStats *stats)
 Get the round trip delay in s. More...
 
float linphone_call_stats_get_estimated_download_bandwidth (const LinphoneCallStats *stats)
 Get the estimated bandwidth measurement of the received stream, expressed in kbit/s, including IP/UDP/RTP headers. More...
 
void linphone_call_stats_set_estimated_download_bandwidth (LinphoneCallStats *stats, float estimated_value)
 
const char * linphone_call_stats_get_zrtp_cipher_algo (const LinphoneCallStats *stats)
 Get the ZRTP algorithm statistics details (cipher) More...
 
const char * linphone_call_stats_get_zrtp_key_agreement_algo (const LinphoneCallStats *stats)
 Get the ZRTP algorithm statistics details (key agreeement) More...
 
bool_t linphone_call_stats_is_zrtp_key_agreement_algo_post_quantum (const LinphoneCallStats *stats)
 Did ZRTP used a Post Quantum algorithm to perform a key exchange. More...
 
const char * linphone_call_stats_get_zrtp_hash_algo (const LinphoneCallStats *stats)
 Get the ZRTP algorithm statistics details (hash function) More...
 
const char * linphone_call_stats_get_zrtp_auth_tag_algo (const LinphoneCallStats *stats)
 Get the ZRTP algorithm statistics details (authentication method) More...
 
const char * linphone_call_stats_get_zrtp_sas_algo (const LinphoneCallStats *stats)
 Get the ZRTP algorithm statistics details (SAS display) More...
 
LinphoneSrtpSuite linphone_call_stats_get_srtp_suite (const LinphoneCallStats *stats)
 Get the SRTP Cryto suite in use. More...
 
LinphoneMediaEncryption linphone_call_stats_get_srtp_source (const LinphoneCallStats *stats)
 Get the method used for SRTP key exchange. More...
 
LinphoneChatRoomlinphone_call_get_chat_room (LinphoneCall *call)
 Create a new chat room for real time messaging from a call if not already existing, else return existing one. More...
 
float linphone_call_get_play_volume (const LinphoneCall *call)
 Get the mesured playback volume level (received from remote) in dbm0. More...
 
float linphone_call_get_record_volume (const LinphoneCall *call)
 Get the mesured record volume level (sent to remote) in dbm0. More...
 
float linphone_call_get_speaker_volume_gain (const LinphoneCall *call)
 Get speaker volume gain. More...
 
void linphone_call_set_speaker_volume_gain (LinphoneCall *call, float volume)
 Set speaker volume gain. More...
 
float linphone_call_get_microphone_volume_gain (const LinphoneCall *call)
 Get microphone volume gain. More...
 
void linphone_call_set_microphone_volume_gain (LinphoneCall *call, float volume)
 Set microphone volume gain. More...
 
bool_t linphone_call_get_speaker_muted (const LinphoneCall *call)
 Get speaker muted state. More...
 
void linphone_call_set_speaker_muted (LinphoneCall *call, bool_t muted)
 Set speaker muted state. More...
 
bool_t linphone_call_get_microphone_muted (const LinphoneCall *call)
 Get microphone muted state. More...
 
void linphone_call_set_microphone_muted (LinphoneCall *call, bool_t muted)
 Set microphone muted state. More...
 
float linphone_call_get_current_quality (const LinphoneCall *call)
 Obtain real-time quality rating of the call. More...
 
float linphone_call_get_average_quality (const LinphoneCall *call)
 Returns call quality averaged over all the duration of the call. More...
 
void linphone_call_start_recording (LinphoneCall *call)
 Starts call recording. More...
 
void linphone_call_stop_recording (LinphoneCall *call)
 Stops call recording. More...
 
LinphonePlayerlinphone_call_get_player (LinphoneCall *call)
 Gets a player associated with the call to play a local file and stream it to the remote peer. More...
 
bool_t linphone_call_media_in_progress (const LinphoneCall *call)
 Indicates whether an operation is in progress at the media side. More...
 
void linphone_call_ogl_render (const LinphoneCall *call)
 Calls generic OpenGL render for a given call. More...
 
LinphoneStatus linphone_call_send_info_message (LinphoneCall *call, const LinphoneInfoMessage *info)
 Sends an info message through an established call. More...
 
LinphoneCallStatslinphone_call_get_stats (LinphoneCall *call, LinphoneStreamType type)
 Returns a copy of the call statistics for a particular stream type. More...
 
LinphoneCallStatslinphone_call_get_audio_stats (LinphoneCall *call)
 Returns a copy of the call statistics for the audio stream. More...
 
LinphoneCallStatslinphone_call_get_video_stats (LinphoneCall *call)
 Returns a copy of the call statistics for the video stream. More...
 
LinphoneCallStatslinphone_call_get_text_stats (LinphoneCall *call)
 Returns a copy of the call statistics for the text stream. More...
 
void linphone_call_add_callbacks (LinphoneCall *call, LinphoneCallCbs *cbs)
 Add a listener in order to be notified of LinphoneCall events. More...
 
void linphone_call_remove_callbacks (LinphoneCall *call, LinphoneCallCbs *cbs)
 Remove a listener from a LinphoneCall. More...
 
LinphoneCallCbslinphone_call_get_current_callbacks (const LinphoneCall *call)
 Gets the current LinphoneCallCbs. More...
 
void linphone_call_set_params (LinphoneCall *call, const LinphoneCallParams *params)
 Set call parameters - advanced and not recommended feature - use with caution. More...
 
const LinphoneCallParamslinphone_call_get_params (const LinphoneCall *call)
 Returns local parameters associated with the call. More...
 
void linphone_call_set_input_audio_device (LinphoneCall *call, LinphoneAudioDevice *audio_device)
 Sets the given LinphoneAudioDevice as input for this call only. More...
 
void linphone_call_set_output_audio_device (LinphoneCall *call, LinphoneAudioDevice *audio_device)
 Sets the given LinphoneAudioDevice as output for this call only. More...
 
const LinphoneAudioDevicelinphone_call_get_input_audio_device (const LinphoneCall *call)
 Gets the current input device for this call. More...
 
const LinphoneAudioDevicelinphone_call_get_output_audio_device (const LinphoneCall *call)
 Gets the current output device for this call. More...
 
void linphone_call_notify_ringing (LinphoneCall *call)
 Starts the process of replying 180 Ringing. More...
 
void linphone_call_set_video_source (LinphoneCall *call, const LinphoneVideoSourceDescriptor *descriptor)
 Sets the video source of a call. More...
 
const LinphoneVideoSourceDescriptorlinphone_call_get_video_source (const LinphoneCall *call)
 Gets the video source of a call. More...
 
void linphone_call_confirm_go_clear (const LinphoneCall *call)
 Method to be called after the user confirm that he/she is notifed of the on going Go Clear procedure. More...
 
LinphoneStatus linphone_call_redirect (LinphoneCall *call, const char *redirect_uri)
 Redirect the specified call to the given redirect URI. More...
 
LinphoneStatus linphone_call_transfer (LinphoneCall *call, const char *refer_to)
 Performs a simple call transfer to the specified destination. More...
 
MS2_DEPRECATED char * linphone_call_get_remote_address_as_string (const LinphoneCall *call)
 Returns the remote address associated to this call as a string. More...
 
MS2_DEPRECATED void linphone_call_set_next_video_frame_decoded_callback (LinphoneCall *call, LinphoneCallCbFunc cb, void *user_data)
 
MS2_DEPRECATED void linphone_call_zoom_video (LinphoneCall *call, float zoom_factor, float *cx, float *cy)
 Perform a zoom of the video displayed during a call. More...
 
MS2_DEPRECATED bool_t linphone_call_is_in_conference (const LinphoneCall *call)
 Return TRUE if this call is currently part of a conference. More...
 
MS2_DEPRECATED bool_t linphone_call_is_recording (LinphoneCall *call)
 Returns whether or not the call is currently being recorded. More...
 

Detailed Description

Obtaining information about a running call: sound volumes, quality indicators.

When a call is running, it is possible to retrieve in real time current measured volumes and quality indicator.

Typedef Documentation

◆ LinphoneCallStats

typedef struct _LinphoneCallStats LinphoneCallStats

This object carry various statistic informations regarding the quality of an audio or video stream for a given LinphoneCall.

To receive these informations periodically and as soon as they are computed, implement the call_stats_updated() callback inside a LinphoneCoreCbs.

At any time, the application can access latest computed statistics using linphone_call_get_audio_stats() and linphone_call_get_video_stats().

Enumeration Type Documentation

◆ _LinphoneSupportLevel

Enumerator
LinphoneSupportLevelNoSupport 

No support for the feature.

LinphoneSupportLevelOptional 

Optional support for the feature.

LinphoneSupportLevelMandatory 

Mandatory support for the feature.

Function Documentation

◆ linphone_call_add_callbacks()

void linphone_call_add_callbacks ( LinphoneCall call,
LinphoneCallCbs cbs 
)

Add a listener in order to be notified of LinphoneCall events.

Once an event is received, registred LinphoneCallCbs are invoked sequencially.

Parameters
callLinphoneCall object. to monitor.
cbsA LinphoneCallCbs object holding the callbacks you need. A reference is taken by the LinphoneCall until you invoke linphone_call_remove_callbacks().

◆ linphone_call_confirm_go_clear()

void linphone_call_confirm_go_clear ( const LinphoneCall call)

Method to be called after the user confirm that he/she is notifed of the on going Go Clear procedure.

Warning
this operation must be imperatevely initiate by a user action on sending of the GoClear ACK
Parameters
callThe LinphoneCall

◆ linphone_call_get_audio_stats()

LinphoneCallStats* linphone_call_get_audio_stats ( LinphoneCall call)

Returns a copy of the call statistics for the audio stream.

Parameters
callthe LinphoneCall
Returns
a LinphoneCallStats object for the audio stream or NULL if it isn't available.

◆ linphone_call_get_average_quality()

float linphone_call_get_average_quality ( const LinphoneCall call)

Returns call quality averaged over all the duration of the call.

See linphone_call_get_current_quality() for more details about quality measurement.

Parameters
callThe LinphoneCall object.
Returns
the call average quality since tbe beginning of the call.

◆ linphone_call_get_chat_room()

LinphoneChatRoom* linphone_call_get_chat_room ( LinphoneCall call)

Create a new chat room for real time messaging from a call if not already existing, else return existing one.

No reference is given to the caller: the chat room will be deleted when the call is ended.

Parameters
callLinphoneCall object
Returns
LinphoneChatRoom where real time messaging can take place or NULL if chat room couldn't be created.

◆ linphone_call_get_current_callbacks()

LinphoneCallCbs* linphone_call_get_current_callbacks ( const LinphoneCall call)

Gets the current LinphoneCallCbs.

This is meant only to be called from a callback to be able to get the user_data associated with the LinphoneCallCbs that is calling the callback.

Parameters
callLinphoneCall object.
Returns
The LinphoneCallCbs that has called the last callback

◆ linphone_call_get_current_quality()

float linphone_call_get_current_quality ( const LinphoneCall call)

Obtain real-time quality rating of the call.

Based on local RTP statistics and RTCP feedback, a quality rating is computed and updated during all the duration of the call. This function returns its value at the time of the function call. It is expected that the rating is updated at least every 5 seconds or so. The rating is a floating point number comprised between 0 and 5.

4-5 = good quality
3-4 = average quality
2-3 = poor quality
1-2 = very poor quality
0-1 = can't be worse, mostly unusable

Parameters
callThe LinphoneCall object.
Returns
The function returns -1 if no quality measurement is available, for example if no active audio stream exist. Otherwise it returns the quality rating.

◆ linphone_call_get_input_audio_device()

const LinphoneAudioDevice* linphone_call_get_input_audio_device ( const LinphoneCall call)

Gets the current input device for this call.

Parameters
callThe LinphoneCall
Returns
the LinphoneAudioDevice used by this call as input or NULL if there is currently no soundcard configured (depending on the state of the call)

◆ linphone_call_get_microphone_muted()

bool_t linphone_call_get_microphone_muted ( const LinphoneCall call)

Get microphone muted state.

Note that the microphone may be disabled globally if FALSE was given to linphone_core_enable_mic().

Parameters
callThe LinphoneCall object.
Returns
The microphone muted state.
Warning
This method returns state of the mute capability of the call passed as argument. If this call is part of a conference, it is strongly recommended to call linphone_conference_get_microphone_muted() to know whether this device is muted or not.

◆ linphone_call_get_microphone_volume_gain()

float linphone_call_get_microphone_volume_gain ( const LinphoneCall call)

Get microphone volume gain.

If the sound backend supports it, the returned gain is equal to the gain set with the system mixer.

Parameters
callThe LinphoneCall object.
Returns
double Percentage of the max supported volume gain. Valid values are in [ 0.0 : 1.0 ]. In case of failure, a negative value is returned

◆ linphone_call_get_output_audio_device()

const LinphoneAudioDevice* linphone_call_get_output_audio_device ( const LinphoneCall call)

Gets the current output device for this call.

Parameters
callThe LinphoneCall
Returns
the LinphoneAudioDevice used by this call as output or NULL if there is currently no soundcard configured (depending on the state of the call)

◆ linphone_call_get_params()

const LinphoneCallParams* linphone_call_get_params ( const LinphoneCall call)

Returns local parameters associated with the call.

This is typically the parameters passed at call initiation to linphone_core_invite_address_with_params() or linphone_call_accept_with_params(), or some default parameters if no LinphoneCallParams was explicitely passed during call initiation.

Parameters
callthe LinphoneCall object
Returns
the call's local parameters.

◆ linphone_call_get_play_volume()

float linphone_call_get_play_volume ( const LinphoneCall call)

Get the mesured playback volume level (received from remote) in dbm0.

Parameters
callThe call.
Returns
float Volume level in percentage.

◆ linphone_call_get_player()

LinphonePlayer* linphone_call_get_player ( LinphoneCall call)

Gets a player associated with the call to play a local file and stream it to the remote peer.

Parameters
callLinphoneCall object.
Returns
A LinphonePlayer object

◆ linphone_call_get_record_volume()

float linphone_call_get_record_volume ( const LinphoneCall call)

Get the mesured record volume level (sent to remote) in dbm0.

Parameters
callThe call.
Returns
float Volume level in percentage.

◆ linphone_call_get_remote_address_as_string()

MS2_DEPRECATED char* linphone_call_get_remote_address_as_string ( const LinphoneCall call)

Returns the remote address associated to this call as a string.

The result string must be freed by user using ms_free().

Parameters
callLinphoneCall object.
Returns
the remote address as a string.
Deprecated:
06/07/2020 use linphone_call_get_remote_address() instead.

◆ linphone_call_get_speaker_muted()

bool_t linphone_call_get_speaker_muted ( const LinphoneCall call)

Get speaker muted state.

Parameters
callThe LinphoneCall object.
Returns
The speaker muted state.

◆ linphone_call_get_speaker_volume_gain()

float linphone_call_get_speaker_volume_gain ( const LinphoneCall call)

Get speaker volume gain.

If the sound backend supports it, the returned gain is equal to the gain set with the system mixer.

Parameters
callThe call.
Returns
Percentage of the max supported volume gain. Valid values are in [ 0.0 : 1.0 ]. In case of failure, a negative value is returned

◆ linphone_call_get_stats()

LinphoneCallStats* linphone_call_get_stats ( LinphoneCall call,
LinphoneStreamType  type 
)

Returns a copy of the call statistics for a particular stream type.

Parameters
callthe LinphoneCall
typethe LinphoneStreamType
Returns
a LinphoneCallStats object for the given stream or NULL if stream isn't available.

◆ linphone_call_get_text_stats()

LinphoneCallStats* linphone_call_get_text_stats ( LinphoneCall call)

Returns a copy of the call statistics for the text stream.

Parameters
callthe LinphoneCall
Returns
a LinphoneCallStats object for the text stream or NULL if it isn't available.

◆ linphone_call_get_video_source()

const LinphoneVideoSourceDescriptor* linphone_call_get_video_source ( const LinphoneCall call)

Gets the video source of a call.

Parameters
callThe LinphoneCall
Returns
The LinphoneVideoSourceDescriptor describing the video source that is set

◆ linphone_call_get_video_stats()

LinphoneCallStats* linphone_call_get_video_stats ( LinphoneCall call)

Returns a copy of the call statistics for the video stream.

Parameters
callthe LinphoneCall
Returns
a LinphoneCallStats object for the video stream or NULL if it isn't available.

◆ linphone_call_is_in_conference()

MS2_DEPRECATED bool_t linphone_call_is_in_conference ( const LinphoneCall call)

Return TRUE if this call is currently part of a conference.

Parameters
callThe LinphoneCall object
Returns
TRUE if part of a conference.
Deprecated:
21/09/2017 Use linphone_call_get_conference() instead.

◆ linphone_call_is_recording()

MS2_DEPRECATED bool_t linphone_call_is_recording ( LinphoneCall call)

Returns whether or not the call is currently being recorded.

Parameters
callLinphoneCall for which we can to know the recording state
Returns
TRUE if recording is in progress, FALSE otherwise
Deprecated:
15/09/2021 Use linphone_call_params_is_recording() instead.

◆ linphone_call_media_in_progress()

bool_t linphone_call_media_in_progress ( const LinphoneCall call)

Indicates whether an operation is in progress at the media side.

It can be a bad idea to initiate signaling operations (adding video, pausing the call, removing video, changing video parameters) while the media is busy in establishing the connection (typically ICE connectivity checks). It can result in failures generating loss of time in future operations in the call. Applications are invited to check this function after each call state change to decide whether certain operations are permitted or not.

Parameters
callthe LinphoneCall
Returns
TRUE if media is busy in establishing the connection, FALSE otherwise.

◆ linphone_call_notify_ringing()

void linphone_call_notify_ringing ( LinphoneCall call)

Starts the process of replying 180 Ringing.

This function is used in conjonction with linphone_core_enable_auto_send_ringing(). If the automatic sending of the 180 Ringing is disabled, this function needs to be called manually before the call timeouts.

Parameters
callThe LinphoneCall

◆ linphone_call_ogl_render()

void linphone_call_ogl_render ( const LinphoneCall call)

Calls generic OpenGL render for a given call.

Parameters
callThe LinphoneCall.

◆ linphone_call_redirect()

LinphoneStatus linphone_call_redirect ( LinphoneCall call,
const char *  redirect_uri 
)

Redirect the specified call to the given redirect URI.

Parameters
callThe LinphoneCall object
redirect_uriThe URI to redirect the call to
Returns
0 if successful, -1 on error.
Deprecated:
27/10/2020. Use linphone_call_redirect_to() instead.

◆ linphone_call_remove_callbacks()

void linphone_call_remove_callbacks ( LinphoneCall call,
LinphoneCallCbs cbs 
)

Remove a listener from a LinphoneCall.

Parameters
callLinphoneCall object.
cbsLinphoneCallCbs object to remove.

◆ linphone_call_send_info_message()

LinphoneStatus linphone_call_send_info_message ( LinphoneCall call,
const LinphoneInfoMessage info 
)

Sends an info message through an established call.

Parameters
callthe LinphoneCall
infothe LinphoneInfoMessage to send

◆ linphone_call_set_input_audio_device()

void linphone_call_set_input_audio_device ( LinphoneCall call,
LinphoneAudioDevice audio_device 
)

Sets the given LinphoneAudioDevice as input for this call only.

Parameters
callThe LinphoneCall
audio_deviceThe LinphoneAudioDevice. NULL does nothing.

◆ linphone_call_set_microphone_muted()

void linphone_call_set_microphone_muted ( LinphoneCall call,
bool_t  muted 
)

Set microphone muted state.

The boolean value given is applied logical-and with the value given to linphone_core_enable_mic().

Parameters
callThe LinphoneCall object.
mutedThe microphone muted state.
Warning
This method only mutes the call passed as argument. If this call is part of a conference, it is strongly recommended to call linphone_conference_set_microphone_muted() to ensure that the setting is correctly apply across all participants and the conference callbacks are called.

◆ linphone_call_set_microphone_volume_gain()

void linphone_call_set_microphone_volume_gain ( LinphoneCall call,
float  volume 
)

Set microphone volume gain.

If the sound backend supports it, the new gain will synchronized with the system mixer.

Parameters
callThe LinphoneCall object.
volumePercentage of the max supported gain. Valid values are in [ 0.0 : 1.0 ].

◆ linphone_call_set_next_video_frame_decoded_callback()

MS2_DEPRECATED void linphone_call_set_next_video_frame_decoded_callback ( LinphoneCall call,
LinphoneCallCbFunc  cb,
void *  user_data 
)
Deprecated:
23/05/2018

◆ linphone_call_set_output_audio_device()

void linphone_call_set_output_audio_device ( LinphoneCall call,
LinphoneAudioDevice audio_device 
)

Sets the given LinphoneAudioDevice as output for this call only.

Parameters
callThe LinphoneCall
audio_deviceThe LinphoneAudioDevice. NULL does nothing.

◆ linphone_call_set_params()

void linphone_call_set_params ( LinphoneCall call,
const LinphoneCallParams params 
)

Set call parameters - advanced and not recommended feature - use with caution.

Local call parameters applicable to an outgoing or incoming shall usually be passed to linphone_core_invite_address_with_params() or linphone_call_accept_with_params(). However, in some cases it might be desirable from a software design standpoint to modify local parameters outside of the application layer, typically in the purpose of implementing a custom logic including special headers in INVITE or 200Ok requests, driven by a call_state_changed listener method. This function accepts to assign a new LinphoneCallParams only in #LinphoneCallOutgoingInit and #LinphoneCallIncomingReceived states.

Parameters
callthe LinphoneCall object
paramsthe LinphoneCallParams object

◆ linphone_call_set_speaker_muted()

void linphone_call_set_speaker_muted ( LinphoneCall call,
bool_t  muted 
)

Set speaker muted state.

Parameters
callThe LinphoneCall object.
mutedThe speaker muted state.

◆ linphone_call_set_speaker_volume_gain()

void linphone_call_set_speaker_volume_gain ( LinphoneCall call,
float  volume 
)

Set speaker volume gain.

If the sound backend supports it, the new gain will synchronized with the system mixer.

Parameters
callThe call.
volumePercentage of the max supported gain. Valid values are in [ 0.0 : 1.0 ].

◆ linphone_call_set_video_source()

void linphone_call_set_video_source ( LinphoneCall call,
const LinphoneVideoSourceDescriptor descriptor 
)

Sets the video source of a call.

Parameters
callThe LinphoneCall
descriptorThe LinphoneVideoSourceDescriptor describing the video source to set

◆ linphone_call_start_recording()

void linphone_call_start_recording ( LinphoneCall call)

Starts call recording.

Video record is only available if this function is called in state StreamRunning. The output file where audio is recorded must be previously specified with linphone_call_params_set_record_file().

Parameters
callThe LinphoneCall object.

◆ linphone_call_stats_get_download_bandwidth()

float linphone_call_stats_get_download_bandwidth ( const LinphoneCallStats stats)

Get the bandwidth measurement of the received stream, expressed in kbit/s, including IP/UDP/RTP headers.

Parameters
statsLinphoneCallStats object
Returns
The bandwidth measurement of the received stream in kbit/s.

◆ linphone_call_stats_get_estimated_download_bandwidth()

float linphone_call_stats_get_estimated_download_bandwidth ( const LinphoneCallStats stats)

Get the estimated bandwidth measurement of the received stream, expressed in kbit/s, including IP/UDP/RTP headers.

Parameters
statsLinphoneCallStats object
Returns
The estimated bandwidth measurement of the received stream in kbit/s.

◆ linphone_call_stats_get_ice_state()

LinphoneIceState linphone_call_stats_get_ice_state ( const LinphoneCallStats stats)

Get the state of ICE processing.

Parameters
statsLinphoneCallStats object
Returns
The LinphoneIceState of ICE processing

◆ linphone_call_stats_get_ip_family_of_remote()

LinphoneAddressFamily linphone_call_stats_get_ip_family_of_remote ( const LinphoneCallStats stats)

Get the IP address family of the remote peer.

Parameters
statsLinphoneCallStats object
Returns
The IP address family LinphoneAddressFamily of the remote peer.

◆ linphone_call_stats_get_jitter_buffer_size_ms()

float linphone_call_stats_get_jitter_buffer_size_ms ( const LinphoneCallStats stats)

Get the jitter buffer size in ms.

Parameters
statsLinphoneCallStats object
Returns
The jitter buffer size in ms.

◆ linphone_call_stats_get_late_packets_cumulative_number()

uint64_t linphone_call_stats_get_late_packets_cumulative_number ( const LinphoneCallStats stats)

Gets the cumulative number of late packets.

Parameters
statsLinphoneCallStats object
Returns
The cumulative number of late packets

◆ linphone_call_stats_get_local_late_rate()

float linphone_call_stats_get_local_late_rate ( const LinphoneCallStats stats)

Gets the local late rate since last report.

Parameters
statsLinphoneCallStats object
Returns
The local late rate

◆ linphone_call_stats_get_local_loss_rate()

float linphone_call_stats_get_local_loss_rate ( const LinphoneCallStats stats)

Get the local loss rate since last report.

Parameters
statsLinphoneCallStats object
Returns
The local loss rate

◆ linphone_call_stats_get_receiver_interarrival_jitter()

float linphone_call_stats_get_receiver_interarrival_jitter ( const LinphoneCallStats stats)

Gets the remote reported interarrival jitter.

Parameters
statsLinphoneCallStats object
Returns
The interarrival jitter at last received receiver report

◆ linphone_call_stats_get_receiver_loss_rate()

float linphone_call_stats_get_receiver_loss_rate ( const LinphoneCallStats stats)

Gets the remote reported loss rate since last report.

Parameters
statsLinphoneCallStats object
Returns
The receiver loss rate

◆ linphone_call_stats_get_round_trip_delay()

float linphone_call_stats_get_round_trip_delay ( const LinphoneCallStats stats)

Get the round trip delay in s.

Parameters
statsLinphoneCallStats object
Returns
The round trip delay in s.

◆ linphone_call_stats_get_rtcp_download_bandwidth()

float linphone_call_stats_get_rtcp_download_bandwidth ( const LinphoneCallStats stats)

Get the bandwidth measurement of the received RTCP, expressed in kbit/s, including IP/UDP/RTP headers.

Parameters
statsLinphoneCallStats object
Returns
The bandwidth measurement of the received RTCP in kbit/s.

◆ linphone_call_stats_get_rtcp_upload_bandwidth()

float linphone_call_stats_get_rtcp_upload_bandwidth ( const LinphoneCallStats stats)

Get the bandwidth measurement of the sent RTCP, expressed in kbit/s, including IP/UDP/RTP headers.

Parameters
statsLinphoneCallStats object
Returns
The bandwidth measurement of the sent RTCP in kbit/s.

◆ linphone_call_stats_get_sender_interarrival_jitter()

float linphone_call_stats_get_sender_interarrival_jitter ( const LinphoneCallStats stats)

Gets the local interarrival jitter.

Parameters
statsLinphoneCallStats object
Returns
The interarrival jitter at last emitted sender report

◆ linphone_call_stats_get_sender_loss_rate()

float linphone_call_stats_get_sender_loss_rate ( const LinphoneCallStats stats)

Get the local loss rate since last report.

Parameters
statsLinphoneCallStats object
Returns
The sender loss rate

◆ linphone_call_stats_get_srtp_source()

LinphoneMediaEncryption linphone_call_stats_get_srtp_source ( const LinphoneCallStats stats)

Get the method used for SRTP key exchange.

Parameters
statsLinphoneCallStats object
Returns
The LinphoneMediaEncryption method used to exchange the SRTP keys

◆ linphone_call_stats_get_srtp_suite()

LinphoneSrtpSuite linphone_call_stats_get_srtp_suite ( const LinphoneCallStats stats)

Get the SRTP Cryto suite in use.

Parameters
statsLinphoneCallStats object
Returns
The SRTP crypto suite currently in use LinphoneSrtpSuite

◆ linphone_call_stats_get_type()

LinphoneStreamType linphone_call_stats_get_type ( const LinphoneCallStats stats)

Get the type of the stream the stats refer to.

Parameters
statsLinphoneCallStats object
Returns
The LinphoneStreamType the stats refer to

◆ linphone_call_stats_get_upload_bandwidth()

float linphone_call_stats_get_upload_bandwidth ( const LinphoneCallStats stats)

Get the bandwidth measurement of the sent stream, expressed in kbit/s, including IP/UDP/RTP headers.

Parameters
statsLinphoneCallStats object
Returns
The bandwidth measurement of the sent stream in kbit/s.

◆ linphone_call_stats_get_upnp_state()

LinphoneUpnpState linphone_call_stats_get_upnp_state ( const LinphoneCallStats stats)

Get the state of uPnP processing.

Parameters
statsLinphoneCallStats object
Returns
The LinphoneUpnpState of uPnP processing.

◆ linphone_call_stats_get_zrtp_auth_tag_algo()

const char* linphone_call_stats_get_zrtp_auth_tag_algo ( const LinphoneCallStats stats)

Get the ZRTP algorithm statistics details (authentication method)

Parameters
statsLinphoneCallStats object
Returns
The auth tag algo

◆ linphone_call_stats_get_zrtp_cipher_algo()

const char* linphone_call_stats_get_zrtp_cipher_algo ( const LinphoneCallStats stats)

Get the ZRTP algorithm statistics details (cipher)

Parameters
statsLinphoneCallStats object
Returns
The cipher algo

◆ linphone_call_stats_get_zrtp_hash_algo()

const char* linphone_call_stats_get_zrtp_hash_algo ( const LinphoneCallStats stats)

Get the ZRTP algorithm statistics details (hash function)

Parameters
statsLinphoneCallStats object
Returns
The hash algo

◆ linphone_call_stats_get_zrtp_key_agreement_algo()

const char* linphone_call_stats_get_zrtp_key_agreement_algo ( const LinphoneCallStats stats)

Get the ZRTP algorithm statistics details (key agreeement)

Parameters
statsLinphoneCallStats object
Returns
The key agreement algo

◆ linphone_call_stats_get_zrtp_sas_algo()

const char* linphone_call_stats_get_zrtp_sas_algo ( const LinphoneCallStats stats)

Get the ZRTP algorithm statistics details (SAS display)

Parameters
statsLinphoneCallStats object
Returns
The sas algo

◆ linphone_call_stats_is_zrtp_key_agreement_algo_post_quantum()

bool_t linphone_call_stats_is_zrtp_key_agreement_algo_post_quantum ( const LinphoneCallStats stats)

Did ZRTP used a Post Quantum algorithm to perform a key exchange.

Parameters
statsLinphoneCallStats object
Returns
TRUE if the ZRTP key exchange was performed using a PQ algo FALSE otherwise: ZRTP exchange not completed or not using a PQ algo

◆ linphone_call_stop_recording()

void linphone_call_stop_recording ( LinphoneCall call)

Stops call recording.

Parameters
callThe LinphoneCall object.

◆ linphone_call_transfer()

LinphoneStatus linphone_call_transfer ( LinphoneCall call,
const char *  refer_to 
)

Performs a simple call transfer to the specified destination.

The remote endpoint is expected to issue a new call to the specified destination. The current call remains active and thus can be later paused or terminated. It is possible to follow the progress of the transfer provided that transferee sends notification about it. In this case, the transfer_state_changed callback of the LinphoneCoreVTable is invoked to notify of the state of the new call at the other party. The notified states are #LinphoneCallOutgoingInit , #LinphoneCallOutgoingProgress, #LinphoneCallOutgoingRinging and #LinphoneCallConnected.

Parameters
callThe call to be transfered
refer_toThe destination the call is to be refered to.
Returns
0 on success, -1 on failure
Deprecated:
27/10/2020. Use linphone_call_transfer_to() instead.

◆ linphone_call_zoom_video()

MS2_DEPRECATED void linphone_call_zoom_video ( LinphoneCall call,
float  zoom_factor,
float *  cx,
float *  cy 
)

Perform a zoom of the video displayed during a call.

Parameters
callThe LinphoneCall object
zoom_factora floating point number describing the zoom factor. A value 1.0 corresponds to no zoom applied.
cxa floating point number pointing the horizontal center of the zoom to be applied. This value should be between 0.0 and 1.0.
cya floating point number pointing the vertical center of the zoom to be applied. This value should be between 0.0 and 1.0.
Deprecated:
16/10/2017 use linphone_call_zoom instead cx and cy are updated in return in case their coordinates were too excentrated for the requested zoom factor. The zoom ensures that all the screen is fullfilled with the video.