Ignore:
Timestamp:
Mar 20, 2006 5:42:37 PM (18 years ago)
Author:
bennylp
Message:

Added clock-rate options in pjsua

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjsip/src/pjsua-lib/pjsua_settings.c

    r325 r343  
    8787    puts  ("  --wb                Enable wideband codecs and set clock-rate to 16KHz"); 
    8888    puts  ("  --uwb               Enable ultra-wideband codecs and set clock-rate to 32KHz"); 
     89    puts  ("  --clock-rate=N      Override sound device clock rate"); 
    8990    puts  ("  --null-audio        Use NULL audio device"); 
    9091    puts  ("  --no-mic            Disable microphone device"); 
     
    227228           OPT_ADD_BUDDY, OPT_OFFER_X_MS_MSG, OPT_NO_PRESENCE, 
    228229           OPT_AUTO_ANSWER, OPT_AUTO_HANGUP, OPT_AUTO_PLAY, OPT_AUTO_LOOP, 
    229            OPT_AUTO_CONF, 
     230           OPT_AUTO_CONF, OPT_CLOCK_RATE, 
    230231           OPT_PLAY_FILE, OPT_WB, OPT_UWB, OPT_RTP_PORT, OPT_ADD_CODEC, 
    231232           OPT_COMPLEXITY, OPT_QUALITY, 
     
    242243        { "wb",         0, 0, OPT_WB}, 
    243244        { "uwb",        0, 0, OPT_UWB}, 
     245        { "clock-rate", 1, 0, OPT_CLOCK_RATE}, 
    244246        { "null-audio", 0, 0, OPT_NULL_AUDIO}, 
    245247        { "no-mic",     0, 0, OPT_NO_MIC}, 
     
    352354 
    353355        case OPT_WB: 
    354             pjsua.clock_rate = 16000; 
     356            pjsua.has_wb = 1; 
    355357            break; 
    356358 
    357359        case OPT_UWB: 
    358             pjsua.clock_rate = 32000; 
     360            pjsua.has_uwb = 1; 
     361            break; 
     362 
     363        case OPT_CLOCK_RATE: 
     364            lval = pj_strtoul(pj_cstr(&tmp, pj_optarg)); 
     365            if (lval < 8000 || lval > 48000) { 
     366                printf("Error: expecting value between 8000-48000 for clock rate\n"); 
     367                return PJ_EINVAL; 
     368            } 
     369            pjsua.clock_rate = (int)lval;  
    359370            break; 
    360371 
     
    573584        return PJ_EINVAL; 
    574585    } 
     586 
     587    /* Adjust clock rate */ 
     588    if (pjsua.clock_rate == 8000 && pjsua.has_uwb) 
     589        pjsua.clock_rate = 32000; 
     590    else if (pjsua.clock_rate == 8000 && pjsua.has_wb) 
     591        pjsua.clock_rate = 16000; 
    575592 
    576593    return PJ_SUCCESS; 
     
    906923    } 
    907924    /* Media clock rate. */ 
    908     if (pjsua.clock_rate >= 32000) 
     925    if (pjsua.has_uwb) 
    909926        pj_strcat2(&cfg, "--uwb\n"); 
    910     else if (pjsua.clock_rate >= 16000) 
     927 
     928    if (pjsua.has_wb) 
    911929        pj_strcat2(&cfg, "--wb\n"); 
     930 
     931    pj_ansi_sprintf(line, "--clock-rate %d\n", 
     932                    pjsua.clock_rate); 
     933    pj_strcat2(&cfg, line); 
     934 
    912935 
    913936    /* Encoding quality and complexity */ 
Note: See TracChangeset for help on using the changeset viewer.