liblinphone  3.7.0
Data Structures | Macros | Typedefs | Enumerations | Functions
Controlling media parameters

Data Structures

struct  _LinphoneVideoPolicy
 

Macros

#define LINPHONE_FIND_PAYLOAD_IGNORE_RATE   -1
 
#define LINPHONE_FIND_PAYLOAD_IGNORE_CHANNELS   -1
 

Typedefs

typedef enum
_LinphoneMediaEncryption 
LinphoneMediaEncryption
 
typedef struct _LinphoneVideoPolicy LinphoneVideoPolicy
 

Enumerations

enum  _LinphoneMediaEncryption {
  LinphoneMediaEncryptionNone,
  LinphoneMediaEncryptionSRTP,
  LinphoneMediaEncryptionZRTP
}
 

Functions

void linphone_core_enable_adaptive_rate_control (LinphoneCore *lc, bool_t enabled)
 
bool_t linphone_core_adaptive_rate_control_enabled (const LinphoneCore *lc)
 
void linphone_core_set_download_bandwidth (LinphoneCore *lc, int bw)
 
void linphone_core_set_upload_bandwidth (LinphoneCore *lc, int bw)
 
int linphone_core_get_download_bandwidth (const LinphoneCore *lc)
 
int linphone_core_get_upload_bandwidth (const LinphoneCore *lc)
 
void linphone_core_set_download_ptime (LinphoneCore *lc, int ptime)
 
int linphone_core_get_download_ptime (LinphoneCore *lc)
 
void linphone_core_set_upload_ptime (LinphoneCore *lc, int ptime)
 
int linphone_core_get_upload_ptime (LinphoneCore *lc)
 
const MSList * linphone_core_get_audio_codecs (const LinphoneCore *lc)
 
const MSList * linphone_core_get_video_codecs (const LinphoneCore *lc)
 
int linphone_core_set_audio_codecs (LinphoneCore *lc, MSList *codecs)
 
int linphone_core_set_video_codecs (LinphoneCore *lc, MSList *codecs)
 
int linphone_core_get_audio_jittcomp (LinphoneCore *lc)
 
int linphone_core_get_video_jittcomp (LinphoneCore *lc)
 
int linphone_core_get_nortp_timeout (const LinphoneCore *lc)
 
void linphone_core_set_audio_jittcomp (LinphoneCore *lc, int value)
 
void linphone_core_set_video_jittcomp (LinphoneCore *lc, int value)
 
void linphone_core_set_audio_port_range (LinphoneCore *lc, int min_port, int max_port)
 
void linphone_core_set_video_port_range (LinphoneCore *lc, int min_port, int max_port)
 
void linphone_core_set_nortp_timeout (LinphoneCore *lc, int nortp_timeout)
 
bool_t linphone_core_get_use_info_for_dtmf (LinphoneCore *lc)
 
void linphone_core_set_use_info_for_dtmf (LinphoneCore *lc, bool_t use_info)
 
bool_t linphone_core_get_use_rfc2833_for_dtmf (LinphoneCore *lc)
 
void linphone_core_set_use_rfc2833_for_dtmf (LinphoneCore *lc, bool_t use_rfc2833)
 
int linphone_core_get_play_level (LinphoneCore *lc)
 
int linphone_core_get_ring_level (LinphoneCore *lc)
 
int linphone_core_get_rec_level (LinphoneCore *lc)
 
void linphone_core_set_ring_level (LinphoneCore *lc, int level)
 
void linphone_core_set_mic_gain_db (LinphoneCore *lc, float gaindb)
 
float linphone_core_get_mic_gain_db (LinphoneCore *lc)
 
void linphone_core_set_playback_gain_db (LinphoneCore *lc, float gaindb)
 
float linphone_core_get_playback_gain_db (LinphoneCore *lc)
 
void linphone_core_set_play_level (LinphoneCore *lc, int level)
 
void linphone_core_set_rec_level (LinphoneCore *lc, int level)
 
bool_t linphone_core_sound_device_can_capture (LinphoneCore *lc, const char *devid)
 
bool_t linphone_core_sound_device_can_playback (LinphoneCore *lc, const char *devid)
 
int linphone_core_set_ringer_device (LinphoneCore *lc, const char *devid)
 
int linphone_core_set_playback_device (LinphoneCore *lc, const char *devid)
 
int linphone_core_set_capture_device (LinphoneCore *lc, const char *devid)
 
const char * linphone_core_get_ringer_device (LinphoneCore *lc)
 
const char * linphone_core_get_playback_device (LinphoneCore *lc)
 
const char * linphone_core_get_capture_device (LinphoneCore *lc)
 
const char ** linphone_core_get_sound_devices (LinphoneCore *lc)
 
const char ** linphone_core_get_video_devices (const LinphoneCore *lc)
 
void linphone_core_set_ring (LinphoneCore *lc, const char *path)
 
const char * linphone_core_get_ring (const LinphoneCore *lc)
 
void linphone_core_set_ringback (LinphoneCore *lc, const char *path)
 
const char * linphone_core_get_ringback (const LinphoneCore *lc)
 
void linphone_core_enable_echo_cancellation (LinphoneCore *lc, bool_t val)
 
bool_t linphone_core_echo_cancellation_enabled (LinphoneCore *lc)
 
void linphone_core_send_dtmf (LinphoneCore *lc, char dtmf)
 
void linphone_core_set_video_policy (LinphoneCore *lc, const LinphoneVideoPolicy *policy)
 
const LinphoneVideoPolicylinphone_core_get_video_policy (LinphoneCore *lc)
 
void linphone_core_enable_video_preview (LinphoneCore *lc, bool_t val)
 
bool_t linphone_core_video_preview_enabled (const LinphoneCore *lc)
 
void linphone_core_enable_self_view (LinphoneCore *lc, bool_t val)
 
bool_t linphone_core_self_view_enabled (const LinphoneCore *lc)
 
int linphone_core_set_video_device (LinphoneCore *lc, const char *id)
 
const char * linphone_core_get_video_device (const LinphoneCore *lc)
 
unsigned long linphone_core_get_native_video_window_id (const LinphoneCore *lc)
 
void linphone_core_set_native_video_window_id (LinphoneCore *lc, unsigned long id)
 
unsigned long linphone_core_get_native_preview_window_id (const LinphoneCore *lc)
 
void linphone_core_set_native_preview_window_id (LinphoneCore *lc, unsigned long id)
 
int linphone_core_get_device_rotation (LinphoneCore *lc)
 
void linphone_core_set_device_rotation (LinphoneCore *lc, int rotation)
 
const MSVideoSizeDef * linphone_core_get_supported_video_sizes (LinphoneCore *lc)
 
void linphone_core_set_preferred_video_size (LinphoneCore *lc, MSVideoSize vsize)
 
void linphone_core_set_preferred_video_size_by_name (LinphoneCore *lc, const char *name)
 
MSVideoSize linphone_core_get_preferred_video_size (LinphoneCore *lc)
 
void linphone_core_play_dtmf (LinphoneCore *lc, char dtmf, int duration_ms)
 
void linphone_core_stop_dtmf (LinphoneCore *lc)
 
void linphone_core_set_mtu (LinphoneCore *lc, int mtu)
 
void linphone_core_stop_ringing (LinphoneCore *lc)
 
const char * linphone_media_encryption_to_string (LinphoneMediaEncryption menc)
 
void linphone_call_enable_echo_cancellation (LinphoneCall *call, bool_t val)
 
bool_t linphone_call_echo_cancellation_enabled (LinphoneCall *lc)
 
void linphone_call_enable_echo_limiter (LinphoneCall *call, bool_t val)
 
bool_t linphone_call_echo_limiter_enabled (const LinphoneCall *call)
 
LinphoneCallParamslinphone_core_create_default_call_parameters (LinphoneCore *lc)
 
void linphone_core_enable_dns_srv (LinphoneCore *lc, bool_t enable)
 
bool_t linphone_core_dns_srv_enabled (const LinphoneCore *lc)
 
bool_t linphone_core_payload_type_enabled (LinphoneCore *lc, const PayloadType *pt)
 
int linphone_core_enable_payload_type (LinphoneCore *lc, PayloadType *pt, bool_t enable)
 
PayloadType * linphone_core_find_payload_type (LinphoneCore *lc, const char *type, int rate, int channels)
 
void linphone_core_enable_audio_adaptive_jittcomp (LinphoneCore *lc, bool_t enable)
 
bool_t linphone_core_audio_adaptive_jittcomp_enabled (LinphoneCore *lc)
 
void linphone_core_enable_video_adaptive_jittcomp (LinphoneCore *lc, bool_t enable)
 
bool_t linphone_core_video_adaptive_jittcomp_enabled (LinphoneCore *lc)
 
void linphone_core_reload_sound_devices (LinphoneCore *lc)
 
void linphone_core_enable_echo_limiter (LinphoneCore *lc, bool_t val)
 
bool_t linphone_core_echo_limiter_enabled (const LinphoneCore *lc)
 
void linphone_core_enable_mic (LinphoneCore *lc, bool_t enable)
 
bool_t linphone_core_mic_enabled (LinphoneCore *lc)
 
void linphone_core_enable_video (LinphoneCore *lc, bool_t vcap_enabled, bool_t display_enabled)
 
bool_t linphone_core_video_enabled (LinphoneCore *lc)
 
void linphone_core_enable_video_capture (LinphoneCore *lc, bool_t enable)
 
void linphone_core_enable_video_display (LinphoneCore *lc, bool_t enable)
 
bool_t linphone_core_video_capture_enabled (LinphoneCore *lc)
 
bool_t linphone_core_video_display_enabled (LinphoneCore *lc)
 
void linphone_core_reload_video_devices (LinphoneCore *lc)
 
int linphone_core_set_static_picture (LinphoneCore *lc, const char *path)
 
const char * linphone_core_get_static_picture (LinphoneCore *lc)
 
int linphone_core_set_static_picture_fps (LinphoneCore *lc, float fps)
 
float linphone_core_get_static_picture_fps (LinphoneCore *lc)
 
void linphone_core_use_preview_window (LinphoneCore *lc, bool_t yesno)
 
int linphone_core_set_media_encryption (LinphoneCore *lc, LinphoneMediaEncryption menc)
 
LinphoneMediaEncryption linphone_core_get_media_encryption (LinphoneCore *lc)
 
bool_t linphone_core_is_media_encryption_mandatory (LinphoneCore *lc)
 
void linphone_core_set_media_encryption_mandatory (LinphoneCore *lc, bool_t m)
 
void linphone_core_set_video_display_filter (LinphoneCore *lc, const char *filter_name)
 
const char * linphone_core_get_video_display_filter (LinphoneCore *lc)
 

Detailed Description

Macro Definition Documentation

#define LINPHONE_FIND_PAYLOAD_IGNORE_RATE   -1

Wildcard value used by linphone_core_find_payload_type to ignore rate in search algorithm

#define LINPHONE_FIND_PAYLOAD_IGNORE_CHANNELS   -1

Wildcard value used by linphone_core_find_payload_type to ignore channel in search algorithm

Typedef Documentation

Enum describing type of media encryption types.

Structure describing policy regarding video streams establishments.

Enumeration Type Documentation

Enum describing type of media encryption types.

Enumerator
LinphoneMediaEncryptionNone 

No media encryption is used

LinphoneMediaEncryptionSRTP 

Use SRTP media encryption

LinphoneMediaEncryptionZRTP 

Use ZRTP media encryption

Function Documentation

void linphone_core_enable_adaptive_rate_control ( LinphoneCore lc,
bool_t  enabled 
)

Enable adaptive rate control.

Adaptive rate control consists in using RTCP feedback provided information to dynamically control the output bitrate of the audio and video encoders, so that we can adapt to the network conditions and available bandwidth. Control of the audio encoder is done in case of audio-only call, and control of the video encoder is done for audio & video calls. Adaptive rate control feature is enabled by default.

bool_t linphone_core_adaptive_rate_control_enabled ( const LinphoneCore lc)

Returns whether adaptive rate control is enabled.

See linphone_core_enable_adaptive_rate_control().

void linphone_core_set_download_bandwidth ( LinphoneCore lc,
int  bw 
)

Sets maximum available download bandwidth This is IP bandwidth, in kbit/s. This information is used signaled to other parties during calls (within SDP messages) so that the remote end can have sufficient knowledge to properly configure its audio & video codec output bitrate to not overflow available bandwidth.

Parameters
lcthe LinphoneCore object
bwthe bandwidth in kbits/s, 0 for infinite
void linphone_core_set_upload_bandwidth ( LinphoneCore lc,
int  bw 
)

Sets maximum available upload bandwidth This is IP bandwidth, in kbit/s. This information is used by liblinphone together with remote side available bandwidth signaled in SDP messages to properly configure audio & video codec's output bitrate.

Parameters
lcthe LinphoneCore object
bwthe bandwidth in kbits/s, 0 for infinite
int linphone_core_get_download_bandwidth ( const LinphoneCore lc)

Retrieve the maximum available download bandwidth. This value was set by linphone_core_set_download_bandwidth().

int linphone_core_get_upload_bandwidth ( const LinphoneCore lc)

Retrieve the maximum available upload bandwidth. This value was set by linphone_core_set_upload_bandwidth().

void linphone_core_set_download_ptime ( LinphoneCore lc,
int  ptime 
)

Set audio packetization time linphone expects to receive from peer. A value of zero means that ptime is not specified.

int linphone_core_get_download_ptime ( LinphoneCore lc)

Get audio packetization time linphone expects to receive from peer. A value of zero means that ptime is not specified.

void linphone_core_set_upload_ptime ( LinphoneCore lc,
int  ptime 
)

Set audio packetization time linphone will send (in absence of requirement from peer) A value of 0 stands for the current codec default packetization time.

int linphone_core_get_upload_ptime ( LinphoneCore lc)

Set audio packetization time linphone will send (in absence of requirement from peer) A value of 0 stands for the current codec default packetization time.

const MSList* linphone_core_get_audio_codecs ( const LinphoneCore lc)

Returns the list of available audio codecs.

This list is unmodifiable. The ->data field of the MSList points a PayloadType structure holding the codec information. It is possible to make copy of the list with ms_list_copy() in order to modify it (such as the order of codecs).

const MSList* linphone_core_get_video_codecs ( const LinphoneCore lc)

Returns the list of available video codecs.

This list is unmodifiable. The ->data field of the MSList points a PayloadType structure holding the codec information. It is possible to make copy of the list with ms_list_copy() in order to modify it (such as the order of codecs).

int linphone_core_set_audio_codecs ( LinphoneCore lc,
MSList *  codecs 
)

Sets the list of audio codecs.

The list is taken by the LinphoneCore thus the application should not free it. This list is made of struct PayloadType describing the codec parameters.

int linphone_core_set_video_codecs ( LinphoneCore lc,
MSList *  codecs 
)

Sets the list of video codecs.

The list is taken by the LinphoneCore thus the application should not free it. This list is made of struct PayloadType describing the codec parameters.

int linphone_core_get_audio_jittcomp ( LinphoneCore lc)

Returns the nominal audio jitter buffer size in milliseconds.

int linphone_core_get_video_jittcomp ( LinphoneCore lc)

Returns the nominal video jitter buffer size in milliseconds.

int linphone_core_get_nortp_timeout ( const LinphoneCore lc)

Returns the value in seconds of the no-rtp timeout.

When no RTP or RTCP packets have been received for a while LinphoneCore will consider the call is broken (remote end crashed or disconnected from the network), and thus will terminate the call. The no-rtp timeout is the duration above which the call is considered broken.

void linphone_core_set_audio_jittcomp ( LinphoneCore lc,
int  value 
)

Sets the nominal audio jitter buffer size in milliseconds.

void linphone_core_set_video_jittcomp ( LinphoneCore lc,
int  value 
)

Sets the nominal video jitter buffer size in milliseconds.

void linphone_core_set_audio_port_range ( LinphoneCore lc,
int  min_port,
int  max_port 
)

Sets the UDP port range from which to randomly select the port used for audio streaming.

void linphone_core_set_video_port_range ( LinphoneCore lc,
int  min_port,
int  max_port 
)

Sets the UDP port range from which to randomly select the port used for video streaming.

void linphone_core_set_nortp_timeout ( LinphoneCore lc,
int  nortp_timeout 
)

Sets the no-rtp timeout value in seconds.

See linphone_core_get_nortp_timeout() for details.

bool_t linphone_core_get_use_info_for_dtmf ( LinphoneCore lc)

Indicates whether SIP INFO is used for sending digits.

void linphone_core_set_use_info_for_dtmf ( LinphoneCore lc,
bool_t  use_info 
)

Sets whether SIP INFO is to be used for sending digits.

bool_t linphone_core_get_use_rfc2833_for_dtmf ( LinphoneCore lc)

Indicates whether RFC2833 is used for sending digits.

void linphone_core_set_use_rfc2833_for_dtmf ( LinphoneCore lc,
bool_t  use_rfc2833 
)

Sets whether RFC2833 is to be used for sending digits.

int linphone_core_get_play_level ( LinphoneCore lc)

Get playback sound level in 0-100 scale.

int linphone_core_get_ring_level ( LinphoneCore lc)

Get ring sound level in 0-100 scale

int linphone_core_get_rec_level ( LinphoneCore lc)

Get sound capture level in 0-100 scale

void linphone_core_set_ring_level ( LinphoneCore lc,
int  level 
)

Set sound ring level in 0-100 scale

void linphone_core_set_mic_gain_db ( LinphoneCore lc,
float  gaindb 
)

Allow to control microphone level: gain in db

float linphone_core_get_mic_gain_db ( LinphoneCore lc)

Get microphone gain in db.

void linphone_core_set_playback_gain_db ( LinphoneCore lc,
float  gaindb 
)

Allow to control play level before entering sound card: gain in db

float linphone_core_get_playback_gain_db ( LinphoneCore lc)

Get playback gain in db before entering sound card.

void linphone_core_set_play_level ( LinphoneCore lc,
int  level 
)

Set sound playback level in 0-100 scale

void linphone_core_set_rec_level ( LinphoneCore lc,
int  level 
)

Set sound capture level in 0-100 scale

bool_t linphone_core_sound_device_can_capture ( LinphoneCore lc,
const char *  devid 
)

Returns true if the specified sound device can capture sound.

Parameters
lcThe LinphoneCore object
devidthe device name as returned by linphone_core_get_sound_devices()
bool_t linphone_core_sound_device_can_playback ( LinphoneCore lc,
const char *  devid 
)

Returns true if the specified sound device can play sound.

Parameters
lcThe LinphoneCore object
devidthe device name as returned by linphone_core_get_sound_devices()
int linphone_core_set_ringer_device ( LinphoneCore lc,
const char *  devid 
)

Sets the sound device used for ringing.

Parameters
lcThe LinphoneCore object
devidthe device name as returned by linphone_core_get_sound_devices()
int linphone_core_set_playback_device ( LinphoneCore lc,
const char *  devid 
)

Sets the sound device used for playback.

Parameters
lcThe LinphoneCore object
devidthe device name as returned by linphone_core_get_sound_devices()
int linphone_core_set_capture_device ( LinphoneCore lc,
const char *  devid 
)

Sets the sound device used for capture.

Parameters
lcThe LinphoneCore object
devidthe device name as returned by linphone_core_get_sound_devices()
const char* linphone_core_get_ringer_device ( LinphoneCore lc)

Returns the name of the currently assigned sound device for ringing.

Parameters
lcThe LinphoneCore object
const char* linphone_core_get_playback_device ( LinphoneCore lc)

Returns the name of the currently assigned sound device for playback.

Parameters
lcThe LinphoneCore object
const char* linphone_core_get_capture_device ( LinphoneCore lc)

Returns the name of the currently assigned sound device for capture.

Parameters
lcThe LinphoneCore object
const char** linphone_core_get_sound_devices ( LinphoneCore lc)

Returns an unmodifiable array of available sound devices.

The array is NULL terminated.

Parameters
lcThe LinphoneCore object
const char** linphone_core_get_video_devices ( const LinphoneCore lc)

Returns an unmodifiable array of available video capture devices.

The array is NULL terminated.

void linphone_core_set_ring ( LinphoneCore lc,
const char *  path 
)

Sets the path to a wav file used for ringing.

Parameters
pathThe file must be a wav 16bit linear. Local ring is disabled if null
lcThe LinphoneCore object
const char* linphone_core_get_ring ( const LinphoneCore lc)

Returns the path to the wav file used for ringing.

Parameters
lcThe LinphoneCore object
void linphone_core_set_ringback ( LinphoneCore lc,
const char *  path 
)

Sets the path to a wav file used for ringing back.

Ringback means the ring that is heard when it's ringing at the remote party. The file must be a wav 16bit linear.

const char* linphone_core_get_ringback ( const LinphoneCore lc)

Returns the path to the wav file used for ringing back.

void linphone_core_enable_echo_cancellation ( LinphoneCore lc,
bool_t  val 
)

Enables or disable echo cancellation. Value is saved an used for subsequent calls

bool_t linphone_core_echo_cancellation_enabled ( LinphoneCore lc)

Returns TRUE if echo cancellation is enabled.

void linphone_core_send_dtmf ( LinphoneCore lc,
char  dtmf 
)

Send the specified dtmf.

This function only works during calls. The dtmf is automatically played to the user.

Parameters
lcThe LinphoneCore object
dtmfThe dtmf name specified as a char, such as '0', '#' etc...
void linphone_core_set_video_policy ( LinphoneCore lc,
const LinphoneVideoPolicy policy 
)

Sets the default policy for video. This policy defines whether:

  • video shall be initiated by default for outgoing calls
  • video shall be accepter by default for incoming calls
const LinphoneVideoPolicy* linphone_core_get_video_policy ( LinphoneCore lc)

Get the default policy for video. See linphone_core_set_video_policy() for more details.

void linphone_core_enable_video_preview ( LinphoneCore lc,
bool_t  val 
)

Controls video preview enablement.

Video preview refers to the action of displaying the local webcam image to the user while not in call.

bool_t linphone_core_video_preview_enabled ( const LinphoneCore lc)

Returns TRUE if video previewing is enabled.

void linphone_core_enable_self_view ( LinphoneCore lc,
bool_t  val 
)

Enables or disable self view during calls.

Self-view refers to having local webcam image inserted in corner of the video window during calls. This function works at any time, including during calls.

bool_t linphone_core_self_view_enabled ( const LinphoneCore lc)

Returns TRUE if self-view is enabled, FALSE otherwise.

Refer to linphone_core_enable_self_view() for details.

int linphone_core_set_video_device ( LinphoneCore lc,
const char *  id 
)

Sets the active video device.

Parameters
lcThe LinphoneCore object
idthe name of the video device as returned by linphone_core_get_video_devices()
const char* linphone_core_get_video_device ( const LinphoneCore lc)

Returns the name of the currently active video device.

Parameters
lcThe LinphoneCore object
unsigned long linphone_core_get_native_video_window_id ( const LinphoneCore lc)

Returns the native window handle of the video window, casted as an unsigned long.

void linphone_core_set_native_video_window_id ( LinphoneCore lc,
unsigned long  id 
)

Set the native video window id where the video is to be displayed. For MacOS, Linux, Windows: if not set or zero the core will create its own window, unless the special id -1 is given.

unsigned long linphone_core_get_native_preview_window_id ( const LinphoneCore lc)

Returns the native window handle of the video preview window, casted as an unsigned long.

void linphone_core_set_native_preview_window_id ( LinphoneCore lc,
unsigned long  id 
)

Set the native window id where the preview video (local camera) is to be displayed. This has to be used in conjonction with linphone_core_use_preview_window(). MacOS, Linux, Windows: if not set or zero the core will create its own window, unless the special id -1 is given.

int linphone_core_get_device_rotation ( LinphoneCore lc)

returns current device orientation

void linphone_core_set_device_rotation ( LinphoneCore lc,
int  rotation 
)

Tells the core the device current orientation. This can be used by capture filters on mobile devices to select between portrait/landscape mode and to produce properly oriented images. The exact meaning of the value in rotation if left to each device specific implementations.

Parameters
lcobject.
rotation. IOS supported values are 0 for UIInterfaceOrientationPortrait and 270 for UIInterfaceOrientationLandscapeRight.
const MSVideoSizeDef* linphone_core_get_supported_video_sizes ( LinphoneCore lc)

Returns the zero terminated table of supported video resolutions.

void linphone_core_set_preferred_video_size ( LinphoneCore lc,
MSVideoSize  vsize 
)

Sets the preferred video size.

This applies only to the stream that is captured and sent to the remote party, since we accept all standard video size on the receive path.

void linphone_core_set_preferred_video_size_by_name ( LinphoneCore lc,
const char *  name 
)

Sets the preferred video size by its name.

This is identical to linphone_core_set_preferred_video_size() except that it takes the name of the video resolution as input. Video resolution names are: qcif, svga, cif, vga, 4cif, svga ...

MSVideoSize linphone_core_get_preferred_video_size ( LinphoneCore lc)

Returns the current preferred video size for sending.

void linphone_core_play_dtmf ( LinphoneCore lc,
char  dtmf,
int  duration_ms 
)

Plays a dtmf sound to the local user.

Parameters
lcLinphoneCore
dtmfDTMF to play ['0'..'16'] | '#' | '#'
duration_msduration in ms, -1 means play until next further call to linphone_core_stop_dtmf()
void linphone_core_stop_dtmf ( LinphoneCore lc)

Stops playing a dtmf started by linphone_core_play_dtmf().

void linphone_core_set_mtu ( LinphoneCore lc,
int  mtu 
)

Sets the maximum transmission unit size in bytes. This information is useful for sending RTP packets. Default value is 1500.

void linphone_core_stop_ringing ( LinphoneCore lc)

Whenever the liblinphone is playing a ring to advertise an incoming call or ringback of an outgoing call, this function stops the ringing. Typical use is to stop ringing when the user requests to ignore the call.

Parameters
lcThe LinphoneCore object
const char* linphone_media_encryption_to_string ( LinphoneMediaEncryption  menc)

Convert enum member to string.

void linphone_call_enable_echo_cancellation ( LinphoneCall call,
bool_t  val 
)

Enables or disable echo cancellation for this call

Parameters
call
val
bool_t linphone_call_echo_cancellation_enabled ( LinphoneCall lc)

Returns TRUE if echo cancellation is enabled.

void linphone_call_enable_echo_limiter ( LinphoneCall call,
bool_t  val 
)

Enables or disable echo limiter for this call

Parameters
call
val
bool_t linphone_call_echo_limiter_enabled ( const LinphoneCall call)

Returns TRUE if echo limiter is enabled.

LinphoneCallParams* linphone_core_create_default_call_parameters ( LinphoneCore lc)

Get default call parameters reflecting current linphone core configuration

Parameters
LinphoneCoreobject
Returns
LinphoneCallParams
void linphone_core_enable_dns_srv ( LinphoneCore lc,
bool_t  enable 
)

Enable or disable DNS SRV resolution.

Parameters
[in]lcLinphoneCore object.
[in]enableTRUE to enable DNS SRV resolution, FALSE to disable it.
bool_t linphone_core_dns_srv_enabled ( const LinphoneCore lc)

Tells whether DNS SRV resolution is enabled.

Parameters
[in]lcLinphoneCore object.
Returns
TRUE if DNS SRV resolution is enabled, FALSE if disabled.
bool_t linphone_core_payload_type_enabled ( LinphoneCore lc,
const PayloadType *  pt 
)

Tells whether the specified payload type is enabled.

Parameters
[in]lcLinphoneCore object.
[in]ptThe #PayloadType we want to know is enabled or not.
Returns
TRUE if the payload type is enabled, FALSE if disabled.
int linphone_core_enable_payload_type ( LinphoneCore lc,
PayloadType *  pt,
bool_t  enable 
)

Enable or disable the use of the specified payload type.

Parameters
[in]lcLinphoneCore object.
[in]ptThe #PayloadType to enable or disable. It can be retrieved using linphone_core_find_payload_type
[in]enableTRUE to enable the payload type, FALSE to disable it.
Returns
0 if successful, any other value otherwise.
PayloadType* linphone_core_find_payload_type ( LinphoneCore lc,
const char *  type,
int  rate,
int  channels 
)

Get payload type from mime type and clock rate

This function searches in audio and video codecs for the given payload type name and clockrate.

Parameters
lcLinphoneCore object
typepayload mime type (I.E SPEEX, PCMU, VP8)
ratecan be LINPHONE_FIND_PAYLOAD_IGNORE_RATE
channelsnumber of channels, can be LINPHONE_FIND_PAYLOAD_IGNORE_CHANNELS
Returns
Returns NULL if not found.
void linphone_core_enable_audio_adaptive_jittcomp ( LinphoneCore lc,
bool_t  enable 
)

Enable or disable the audio adaptive jitter compensation.

Parameters
[in]lcLinphoneCore object
[in]enableTRUE to enable the audio adaptive jitter compensation, FALSE to disable it.
bool_t linphone_core_audio_adaptive_jittcomp_enabled ( LinphoneCore lc)

Tells whether the audio adaptive jitter compensation is enabled.

Parameters
[in]lcLinphoneCore object
Returns
TRUE if the audio adaptive jitter compensation is enabled, FALSE otherwise.
void linphone_core_enable_video_adaptive_jittcomp ( LinphoneCore lc,
bool_t  enable 
)

Enable or disable the video adaptive jitter compensation.

Parameters
[in]lcLinphoneCore object
[in]enableTRUE to enable the video adaptive jitter compensation, FALSE to disable it.
bool_t linphone_core_video_adaptive_jittcomp_enabled ( LinphoneCore lc)

Tells whether the video adaptive jitter compensation is enabled.

Parameters
[in]lcLinphoneCore object
Returns
TRUE if the video adaptive jitter compensation is enabled, FALSE otherwise.
void linphone_core_reload_sound_devices ( LinphoneCore lc)

Update detection of sound devices.

Use this function when the application is notified of USB plug events, so that list of available hardwares for sound playback and capture is updated.

Parameters
[in]lcLinphoneCore object.
void linphone_core_enable_echo_limiter ( LinphoneCore lc,
bool_t  val 
)

Enables or disable echo limiter.

Parameters
[in]lcLinphoneCore object.
[in]valTRUE to enable echo limiter, FALSE to disable it.
bool_t linphone_core_echo_limiter_enabled ( const LinphoneCore lc)

Tells whether echo limiter is enabled.

Parameters
[in]lcLinphoneCore object.
Returns
TRUE if the echo limiter is enabled, FALSE otherwise.
void linphone_core_enable_mic ( LinphoneCore lc,
bool_t  enable 
)

Enable or disable the microphone.

Parameters
[in]lcLinphoneCore object
[in]enableTRUE to enable the microphone, FALSE to disable it.
bool_t linphone_core_mic_enabled ( LinphoneCore lc)

Tells whether the microphone is enabled.

Parameters
[in]lcLinphoneCore object
Returns
TRUE if the microphone is enabled, FALSE if disabled.
void linphone_core_enable_video ( LinphoneCore lc,
bool_t  vcap_enabled,
bool_t  display_enabled 
)

Enables video globally.

This function does not have any effect during calls. It just indicates LinphoneCore to initiate future calls with video or not. The two boolean parameters indicate in which direction video is enabled. Setting both to false disables video entirely.

Parameters
lcThe LinphoneCore object
vcap_enabledindicates whether video capture is enabled
display_enabledindicates whether video display should be shown
Deprecated:
Use linphone_core_enable_video_capture and linphone_core_enable_video_display instead.
bool_t linphone_core_video_enabled ( LinphoneCore lc)

Returns TRUE if video is enabled, FALSE otherwise.

Deprecated:
Use linphone_core_video_capture_enabled and linphone_core_video_display_enabled instead.
void linphone_core_enable_video_capture ( LinphoneCore lc,
bool_t  enable 
)

Enable or disable video capture.

This function does not have any effect during calls. It just indicates the LinphoneCore to initiate future calls with video capture or not.

Parameters
[in]lcLinphoneCore object.
[in]enableTRUE to enable video capture, FALSE to disable it.
void linphone_core_enable_video_display ( LinphoneCore lc,
bool_t  enable 
)

Enable or disable video display.

This function does not have any effect during calls. It just indicates the LinphoneCore to initiate future calls with video display or not.

Parameters
[in]lcLinphoneCore object.
[in]enableTRUE to enable video display, FALSE to disable it.
bool_t linphone_core_video_capture_enabled ( LinphoneCore lc)

Tells whether video capture is enabled.

Parameters
[in]lcLinphoneCore object.
Returns
TRUE if video capture is enabled, FALSE if disabled.
bool_t linphone_core_video_display_enabled ( LinphoneCore lc)

Tells whether video display is enabled.

Parameters
[in]lcLinphoneCore object.
Returns
TRUE if video display is enabled, FALSE if disabled.
void linphone_core_reload_video_devices ( LinphoneCore lc)

Update detection of camera devices.

Use this function when the application is notified of USB plug events, so that list of available hardwares for video capture is updated.

Parameters
[in]lcLinphoneCore object.
int linphone_core_set_static_picture ( LinphoneCore lc,
const char *  path 
)

Set the path to the image file to stream when "Static picture" is set as the video device.

Parameters
[in]lcLinphoneCore object.
[in]pathThe path to the image file to use.
const char* linphone_core_get_static_picture ( LinphoneCore lc)

Get the path to the image file streamed when "Static picture" is set as the video device.

Parameters
[in]lcLinphoneCore object.
Returns
The path to the image file streamed when "Static picture" is set as the video device.
int linphone_core_set_static_picture_fps ( LinphoneCore lc,
float  fps 
)

Set the frame rate for static picture.

Parameters
[in]lcLinphoneCore object.
[in]fpsThe new frame rate to use for static picture.
float linphone_core_get_static_picture_fps ( LinphoneCore lc)

Get the frame rate for static picture

Parameters
[in]lcLinphoneCore object.
Returns
The frame rate used for static picture.
void linphone_core_use_preview_window ( LinphoneCore lc,
bool_t  yesno 
)

Tells the core to use a separate window for local camera preview video, instead of inserting local view within the remote video window.

Parameters
[in]lcLinphoneCore object.
[in]yesnoTRUE to use a separate window, FALSE to insert the preview in the remote video window.
int linphone_core_set_media_encryption ( LinphoneCore lc,
LinphoneMediaEncryption  menc 
)

Choose the media encryption policy to be used for RTP packets.

Parameters
[in]lcLinphoneCore object.
[in]mencThe media encryption policy to be used.
Returns
0 if successful, any other value otherwise.
LinphoneMediaEncryption linphone_core_get_media_encryption ( LinphoneCore lc)

Get the media encryption policy being used for RTP packets.

Parameters
[in]lcLinphoneCore object.
Returns
The media encryption policy being used.
bool_t linphone_core_is_media_encryption_mandatory ( LinphoneCore lc)

Get behaviour when encryption parameters negociation fails on outgoing call.

Parameters
[in]lcLinphoneCore object.
Returns
TRUE means the call will fail; FALSE means an INVITE will be resent with encryption disabled.
void linphone_core_set_media_encryption_mandatory ( LinphoneCore lc,
bool_t  m 
)

Define behaviour when encryption parameters negociation fails on outgoing call.

Parameters
[in]lcLinphoneCore object.
[in]mIf set to TRUE call will fail; if set to FALSE will resend an INVITE with encryption disabled.
void linphone_core_set_video_display_filter ( LinphoneCore lc,
const char *  filter_name 
)

Set the name of the mediastreamer2 filter to be used for rendering video. This is for advanced users of the library, mainly to workaround hardware/driver bugs.

const char* linphone_core_get_video_display_filter ( LinphoneCore lc)

Get the name of the mediastreamer2 filter used for rendering video.