forked from mirrors/linphone-iphone
Merge branch 'master' of git.linphone.org:linphone into belle-sip
This commit is contained in:
commit
f0c7dbd115
10 changed files with 297 additions and 143 deletions
|
|
@ -1880,9 +1880,13 @@ void linphone_call_delete_upnp_session(LinphoneCall *call){
|
|||
}
|
||||
#endif //BUILD_UPNP
|
||||
|
||||
static void linphone_call_log_fill_stats(LinphoneCallLog *log, AudioStream *st){
|
||||
audio_stream_get_local_rtp_stats (st,&log->local_stats);
|
||||
log->quality=audio_stream_get_average_quality_rating(st);
|
||||
static void linphone_call_log_fill_stats(LinphoneCallLog *log, MediaStream *st){
|
||||
float quality=media_stream_get_average_quality_rating(st);
|
||||
if (quality>=0){
|
||||
if (log->quality!=-1){
|
||||
log->quality*=quality/5.0;
|
||||
}else log->quality=quality;
|
||||
}
|
||||
}
|
||||
|
||||
void linphone_call_stop_audio_stream(LinphoneCall *call) {
|
||||
|
|
@ -1900,7 +1904,8 @@ void linphone_call_stop_audio_stream(LinphoneCall *call) {
|
|||
lp_config_set_string(call->core->config,"sound","ec_state",state_str);
|
||||
}
|
||||
}
|
||||
linphone_call_log_fill_stats (call->log,call->audiostream);
|
||||
audio_stream_get_local_rtp_stats(call->audiostream,&call->log->local_stats);
|
||||
linphone_call_log_fill_stats (call->log,(MediaStream*)call->audiostream);
|
||||
if (call->endpoint){
|
||||
linphone_call_remove_from_conf(call);
|
||||
}
|
||||
|
|
@ -1916,6 +1921,7 @@ void linphone_call_stop_video_stream(LinphoneCall *call) {
|
|||
ortp_ev_queue_flush(call->videostream_app_evq);
|
||||
ortp_ev_queue_destroy(call->videostream_app_evq);
|
||||
call->videostream_app_evq=NULL;
|
||||
linphone_call_log_fill_stats(call->log,(MediaStream*)call->videostream);
|
||||
video_stream_stop(call->videostream);
|
||||
call->videostream=NULL;
|
||||
}
|
||||
|
|
@ -2034,10 +2040,20 @@ float linphone_call_get_record_volume(LinphoneCall *call){
|
|||
* active audio stream exist. Otherwise it returns the quality rating.
|
||||
**/
|
||||
float linphone_call_get_current_quality(LinphoneCall *call){
|
||||
float audio_rating=-1;
|
||||
float video_rating=-1;
|
||||
float result;
|
||||
if (call->audiostream){
|
||||
return audio_stream_get_quality_rating(call->audiostream);
|
||||
audio_rating=media_stream_get_quality_rating((MediaStream*)call->audiostream)/5.0;
|
||||
}
|
||||
return -1;
|
||||
if (call->videostream){
|
||||
video_rating=media_stream_get_quality_rating((MediaStream*)call->videostream)/5.0;
|
||||
}
|
||||
if (audio_rating<0 && video_rating<0) result=-1;
|
||||
else if (audio_rating<0) result=video_rating*5.0;
|
||||
else if (video_rating<0) result=audio_rating*5.0;
|
||||
else result=audio_rating*video_rating*5.0;
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -2052,18 +2068,34 @@ float linphone_call_get_average_quality(LinphoneCall *call){
|
|||
return -1;
|
||||
}
|
||||
|
||||
static void update_local_stats(LinphoneCallStats *stats, MediaStream *stream){
|
||||
const MSQualityIndicator *qi=media_stream_get_quality_indicator(stream);
|
||||
if (qi) {
|
||||
stats->local_late_rate=ms_quality_indicator_get_local_late_rate(qi);
|
||||
stats->local_loss_rate=ms_quality_indicator_get_local_loss_rate(qi);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Access last known statistics for audio stream, for a given call.
|
||||
**/
|
||||
const LinphoneCallStats *linphone_call_get_audio_stats(const LinphoneCall *call) {
|
||||
return &call->stats[LINPHONE_CALL_STATS_AUDIO];
|
||||
const LinphoneCallStats *linphone_call_get_audio_stats(LinphoneCall *call) {
|
||||
LinphoneCallStats *stats=&call->stats[LINPHONE_CALL_STATS_AUDIO];
|
||||
if (call->audiostream){
|
||||
update_local_stats(stats,(MediaStream*)call->audiostream);
|
||||
}
|
||||
return stats;
|
||||
}
|
||||
|
||||
/**
|
||||
* Access last known statistics for video stream, for a given call.
|
||||
**/
|
||||
const LinphoneCallStats *linphone_call_get_video_stats(const LinphoneCall *call) {
|
||||
return &call->stats[LINPHONE_CALL_STATS_VIDEO];
|
||||
const LinphoneCallStats *linphone_call_get_video_stats(LinphoneCall *call) {
|
||||
LinphoneCallStats *stats=&call->stats[LINPHONE_CALL_STATS_VIDEO];
|
||||
if (call->videostream){
|
||||
update_local_stats(stats,(MediaStream*)call->videostream);
|
||||
}
|
||||
return stats;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -2267,6 +2299,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;
|
||||
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]);
|
||||
} else if (evt == ORTP_EVENT_RTCP_PACKET_EMITTED) {
|
||||
|
|
@ -2275,6 +2308,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;
|
||||
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]);
|
||||
} else if ((evt == ORTP_EVENT_ICE_SESSION_PROCESSING_FINISHED) || (evt == ORTP_EVENT_ICE_GATHERING_FINISHED)
|
||||
|
|
@ -2308,6 +2342,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;
|
||||
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]);
|
||||
} else if (evt == ORTP_EVENT_RTCP_PACKET_EMITTED) {
|
||||
|
|
@ -2316,6 +2351,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;
|
||||
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]);
|
||||
} else if ((evt == ORTP_EVENT_ICE_SESSION_PROCESSING_FINISHED) || (evt == ORTP_EVENT_ICE_GATHERING_FINISHED)
|
||||
|
|
|
|||
|
|
@ -122,6 +122,7 @@ LinphoneCallLog * linphone_call_log_new(LinphoneCall *call, LinphoneAddress *fro
|
|||
cl->from=from;
|
||||
cl->to=to;
|
||||
cl->status=LinphoneCallAborted; /*default status*/
|
||||
cl->quality=-1;
|
||||
return cl;
|
||||
}
|
||||
|
||||
|
|
@ -412,10 +413,29 @@ const LinphoneAddress *linphone_core_get_current_call_remote_address(struct _Lin
|
|||
return linphone_call_get_remote_address(call);
|
||||
}
|
||||
|
||||
void linphone_core_set_log_handler(OrtpLogFunc logfunc) {
|
||||
ortp_set_log_handler(logfunc);
|
||||
}
|
||||
|
||||
void linphone_core_set_log_file(FILE *file) {
|
||||
if (file == NULL) file = stdout;
|
||||
ortp_set_log_file(file);
|
||||
}
|
||||
|
||||
void linphone_core_set_log_level(OrtpLogLevel loglevel) {
|
||||
ortp_set_log_level_mask(loglevel);
|
||||
if (loglevel == 0) {
|
||||
sal_disable_logs();
|
||||
} else {
|
||||
sal_enable_logs();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Enable logs in supplied FILE*.
|
||||
*
|
||||
* @ingroup misc
|
||||
* @deprecated Use #linphone_core_set_log_file and #linphone_core_set_log_level instead.
|
||||
*
|
||||
* @param file a C FILE* where to fprintf logs. If null stdout is used.
|
||||
*
|
||||
|
|
@ -431,6 +451,7 @@ void linphone_core_enable_logs(FILE *file){
|
|||
* Enable logs through the user's supplied log callback.
|
||||
*
|
||||
* @ingroup misc
|
||||
* @deprecated Use #linphone_core_set_log_handler and #linphone_core_set_log_level instead.
|
||||
*
|
||||
* @param logfunc The address of a OrtpLogFunc callback whose protoype is
|
||||
* typedef void (*OrtpLogFunc)(OrtpLogLevel lev, const char *fmt, va_list args);
|
||||
|
|
@ -446,6 +467,7 @@ void linphone_core_enable_logs_with_cb(OrtpLogFunc logfunc){
|
|||
* Entirely disable logging.
|
||||
*
|
||||
* @ingroup misc
|
||||
* @deprecated Use #linphone_core_set_log_level instead.
|
||||
**/
|
||||
void linphone_core_disable_logs(){
|
||||
ortp_set_log_level_mask(ORTP_ERROR|ORTP_FATAL);
|
||||
|
|
@ -472,7 +494,7 @@ static void net_config_read (LinphoneCore *lc)
|
|||
linphone_core_set_firewall_policy(lc,tmp);
|
||||
tmp=lp_config_get_int(lc->config,"net","nat_sdp_only",0);
|
||||
lc->net_conf.nat_sdp_only=tmp;
|
||||
tmp=lp_config_get_int(lc->config,"net","mtu",0);
|
||||
tmp=lp_config_get_int(lc->config,"net","mtu",1300);
|
||||
linphone_core_set_mtu(lc,tmp);
|
||||
tmp=lp_config_get_int(lc->config,"net","download_ptime",0);
|
||||
linphone_core_set_download_ptime(lc,tmp);
|
||||
|
|
@ -1204,6 +1226,7 @@ static void misc_config_read (LinphoneCore *lc) {
|
|||
LpConfig *config=lc->config;
|
||||
lc->max_call_logs=lp_config_get_int(config,"misc","history_max_size",15);
|
||||
lc->max_calls=lp_config_get_int(config,"misc","max_calls",NB_MAX_CALLS);
|
||||
linphone_core_set_log_level((OrtpLogLevel)lp_config_get_int(config,"misc","log_level",0));
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -2164,9 +2187,13 @@ void linphone_core_iterate(LinphoneCore *lc){
|
|||
lc->initial_subscribes_sent=TRUE;
|
||||
}
|
||||
|
||||
if (one_second_elapsed && lp_config_needs_commit(lc->config)){
|
||||
lp_config_sync(lc->config);
|
||||
}
|
||||
if (one_second_elapsed) {
|
||||
if (ortp_get_log_level_mask() != lp_config_get_int(lc->config, "misc", "log_level", 0)) {
|
||||
lp_config_set_int(lc->config, "misc", "log_level", ortp_get_log_level_mask());
|
||||
}
|
||||
if (lp_config_needs_commit(lc->config)) {
|
||||
lp_config_sync(lc->config);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -347,14 +347,16 @@ struct _LinphoneCallStats {
|
|||
LinphoneUpnpState upnp_state; /**< State of uPnP processing. */
|
||||
float download_bandwidth; /**<Download bandwidth measurement of received stream, expressed in kbit/s, including IP/UDP/RTP headers*/
|
||||
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*/
|
||||
};
|
||||
|
||||
/**
|
||||
* @}
|
||||
**/
|
||||
|
||||
const LinphoneCallStats *linphone_call_get_audio_stats(const LinphoneCall *call);
|
||||
const LinphoneCallStats *linphone_call_get_video_stats(const LinphoneCall *call);
|
||||
const LinphoneCallStats *linphone_call_get_audio_stats(LinphoneCall *call);
|
||||
const LinphoneCallStats *linphone_call_get_video_stats(LinphoneCall *call);
|
||||
|
||||
|
||||
/** Callback prototype */
|
||||
|
|
@ -883,8 +885,37 @@ typedef void * (*LinphoneWaitingCallback)(struct _LinphoneCore *lc, void *contex
|
|||
|
||||
/* THE main API */
|
||||
|
||||
LINPHONE_PUBLIC void linphone_core_enable_logs(FILE *file);
|
||||
LINPHONE_PUBLIC void linphone_core_enable_logs_with_cb(OrtpLogFunc logfunc);
|
||||
/**
|
||||
* Define a log handler.
|
||||
*
|
||||
* @ingroup misc
|
||||
*
|
||||
* @param logfunc The function pointer of the log handler.
|
||||
*/
|
||||
void linphone_core_set_log_handler(OrtpLogFunc logfunc);
|
||||
/**
|
||||
* Define a log file.
|
||||
*
|
||||
* @ingroup misc
|
||||
*
|
||||
* If the file pointer passed as an argument is NULL, stdout is used instead.
|
||||
*
|
||||
* @param file A pointer to the FILE structure of the file to write to.
|
||||
*/
|
||||
void linphone_core_set_log_file(FILE *file);
|
||||
/**
|
||||
* Define the log level.
|
||||
*
|
||||
* @ingroup misc
|
||||
*
|
||||
* The loglevel parameter is a bitmask parameter. Therefore to enable only warning and error
|
||||
* messages, use ORTP_WARNING | ORTP_ERROR. To disable logs, simply set loglevel to 0.
|
||||
*
|
||||
* @param loglevel A bitmask of the log levels to set.
|
||||
*/
|
||||
void linphone_core_set_log_level(OrtpLogLevel loglevel);
|
||||
LINPHONE_PUBLIC void linphone_core_enable_logs(FILE *file);
|
||||
LINPHONE_PUBLIC void linphone_core_enable_logs_with_cb(OrtpLogFunc logfunc);
|
||||
void linphone_core_disable_logs(void);
|
||||
const char *linphone_core_get_version(void);
|
||||
const char *linphone_core_get_user_agent_name(void);
|
||||
|
|
|
|||
|
|
@ -1578,6 +1578,23 @@ extern "C" jfloat Java_org_linphone_core_LinphoneCallStatsImpl_getJitterBufferSi
|
|||
return (jfloat)((LinphoneCallStats *)stats_ptr)->jitter_stats.jitter_buffer_size_ms;
|
||||
}
|
||||
|
||||
extern "C" jfloat Java_org_linphone_core_LinphoneCallStatsImpl_getLocalLossRate(JNIEnv *env, jobject thiz,jlong stats_ptr) {
|
||||
const LinphoneCallStats *stats = (LinphoneCallStats *)stats_ptr;
|
||||
return stats->local_loss_rate;
|
||||
}
|
||||
|
||||
extern "C" jfloat Java_org_linphone_core_LinphoneCallStatsImpl_getLocalLateRate(JNIEnv *env, jobject thiz, jlong stats_ptr) {
|
||||
const LinphoneCallStats *stats = (LinphoneCallStats *)stats_ptr;
|
||||
return stats->local_late_rate;
|
||||
}
|
||||
|
||||
extern "C" void Java_org_linphone_core_LinphoneCallStatsImpl_updateStats(JNIEnv *env, jobject thiz, jlong call_ptr, jint mediatype) {
|
||||
if (mediatype==LINPHONE_CALL_STATS_AUDIO)
|
||||
linphone_call_get_audio_stats((LinphoneCall*)call_ptr);
|
||||
else
|
||||
linphone_call_get_video_stats((LinphoneCall*)call_ptr);
|
||||
}
|
||||
|
||||
/*payloadType*/
|
||||
extern "C" jstring Java_org_linphone_core_PayloadTypeImpl_toString(JNIEnv* env,jobject thiz,jlong ptr) {
|
||||
PayloadType* pt = (PayloadType*)ptr;
|
||||
|
|
@ -1702,7 +1719,6 @@ extern "C" jfloat Java_org_linphone_core_LinphoneCallImpl_getAverageQuality( JNI
|
|||
return (jfloat)linphone_call_get_average_quality((LinphoneCall*)ptr);
|
||||
}
|
||||
|
||||
|
||||
//LinphoneFriend
|
||||
extern "C" jlong Java_org_linphone_core_LinphoneFriendImpl_newLinphoneFriend(JNIEnv* env
|
||||
,jobject thiz
|
||||
|
|
|
|||
|
|
@ -121,25 +121,25 @@ public interface LinphoneCallStats {
|
|||
public float getUploadBandwidth();
|
||||
|
||||
/**
|
||||
* Get the sender loss rate since last report
|
||||
* Get the local loss rate since last report
|
||||
* @return The sender loss rate
|
||||
*/
|
||||
public float getSenderLossRate();
|
||||
|
||||
/**
|
||||
* Get the receiver loss rate since last report
|
||||
* Get the remote reported loss rate since last report
|
||||
* @return The receiver loss rate
|
||||
*/
|
||||
public float getReceiverLossRate();
|
||||
|
||||
/**
|
||||
* Get the sender interarrival jitter
|
||||
* Get the local interarrival jitter
|
||||
* @return The interarrival jitter at last emitted sender report
|
||||
*/
|
||||
public float getSenderInterarrivalJitter();
|
||||
|
||||
/**
|
||||
* Get the receiver interarrival jitter
|
||||
* Get the remote reported interarrival jitter
|
||||
* @return The interarrival jitter at last received receiver report
|
||||
*/
|
||||
public float getReceiverInterarrivalJitter();
|
||||
|
|
@ -161,4 +161,16 @@ public interface LinphoneCallStats {
|
|||
* @return The jitter buffer size in milliseconds
|
||||
*/
|
||||
public float getJitterBufferSize();
|
||||
|
||||
/**
|
||||
* Get the local loss rate. Unlike getSenderLossRate() that returns this loss rate "since last emitted RTCP report", the value returned here is updated every second.
|
||||
* @return The local loss rate percentage.
|
||||
**/
|
||||
public float getLocalLossRate();
|
||||
|
||||
/**
|
||||
* Get the local late packets rate. The value returned here is updated every second.
|
||||
* @return The local late rate percentage.
|
||||
**/
|
||||
public float getLocalLateRate();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -68,9 +68,11 @@ class LinphoneCallImpl implements LinphoneCall {
|
|||
videoStats = stats;
|
||||
}
|
||||
public LinphoneCallStats getAudioStats() {
|
||||
if (audioStats!=null) ((LinphoneCallStatsImpl)audioStats).updateRealTimeStats(this);
|
||||
return audioStats;
|
||||
}
|
||||
public LinphoneCallStats getVideoStats() {
|
||||
if (videoStats!=null) ((LinphoneCallStatsImpl)videoStats).updateRealTimeStats(this);
|
||||
return videoStats;
|
||||
}
|
||||
public CallDirection getDirection() {
|
||||
|
|
|
|||
|
|
@ -31,6 +31,9 @@ class LinphoneCallStatsImpl implements LinphoneCallStats {
|
|||
private float roundTripDelay;
|
||||
private long latePacketsCumulativeNumber;
|
||||
private float jitterBufferSize;
|
||||
private float localLossRate;
|
||||
private float localLateRate;
|
||||
private long nativePtr;
|
||||
|
||||
private native int getMediaType(long nativeStatsPtr);
|
||||
private native int getIceState(long nativeStatsPtr);
|
||||
|
|
@ -43,8 +46,12 @@ class LinphoneCallStatsImpl implements LinphoneCallStats {
|
|||
private native float getRoundTripDelay(long nativeStatsPtr);
|
||||
private native long getLatePacketsCumulativeNumber(long nativeStatsPtr, long nativeCallPtr);
|
||||
private native float getJitterBufferSize(long nativeStatsPtr);
|
||||
private native float getLocalLossRate(long nativeStatsPtr);
|
||||
private native float getLocalLateRate(long nativeStatsPtr);
|
||||
private native void updateStats(long nativeCallPtr, int mediaType);
|
||||
|
||||
protected LinphoneCallStatsImpl(long nativeCallPtr, long nativeStatsPtr) {
|
||||
nativePtr=nativeStatsPtr;
|
||||
mediaType = getMediaType(nativeStatsPtr);
|
||||
iceState = getIceState(nativeStatsPtr);
|
||||
downloadBandwidth = getDownloadBandwidth(nativeStatsPtr);
|
||||
|
|
@ -56,6 +63,13 @@ class LinphoneCallStatsImpl implements LinphoneCallStats {
|
|||
roundTripDelay = getRoundTripDelay(nativeStatsPtr);
|
||||
latePacketsCumulativeNumber = getLatePacketsCumulativeNumber(nativeStatsPtr, nativeCallPtr);
|
||||
jitterBufferSize = getJitterBufferSize(nativeStatsPtr);
|
||||
|
||||
}
|
||||
|
||||
protected void updateRealTimeStats(LinphoneCall call){
|
||||
updateStats( ((LinphoneCallImpl)call).nativePtr, mediaType);
|
||||
localLossRate=getLocalLossRate(nativePtr);
|
||||
localLateRate=getLocalLateRate(nativePtr);
|
||||
}
|
||||
|
||||
public MediaType getMediaType() {
|
||||
|
|
@ -101,4 +115,12 @@ class LinphoneCallStatsImpl implements LinphoneCallStats {
|
|||
public float getJitterBufferSize() {
|
||||
return jitterBufferSize;
|
||||
}
|
||||
|
||||
public float getLocalLossRate(){
|
||||
return localLossRate;
|
||||
}
|
||||
|
||||
public float getLocalLateRate(){
|
||||
return localLateRate;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
Subproject commit d9ce543dee40d7cb7da55e50c6716a25f53ea2ba
|
||||
Subproject commit 4f93003c1eade1442fdedd8dee10f18c98ec47c3
|
||||
2
oRTP
2
oRTP
|
|
@ -1 +1 @@
|
|||
Subproject commit 35f5efbfbf7814bd0403249431a6b94d6c4286b4
|
||||
Subproject commit 9f51aa254fc5c24834614612036485406a8d06a7
|
||||
244
po/fr.po
244
po/fr.po
|
|
@ -7,20 +7,22 @@ msgstr ""
|
|||
"Project-Id-Version: Linphone 0.9.1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-04-08 16:59+0200\n"
|
||||
"PO-Revision-Date: 2013-04-08 16:46+0100\n"
|
||||
"Last-Translator: Simon Morlat <simon.morlat@linphone.org>\n"
|
||||
"PO-Revision-Date: 2013-04-09 13:57+0100\n"
|
||||
"Last-Translator: Simon Morlat <simon.morlat@linphone.org> \n"
|
||||
"Language-Team: french <fr@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../gtk/calllogs.c:139 ../gtk/friendlist.c:922
|
||||
#: ../gtk/calllogs.c:139
|
||||
#: ../gtk/friendlist.c:922
|
||||
#, c-format
|
||||
msgid "Call %s"
|
||||
msgstr "Appeler %s"
|
||||
|
||||
#: ../gtk/calllogs.c:140 ../gtk/friendlist.c:923
|
||||
#: ../gtk/calllogs.c:140
|
||||
#: ../gtk/friendlist.c:923
|
||||
#, c-format
|
||||
msgid "Send text to %s"
|
||||
msgstr "Chatter avec %s"
|
||||
|
|
@ -60,7 +62,8 @@ msgid_plural "%i seconds"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../gtk/calllogs.c:321 ../gtk/calllogs.c:327
|
||||
#: ../gtk/calllogs.c:321
|
||||
#: ../gtk/calllogs.c:327
|
||||
#, c-format
|
||||
msgid "<big><b>%s</b></big>\t%s"
|
||||
msgstr ""
|
||||
|
|
@ -71,6 +74,8 @@ msgid ""
|
|||
"<small><i>%s</i>\t<i>Quality: %s</i></small>\n"
|
||||
"%s\t%s\t"
|
||||
msgstr ""
|
||||
"<small><i>%s</i>\t<i>Qualité: %s</i></small>\n"
|
||||
"%s\t%s\t"
|
||||
|
||||
#: ../gtk/calllogs.c:329
|
||||
#, c-format
|
||||
|
|
@ -79,7 +84,8 @@ msgid ""
|
|||
"%s"
|
||||
msgstr ""
|
||||
|
||||
#: ../gtk/conference.c:38 ../gtk/main.ui.h:13
|
||||
#: ../gtk/conference.c:38
|
||||
#: ../gtk/main.ui.h:13
|
||||
msgid "Conference"
|
||||
msgstr "Conférence"
|
||||
|
||||
|
|
@ -87,12 +93,15 @@ msgstr "Conférence"
|
|||
msgid "Me"
|
||||
msgstr "Moi"
|
||||
|
||||
#: ../gtk/support.c:49 ../gtk/support.c:73 ../gtk/support.c:102
|
||||
#: ../gtk/support.c:49
|
||||
#: ../gtk/support.c:73
|
||||
#: ../gtk/support.c:102
|
||||
#, c-format
|
||||
msgid "Couldn't find pixmap file: %s"
|
||||
msgstr "Icone non trouvée: %s"
|
||||
|
||||
#: ../gtk/chat.c:324 ../gtk/friendlist.c:872
|
||||
#: ../gtk/chat.c:324
|
||||
#: ../gtk/friendlist.c:872
|
||||
msgid "Invalid sip contact !"
|
||||
msgstr "Contact sip invalide !"
|
||||
|
||||
|
|
@ -102,7 +111,7 @@ msgstr "affiche des informations de debogage"
|
|||
|
||||
#: ../gtk/main.c:99
|
||||
msgid "path to a file to write logs into."
|
||||
msgstr ""
|
||||
msgstr "chemin vers le fichier de logs."
|
||||
|
||||
#: ../gtk/main.c:106
|
||||
msgid "Start linphone with video disabled."
|
||||
|
|
@ -114,19 +123,15 @@ msgstr "Démarre iconifié, sans interface principale."
|
|||
|
||||
#: ../gtk/main.c:120
|
||||
msgid "address to call right now"
|
||||
msgstr "addresse à appeler maintenant"
|
||||
msgstr "adresse à appeler maintenant"
|
||||
|
||||
#: ../gtk/main.c:127
|
||||
msgid "if set automatically answer incoming calls"
|
||||
msgstr "si positionné, répond automatiquement aux appels entrants"
|
||||
|
||||
#: ../gtk/main.c:134
|
||||
msgid ""
|
||||
"Specifiy a working directory (should be the base of the installation, eg: c:"
|
||||
"\\Program Files\\Linphone)"
|
||||
msgstr ""
|
||||
"Spécifie un répertoire de travail (qui devrait être le répertoire "
|
||||
"d'installation, par exemple c:\\Program Files\\Linphone)"
|
||||
msgid "Specifiy a working directory (should be the base of the installation, eg: c:\\Program Files\\Linphone)"
|
||||
msgstr "Spécifie un répertoire de travail (qui devrait être le répertoire d'installation, par exemple c:\\Program Files\\Linphone)"
|
||||
|
||||
#: ../gtk/main.c:515
|
||||
#, c-format
|
||||
|
|
@ -137,15 +142,12 @@ msgstr "Appel avec %s"
|
|||
#, c-format
|
||||
msgid ""
|
||||
"%s would like to add you to his contact list.\n"
|
||||
"Would you allow him to see your presence status or add him to your contact "
|
||||
"list ?\n"
|
||||
"Would you allow him to see your presence status or add him to your contact list ?\n"
|
||||
"If you answer no, this person will be temporarily blacklisted."
|
||||
msgstr ""
|
||||
"%s souhaite vous ajouter à sa liste de contact.\n"
|
||||
"Souhaitez vous l'autoriser à voir votre information de présence et l'ajouter "
|
||||
"à votre liste également ?\n"
|
||||
"Si vous répondez non, cette personne sera mise temporairement sur liste "
|
||||
"noire."
|
||||
"Souhaitez vous l'autoriser à voir votre information de présence et l'ajouter à votre liste également ?\n"
|
||||
"Si vous répondez non, cette personne sera mise temporairement sur liste noire."
|
||||
|
||||
#: ../gtk/main.c:1023
|
||||
#, c-format
|
||||
|
|
@ -160,19 +162,24 @@ msgstr ""
|
|||
msgid "Call error"
|
||||
msgstr "Erreur lors de l'appel"
|
||||
|
||||
#: ../gtk/main.c:1129 ../coreapi/linphonecore.c:3189
|
||||
#: ../gtk/main.c:1129
|
||||
#: ../coreapi/linphonecore.c:3189
|
||||
msgid "Call ended"
|
||||
msgstr "Appel terminé."
|
||||
|
||||
#: ../gtk/main.c:1132 ../coreapi/linphonecore.c:239
|
||||
#: ../gtk/main.c:1132
|
||||
#: ../coreapi/linphonecore.c:239
|
||||
msgid "Incoming call"
|
||||
msgstr "Appel entrant"
|
||||
|
||||
#: ../gtk/main.c:1134 ../gtk/incall_view.c:497 ../gtk/main.ui.h:5
|
||||
#: ../gtk/main.c:1134
|
||||
#: ../gtk/incall_view.c:497
|
||||
#: ../gtk/main.ui.h:5
|
||||
msgid "Answer"
|
||||
msgstr "Répondre"
|
||||
|
||||
#: ../gtk/main.c:1136 ../gtk/main.ui.h:6
|
||||
#: ../gtk/main.c:1136
|
||||
#: ../gtk/main.ui.h:6
|
||||
msgid "Decline"
|
||||
msgstr "Refuser"
|
||||
|
||||
|
|
@ -183,12 +190,12 @@ msgstr "Appel en pause"
|
|||
#: ../gtk/main.c:1142
|
||||
#, c-format
|
||||
msgid "<b>by %s</b>"
|
||||
msgstr ""
|
||||
msgstr "b>par %s</b>"
|
||||
|
||||
#: ../gtk/main.c:1191
|
||||
#, c-format
|
||||
msgid "%s proposed to start video. Do you accept ?"
|
||||
msgstr ""
|
||||
msgstr "%s propose de démarrer la vidéo. Acceptez-vous ?"
|
||||
|
||||
#: ../gtk/main.c:1353
|
||||
msgid "Website link"
|
||||
|
|
@ -203,7 +210,8 @@ msgstr "Linphone - un téléphone video pour l'internet"
|
|||
msgid "%s (Default)"
|
||||
msgstr "%s (par défaut)"
|
||||
|
||||
#: ../gtk/main.c:1796 ../coreapi/callbacks.c:810
|
||||
#: ../gtk/main.c:1796
|
||||
#: ../coreapi/callbacks.c:810
|
||||
#, c-format
|
||||
msgid "We are transferred to %s"
|
||||
msgstr "Transfert vers %s"
|
||||
|
|
@ -228,7 +236,9 @@ msgstr "Ajouter au carnet d'adresse"
|
|||
msgid "Presence status"
|
||||
msgstr "Info de présence"
|
||||
|
||||
#: ../gtk/friendlist.c:661 ../gtk/propertybox.c:367 ../gtk/contact.ui.h:1
|
||||
#: ../gtk/friendlist.c:661
|
||||
#: ../gtk/propertybox.c:367
|
||||
#: ../gtk/contact.ui.h:1
|
||||
msgid "Name"
|
||||
msgstr "Nom"
|
||||
|
||||
|
|
@ -281,11 +291,13 @@ msgstr "Débit min. (kbit/s)"
|
|||
msgid "Parameters"
|
||||
msgstr "Paramètres"
|
||||
|
||||
#: ../gtk/propertybox.c:435 ../gtk/propertybox.c:578
|
||||
#: ../gtk/propertybox.c:435
|
||||
#: ../gtk/propertybox.c:578
|
||||
msgid "Enabled"
|
||||
msgstr "Activé"
|
||||
|
||||
#: ../gtk/propertybox.c:437 ../gtk/propertybox.c:578
|
||||
#: ../gtk/propertybox.c:437
|
||||
#: ../gtk/propertybox.c:578
|
||||
msgid "Disabled"
|
||||
msgstr "Désactivé"
|
||||
|
||||
|
|
@ -366,11 +378,8 @@ msgid "Serbian"
|
|||
msgstr "Serbe"
|
||||
|
||||
#: ../gtk/propertybox.c:848
|
||||
msgid ""
|
||||
"You need to restart linphone for the new language selection to take effect."
|
||||
msgstr ""
|
||||
"La nouvelle selection de langue prendra effet au prochain démarrage de "
|
||||
"linphone."
|
||||
msgid "You need to restart linphone for the new language selection to take effect."
|
||||
msgstr "La nouvelle selection de langue prendra effet au prochain démarrage de linphone."
|
||||
|
||||
#: ../gtk/propertybox.c:934
|
||||
msgid "None"
|
||||
|
|
@ -390,10 +399,12 @@ msgid ""
|
|||
"A more recent version is availalble from %s.\n"
|
||||
"Would you like to open a browser to download it ?"
|
||||
msgstr ""
|
||||
"Une version plus récente est disponible sur %s.\n"
|
||||
"Voulez vous ouvrir le navigateur afin de pouvoir télécharger la dernière version ?"
|
||||
|
||||
#: ../gtk/update.c:91
|
||||
msgid "You are running the lastest version."
|
||||
msgstr ""
|
||||
msgstr "Vous utilisez la dernière version."
|
||||
|
||||
#: ../gtk/buddylookup.c:85
|
||||
msgid "Firstname, Lastname"
|
||||
|
|
@ -450,13 +461,14 @@ msgstr "Entrez votre identifiant linphone.org"
|
|||
msgid "Username:"
|
||||
msgstr "Nom d'utilisateur:"
|
||||
|
||||
#: ../gtk/setupwizard.c:94 ../gtk/password.ui.h:4
|
||||
#: ../gtk/setupwizard.c:94
|
||||
#: ../gtk/password.ui.h:4
|
||||
msgid "Password:"
|
||||
msgstr "Mot de passe:"
|
||||
|
||||
#: ../gtk/setupwizard.c:114
|
||||
msgid "Enter your account informations"
|
||||
msgstr ""
|
||||
msgstr "Entrez les informations concernant votre compte"
|
||||
|
||||
#: ../gtk/setupwizard.c:121
|
||||
msgid "Username*"
|
||||
|
|
@ -499,41 +511,44 @@ msgid ""
|
|||
"Error, account not validated, username already used or server unreachable.\n"
|
||||
"Please go back and try again."
|
||||
msgstr ""
|
||||
"Erreur, le compte n'est pas validé, l'identifiant est déjà utilisé ou le serveur n'est pas accessible.\n"
|
||||
"Merci d'essayer à nouveau."
|
||||
|
||||
#: ../gtk/setupwizard.c:380
|
||||
msgid "Thank you. Your account is now configured and ready for use."
|
||||
msgstr ""
|
||||
msgstr "Merci. Votre compte est maintenant configuré et prêt à être utilisé."
|
||||
|
||||
#: ../gtk/setupwizard.c:388
|
||||
msgid ""
|
||||
"Please validate your account by clicking on the link we just sent you by "
|
||||
"email.\n"
|
||||
"Please validate your account by clicking on the link we just sent you by email.\n"
|
||||
"Then come back here and press Next button."
|
||||
msgstr ""
|
||||
"Merci de valider votre compte en cliquant sur le lien que nous avons envoyé par email.\n"
|
||||
"Puis appuyez sur suivant."
|
||||
|
||||
#: ../gtk/setupwizard.c:564
|
||||
msgid "Welcome to the account setup assistant"
|
||||
msgstr ""
|
||||
msgstr "Bienvenue dans l'assistant de configuration de compte."
|
||||
|
||||
#: ../gtk/setupwizard.c:569
|
||||
msgid "Account setup assistant"
|
||||
msgstr ""
|
||||
msgstr "Assistant de configuration de compte."
|
||||
|
||||
#: ../gtk/setupwizard.c:575
|
||||
msgid "Configure your account (step 1/1)"
|
||||
msgstr "Configurez votre compte"
|
||||
msgstr "Configurez votre compte (étape 1/1)"
|
||||
|
||||
#: ../gtk/setupwizard.c:580
|
||||
msgid "Enter your sip username (step 1/1)"
|
||||
msgstr ""
|
||||
msgstr "Entrez votre identifiant sip (étape 1/1)"
|
||||
|
||||
#: ../gtk/setupwizard.c:584
|
||||
msgid "Enter account information (step 1/2)"
|
||||
msgstr ""
|
||||
msgstr "Entrez les informations concernant votre compte (étape 1/2)"
|
||||
|
||||
#: ../gtk/setupwizard.c:593
|
||||
msgid "Validation (step 2/2)"
|
||||
msgstr ""
|
||||
msgstr "Validation (étape 2/2)"
|
||||
|
||||
#: ../gtk/setupwizard.c:598
|
||||
msgid "Error"
|
||||
|
|
@ -541,9 +556,10 @@ msgstr "Erreur"
|
|||
|
||||
#: ../gtk/setupwizard.c:602
|
||||
msgid "Terminating"
|
||||
msgstr ""
|
||||
msgstr "En cours d’arrêt."
|
||||
|
||||
#: ../gtk/incall_view.c:70 ../gtk/incall_view.c:94
|
||||
#: ../gtk/incall_view.c:70
|
||||
#: ../gtk/incall_view.c:94
|
||||
#, c-format
|
||||
msgid "Call #%i"
|
||||
msgstr "Appel #%i"
|
||||
|
|
@ -553,14 +569,15 @@ msgstr "Appel #%i"
|
|||
msgid "Transfer to call #%i with %s"
|
||||
msgstr "Transférer vers l'appel #%i avec %s"
|
||||
|
||||
#: ../gtk/incall_view.c:210 ../gtk/incall_view.c:213
|
||||
#: ../gtk/incall_view.c:210
|
||||
#: ../gtk/incall_view.c:213
|
||||
#, fuzzy
|
||||
msgid "Not used"
|
||||
msgstr "Non trouvé"
|
||||
|
||||
#: ../gtk/incall_view.c:220
|
||||
msgid "ICE not activated"
|
||||
msgstr ""
|
||||
msgstr "ICE non activé"
|
||||
|
||||
#: ../gtk/incall_view.c:222
|
||||
#, fuzzy
|
||||
|
|
@ -569,11 +586,11 @@ msgstr "L'appel a échoué."
|
|||
|
||||
#: ../gtk/incall_view.c:224
|
||||
msgid "ICE in progress"
|
||||
msgstr ""
|
||||
msgstr "Négociation ICE en cours"
|
||||
|
||||
#: ../gtk/incall_view.c:226
|
||||
msgid "Going through one or more NATs"
|
||||
msgstr ""
|
||||
msgstr "Via un ou plusieurs NATs"
|
||||
|
||||
#: ../gtk/incall_view.c:228
|
||||
#, fuzzy
|
||||
|
|
@ -582,36 +599,35 @@ msgstr "Redirection"
|
|||
|
||||
#: ../gtk/incall_view.c:230
|
||||
msgid "Through a relay server"
|
||||
msgstr ""
|
||||
msgstr "Via un serveur relais"
|
||||
|
||||
#: ../gtk/incall_view.c:238
|
||||
msgid "uPnP not activated"
|
||||
msgstr "uPnP non activé"
|
||||
|
||||
#: ../gtk/incall_view.c:240
|
||||
#, fuzzy
|
||||
msgid "uPnP in progress"
|
||||
msgstr "Découverte STUN en cours"
|
||||
msgstr "uPnP en cours"
|
||||
|
||||
#: ../gtk/incall_view.c:242
|
||||
#, fuzzy
|
||||
msgid "uPnp not available"
|
||||
msgstr "indisponible"
|
||||
msgstr "uPnP est indisponible"
|
||||
|
||||
#: ../gtk/incall_view.c:244
|
||||
msgid "uPnP is running"
|
||||
msgstr ""
|
||||
msgstr "uPnP en cours d’exécution"
|
||||
|
||||
#: ../gtk/incall_view.c:246
|
||||
#, fuzzy
|
||||
msgid "uPnP failed"
|
||||
msgstr "L'appel a échoué."
|
||||
msgstr "uPnP a échoué."
|
||||
|
||||
#: ../gtk/incall_view.c:256 ../gtk/incall_view.c:257
|
||||
#: ../gtk/incall_view.c:256
|
||||
#: ../gtk/incall_view.c:257
|
||||
msgid "Direct or through server"
|
||||
msgstr ""
|
||||
msgstr "Directe ou via un serveur"
|
||||
|
||||
#: ../gtk/incall_view.c:259 ../gtk/incall_view.c:265
|
||||
#: ../gtk/incall_view.c:259
|
||||
#: ../gtk/incall_view.c:265
|
||||
#, c-format
|
||||
msgid ""
|
||||
"download: %f\n"
|
||||
|
|
@ -623,7 +639,8 @@ msgstr ""
|
|||
msgid "%.3f seconds"
|
||||
msgstr ""
|
||||
|
||||
#: ../gtk/incall_view.c:384 ../gtk/main.ui.h:12
|
||||
#: ../gtk/incall_view.c:384
|
||||
#: ../gtk/main.ui.h:12
|
||||
msgid "Hang up"
|
||||
msgstr "Raccrocher"
|
||||
|
||||
|
|
@ -631,7 +648,8 @@ msgstr "Raccrocher"
|
|||
msgid "<b>Calling...</b>"
|
||||
msgstr "<b>Tentative d'appel...</b>"
|
||||
|
||||
#: ../gtk/incall_view.c:479 ../gtk/incall_view.c:689
|
||||
#: ../gtk/incall_view.c:479
|
||||
#: ../gtk/incall_view.c:689
|
||||
msgid "00::00::00"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -659,7 +677,8 @@ msgstr "très faible"
|
|||
msgid "too bad"
|
||||
msgstr "nulle"
|
||||
|
||||
#: ../gtk/incall_view.c:536 ../gtk/incall_view.c:552
|
||||
#: ../gtk/incall_view.c:536
|
||||
#: ../gtk/incall_view.c:552
|
||||
msgid "unavailable"
|
||||
msgstr "indisponible"
|
||||
|
||||
|
|
@ -676,7 +695,8 @@ msgstr "Sécurisé par ZRTP- [jeton: %s]"
|
|||
msgid "Set unverified"
|
||||
msgstr "Marquer comme non vérifié"
|
||||
|
||||
#: ../gtk/incall_view.c:663 ../gtk/main.ui.h:4
|
||||
#: ../gtk/incall_view.c:663
|
||||
#: ../gtk/main.ui.h:4
|
||||
msgid "Set verified"
|
||||
msgstr "Marquer comme vérifié"
|
||||
|
||||
|
|
@ -717,7 +737,8 @@ msgstr "Transfert échoué"
|
|||
msgid "Resume"
|
||||
msgstr "Reprendre"
|
||||
|
||||
#: ../gtk/incall_view.c:835 ../gtk/main.ui.h:9
|
||||
#: ../gtk/incall_view.c:835
|
||||
#: ../gtk/main.ui.h:9
|
||||
msgid "Pause"
|
||||
msgstr "Pause"
|
||||
|
||||
|
|
@ -752,7 +773,7 @@ msgstr "Fin de conférence"
|
|||
|
||||
#: ../gtk/main.ui.h:7
|
||||
msgid "Record this call to an audio file"
|
||||
msgstr ""
|
||||
msgstr "Enregistrement de l'appel dans un fichier audio."
|
||||
|
||||
#: ../gtk/main.ui.h:8
|
||||
msgid "Video"
|
||||
|
|
@ -760,7 +781,7 @@ msgstr "Vidéo"
|
|||
|
||||
#: ../gtk/main.ui.h:10
|
||||
msgid "Mute"
|
||||
msgstr ""
|
||||
msgstr "Couper le son"
|
||||
|
||||
#: ../gtk/main.ui.h:11
|
||||
msgid "Transfer"
|
||||
|
|
@ -808,7 +829,7 @@ msgstr ""
|
|||
|
||||
#: ../gtk/main.ui.h:24
|
||||
msgid "Account assistant"
|
||||
msgstr ""
|
||||
msgstr "Assistant de compte"
|
||||
|
||||
#: ../gtk/main.ui.h:25
|
||||
msgid "SIP address or phone number:"
|
||||
|
|
@ -822,11 +843,13 @@ msgstr "Démarrer un nouvel appel"
|
|||
msgid "Contacts"
|
||||
msgstr "Contacts"
|
||||
|
||||
#: ../gtk/main.ui.h:28 ../gtk/parameters.ui.h:50
|
||||
#: ../gtk/main.ui.h:28
|
||||
#: ../gtk/parameters.ui.h:50
|
||||
msgid "Add"
|
||||
msgstr "Ajouter"
|
||||
|
||||
#: ../gtk/main.ui.h:29 ../gtk/parameters.ui.h:51
|
||||
#: ../gtk/main.ui.h:29
|
||||
#: ../gtk/parameters.ui.h:51
|
||||
msgid "Edit"
|
||||
msgstr "Editer"
|
||||
|
||||
|
|
@ -850,17 +873,19 @@ msgstr "Appels récents"
|
|||
msgid "My current identity:"
|
||||
msgstr "Mon identité sip:"
|
||||
|
||||
#: ../gtk/main.ui.h:35 ../gtk/tunnel_config.ui.h:7
|
||||
#: ../gtk/main.ui.h:35
|
||||
#: ../gtk/tunnel_config.ui.h:7
|
||||
msgid "Username"
|
||||
msgstr "Nom d'utilisateur"
|
||||
|
||||
#: ../gtk/main.ui.h:36 ../gtk/tunnel_config.ui.h:8
|
||||
#: ../gtk/main.ui.h:36
|
||||
#: ../gtk/tunnel_config.ui.h:8
|
||||
msgid "Password"
|
||||
msgstr "Mot de passe"
|
||||
|
||||
#: ../gtk/main.ui.h:37
|
||||
msgid "Internet connection:"
|
||||
msgstr ""
|
||||
msgstr "Connexion internet:"
|
||||
|
||||
#: ../gtk/main.ui.h:38
|
||||
msgid "Automatically log me in"
|
||||
|
|
@ -1041,7 +1066,8 @@ msgstr "Codecs audio"
|
|||
msgid "Video codecs"
|
||||
msgstr "Codecs vidéo"
|
||||
|
||||
#: ../gtk/parameters.ui.h:7 ../gtk/keypad.ui.h:5
|
||||
#: ../gtk/parameters.ui.h:7
|
||||
#: ../gtk/keypad.ui.h:5
|
||||
msgid "C"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -1091,7 +1117,7 @@ msgstr ""
|
|||
|
||||
#: ../gtk/parameters.ui.h:19
|
||||
msgid "DSCP fields"
|
||||
msgstr ""
|
||||
msgstr "Champs DSCP"
|
||||
|
||||
#: ../gtk/parameters.ui.h:20
|
||||
msgid "Fixed"
|
||||
|
|
@ -1127,14 +1153,12 @@ msgid "Behind NAT / Firewall (use STUN to resolve)"
|
|||
msgstr "Derrière un pare-feu (utiliser STUN)"
|
||||
|
||||
#: ../gtk/parameters.ui.h:28
|
||||
#, fuzzy
|
||||
msgid "Behind NAT / Firewall (use ICE)"
|
||||
msgstr "Derrière un pare-feu (utiliser STUN)"
|
||||
msgstr "Derrière un pare-feu (utiliser ICE)"
|
||||
|
||||
#: ../gtk/parameters.ui.h:29
|
||||
#, fuzzy
|
||||
msgid "Behind NAT / Firewall (use uPnP)"
|
||||
msgstr "Derrière un pare-feu (utiliser STUN)"
|
||||
msgstr "Derrière un pare-feu (utiliser uPnP)"
|
||||
|
||||
#: ../gtk/parameters.ui.h:30
|
||||
msgid "Stun server:"
|
||||
|
|
@ -1194,9 +1218,7 @@ msgstr "Paramètres multimedia"
|
|||
|
||||
#: ../gtk/parameters.ui.h:44
|
||||
msgid "This section defines your SIP address when not using a SIP account"
|
||||
msgstr ""
|
||||
"Cette rubrique permet de définir son adresse SIP lorsqu'on ne possède pas de "
|
||||
"compte SIP"
|
||||
msgstr "Cette rubrique permet de définir son adresse SIP lorsqu'on ne possède pas de compte SIP"
|
||||
|
||||
#: ../gtk/parameters.ui.h:45
|
||||
msgid "Your display name (eg: John Doe):"
|
||||
|
|
@ -1238,11 +1260,13 @@ msgstr "<b>Sécurité</b>"
|
|||
msgid "Manage SIP Accounts"
|
||||
msgstr "Gérer mes comptes SIP"
|
||||
|
||||
#: ../gtk/parameters.ui.h:57 ../gtk/tunnel_config.ui.h:4
|
||||
#: ../gtk/parameters.ui.h:57
|
||||
#: ../gtk/tunnel_config.ui.h:4
|
||||
msgid "Enable"
|
||||
msgstr "Activer"
|
||||
|
||||
#: ../gtk/parameters.ui.h:58 ../gtk/tunnel_config.ui.h:5
|
||||
#: ../gtk/parameters.ui.h:58
|
||||
#: ../gtk/tunnel_config.ui.h:5
|
||||
msgid "Disable"
|
||||
msgstr "Désactiver"
|
||||
|
||||
|
|
@ -1267,13 +1291,8 @@ msgid "Enable adaptive rate control"
|
|||
msgstr "Activer le control de débit adaptatif."
|
||||
|
||||
#: ../gtk/parameters.ui.h:64
|
||||
msgid ""
|
||||
"<i>Adaptive rate control is a technique to dynamically guess the available "
|
||||
"bandwidth during a call.</i>"
|
||||
msgstr ""
|
||||
"<i>Le control de débit adaptatif est une technique pour adapter la qualité "
|
||||
"de l'audio et de la video en fonction de la bande passante disponible, "
|
||||
"durant l'appel.</i>"
|
||||
msgid "<i>Adaptive rate control is a technique to dynamically guess the available bandwidth during a call.</i>"
|
||||
msgstr "<i>Le control de débit adaptatif est une technique pour adapter la qualité de l'audio et de la video en fonction de la bande passante disponible, durant l'appel.</i>"
|
||||
|
||||
#: ../gtk/parameters.ui.h:65
|
||||
msgid "<b>Bandwidth control</b>"
|
||||
|
|
@ -1324,9 +1343,8 @@ msgid "Please wait"
|
|||
msgstr "En attente"
|
||||
|
||||
#: ../gtk/dscp_settings.ui.h:1
|
||||
#, fuzzy
|
||||
msgid "Dscp settings"
|
||||
msgstr "Réglages"
|
||||
msgstr "Réglages Dscp"
|
||||
|
||||
#: ../gtk/dscp_settings.ui.h:2
|
||||
msgid "SIP"
|
||||
|
|
@ -1346,10 +1364,9 @@ msgstr ""
|
|||
|
||||
#: ../gtk/call_statistics.ui.h:1
|
||||
msgid "Call statistics"
|
||||
msgstr ""
|
||||
msgstr "Statistiques de l'appel"
|
||||
|
||||
#: ../gtk/call_statistics.ui.h:2
|
||||
#, fuzzy
|
||||
msgid "Audio codec"
|
||||
msgstr "Codecs audio"
|
||||
|
||||
|
|
@ -1380,9 +1397,8 @@ msgid "Round trip time"
|
|||
msgstr ""
|
||||
|
||||
#: ../gtk/call_statistics.ui.h:9
|
||||
#, fuzzy
|
||||
msgid "<b>Call statistics and information</b>"
|
||||
msgstr "<b>Information sur le contact</b>"
|
||||
msgstr "<b>Statistiques de l'appel et informations</b>"
|
||||
|
||||
#: ../gtk/tunnel_config.ui.h:1
|
||||
#, fuzzy
|
||||
|
|
@ -1509,11 +1525,8 @@ msgid "Could not resolve this number."
|
|||
msgstr "La destination n'a pu être trouvée."
|
||||
|
||||
#: ../coreapi/linphonecore.c:2231
|
||||
msgid ""
|
||||
"Could not parse given sip address. A sip url usually looks like sip:"
|
||||
"user@domain"
|
||||
msgstr ""
|
||||
"Adresse SIP mal formulée. Une address sip ressemble à <sip:nom@domaine>"
|
||||
msgid "Could not parse given sip address. A sip url usually looks like sip:user@domain"
|
||||
msgstr "Adresse SIP mal formulée. Une address sip ressemble à <sip:nom@domaine>"
|
||||
|
||||
#: ../coreapi/linphonecore.c:2432
|
||||
msgid "Contacting"
|
||||
|
|
@ -1626,7 +1639,7 @@ msgstr "Parti"
|
|||
|
||||
#: ../coreapi/friend.c:57
|
||||
msgid "Using another messaging service"
|
||||
msgstr ""
|
||||
msgstr "Utilisation d'un autre service de messagerie"
|
||||
|
||||
#: ../coreapi/friend.c:60
|
||||
msgid "Offline"
|
||||
|
|
@ -1641,12 +1654,8 @@ msgid "Unknown-bug"
|
|||
msgstr "Bug inconnu"
|
||||
|
||||
#: ../coreapi/proxy.c:204
|
||||
msgid ""
|
||||
"The sip proxy address you entered is invalid, it must start with \"sip:\" "
|
||||
"followed by a hostname."
|
||||
msgstr ""
|
||||
"L'addresse SIP du proxy est invalide. Elle doit commencer par \"sip:\" "
|
||||
"suivie par un nom de domaine."
|
||||
msgid "The sip proxy address you entered is invalid, it must start with \"sip:\" followed by a hostname."
|
||||
msgstr "L'adresse SIP du proxy est invalide. Elle doit commencer par \"sip:\" suivie par un nom de domaine."
|
||||
|
||||
#: ../coreapi/proxy.c:210
|
||||
msgid ""
|
||||
|
|
@ -1654,8 +1663,7 @@ msgid ""
|
|||
"It should look like sip:username@proxydomain, such as sip:alice@example.net"
|
||||
msgstr ""
|
||||
"L'identité SIP que vous avez fourni est invalide.\n"
|
||||
"Elle doit être de la forme sip:username@domain, comme par example sip:"
|
||||
"alice@example.net"
|
||||
"Elle doit être de la forme sip:username@domain, comme par example sip:alice@example.net"
|
||||
|
||||
#: ../coreapi/proxy.c:1069
|
||||
#, c-format
|
||||
|
|
@ -1801,7 +1809,7 @@ msgstr[1] "Vous avez manqué %i appels"
|
|||
|
||||
#~ msgid "Enter username, phone number, or full sip address"
|
||||
#~ msgstr ""
|
||||
#~ "Entrez un nom d'utilisateur, un numéro de téléphone, ou une addresse SIP"
|
||||
#~ "Entrez un nom d'utilisateur, un numéro de téléphone, ou une adresse SIP"
|
||||
|
||||
#~ msgid "Lookup:"
|
||||
#~ msgstr "Rechercher:"
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue