~ubuntu-branches/debian/sid/sflphone/sid

« back to all changes in this revision

Viewing changes to daemon/libs/pjproject/pjlib/include/pj/config_site_sample.h

  • Committer: Package Import Robot
  • Author(s): Mark Purcell
  • Date: 2013-06-02 18:04:11 UTC
  • mfrom: (1.1.9)
  • Revision ID: package-import@ubuntu.com-20130602180411-3rcpy8c1zdlo8y0s
Tags: 1.2.2-1
* New upstream release
* changeset_rb68857a4b485b7d43f92714cd5792595ff895f82.diff - fix QTest
* pjproject ./configure --disable-sound --disable-video

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
 * This file contains several sample settings especially for Windows
3
 
 * Mobile and Symbian targets. You can include this file in your
4
 
 * <pj/config_site.h> file.
5
 
 *
6
 
 * The Windows Mobile and Symbian settings will be activated
7
 
 * automatically if you include this file.
8
 
 *
9
 
 * In addition, you may specify one of these macros (before including
10
 
 * this file) to activate additional settings:
11
 
 *
12
 
 * #define PJ_CONFIG_NOKIA_APS_DIRECT
13
 
 *   Use this macro to activate the APS-Direct feature. Please see
14
 
 *   http://trac.pjsip.org/repos/wiki/Nokia_APS_VAS_Direct for more 
15
 
 *   info.
16
 
 *
17
 
 * #define PJ_CONFIG_WIN32_WMME_DIRECT
18
 
 *   Configuration to activate "APS-Direct" media mode on Windows or
19
 
 *   Windows Mobile, useful for testing purposes only.
20
 
 */
21
 
 
22
 
 
23
 
/*
24
 
 * Typical configuration for WinCE target.
25
 
 */
26
 
#if defined(PJ_WIN32_WINCE) && PJ_WIN32_WINCE!=0
27
 
 
28
 
    /*
29
 
     * PJLIB settings.
30
 
     */
31
 
 
32
 
    /* Disable floating point support */
33
 
    #define PJ_HAS_FLOATING_POINT               0
34
 
 
35
 
    /*
36
 
     * PJMEDIA settings
37
 
     */
38
 
 
39
 
    /* Select codecs to disable */
40
 
    #define PJMEDIA_HAS_L16_CODEC               0
41
 
    #define PJMEDIA_HAS_ILBC_CODEC              0
42
 
 
43
 
    /* We probably need more buffers on WM, so increase the limit */
44
 
    #define PJMEDIA_SOUND_BUFFER_COUNT          32
45
 
 
46
 
    /* Fine tune Speex's default settings for best performance/quality */
47
 
    #define PJMEDIA_CODEC_SPEEX_DEFAULT_QUALITY 5
48
 
 
49
 
    /* For CPU reason, disable speex AEC and use the echo suppressor. */
50
 
    #define PJMEDIA_HAS_SPEEX_AEC               0
51
 
 
52
 
    /* Previously, resampling is disabled due to performance reason and
53
 
     * this condition prevented some 'light' wideband codecs (e.g: G722.1)
54
 
     * to work along with narrowband codecs. Lately, some tests showed
55
 
     * that 16kHz <-> 8kHz resampling using libresample small filter was 
56
 
     * affordable on ARM9 260 MHz, so here we decided to enable resampling.
57
 
     * Note that it is important to make sure that libresample is created
58
 
     * using small filter. For example PJSUA_DEFAULT_CODEC_QUALITY must
59
 
     * be set to 3 or 4 so pjsua-lib will apply small filter resampling.
60
 
     */
61
 
    //#define PJMEDIA_RESAMPLE_IMP              PJMEDIA_RESAMPLE_NONE
62
 
    #define PJMEDIA_RESAMPLE_IMP                PJMEDIA_RESAMPLE_LIBRESAMPLE
63
 
 
64
 
    /* Use the lighter WSOLA implementation */
65
 
    #define PJMEDIA_WSOLA_IMP                   PJMEDIA_WSOLA_IMP_WSOLA_LITE
66
 
 
67
 
    /*
68
 
     * PJSIP settings.
69
 
     */
70
 
 
71
 
    /* Set maximum number of dialog/transaction/calls to minimum to reduce
72
 
     * memory usage 
73
 
     */
74
 
    #define PJSIP_MAX_TSX_COUNT                 31
75
 
    #define PJSIP_MAX_DIALOG_COUNT              31
76
 
    #define PJSUA_MAX_CALLS                     4
77
 
 
78
 
    /*
79
 
     * PJSUA settings
80
 
     */
81
 
 
82
 
    /* Default codec quality, previously was set to 5, however it is now
83
 
     * set to 4 to make sure pjsua instantiates resampler with small filter.
84
 
     */
85
 
    #define PJSUA_DEFAULT_CODEC_QUALITY         4
86
 
 
87
 
    /* Set maximum number of objects to minimum to reduce memory usage */
88
 
    #define PJSUA_MAX_ACC                       4
89
 
    #define PJSUA_MAX_PLAYERS                   4
90
 
    #define PJSUA_MAX_RECORDERS                 4
91
 
    #define PJSUA_MAX_CONF_PORTS                (PJSUA_MAX_CALLS+2*PJSUA_MAX_PLAYERS)
92
 
    #define PJSUA_MAX_BUDDIES                   32
93
 
 
94
 
#endif  /* PJ_WIN32_WINCE */
95
 
 
96
 
 
97
 
/*
98
 
 * Typical configuration for Symbian OS target
99
 
 */
100
 
#if defined(PJ_SYMBIAN) && PJ_SYMBIAN!=0
101
 
 
102
 
    /*
103
 
     * PJLIB settings.
104
 
     */
105
 
 
106
 
    /* Disable floating point support */
107
 
    #define PJ_HAS_FLOATING_POINT               0
108
 
 
109
 
    /* Misc PJLIB setting */
110
 
    #define PJ_MAXPATH                          80
111
 
 
112
 
    /* This is important for Symbian. Symbian lacks vsnprintf(), so
113
 
     * if the log buffer is not long enough it's possible that
114
 
     * large incoming packet will corrupt memory when the log tries
115
 
     * to log the packet.
116
 
     */
117
 
    #define PJ_LOG_MAX_SIZE                     (PJSIP_MAX_PKT_LEN+500)
118
 
 
119
 
    /* Since we don't have threads, log buffer can use static buffer
120
 
     * rather than stack
121
 
     */
122
 
    #define PJ_LOG_USE_STACK_BUFFER             0
123
 
 
124
 
    /* Disable check stack since it increases footprint */
125
 
    #define PJ_OS_HAS_CHECK_STACK               0
126
 
 
127
 
 
128
 
    /*
129
 
     * PJMEDIA settings
130
 
     */
131
 
 
132
 
    /* Disable non-Symbian audio devices */
133
 
    #define PJMEDIA_AUDIO_DEV_HAS_PORTAUDIO     0
134
 
    #define PJMEDIA_AUDIO_DEV_HAS_WMME          0
135
 
 
136
 
    /* Select codecs to disable */
137
 
    #define PJMEDIA_HAS_L16_CODEC               0
138
 
    #define PJMEDIA_HAS_ILBC_CODEC              0
139
 
    #define PJMEDIA_HAS_G722_CODEC              0
140
 
 
141
 
    /* Fine tune Speex's default settings for best performance/quality */
142
 
    #define PJMEDIA_CODEC_SPEEX_DEFAULT_QUALITY 5
143
 
 
144
 
    /* For CPU reason, disable speex AEC and use the echo suppressor. */
145
 
    #define PJMEDIA_HAS_SPEEX_AEC               0
146
 
 
147
 
    /* Previously, resampling is disabled due to performance reason and
148
 
     * this condition prevented some 'light' wideband codecs (e.g: G722.1)
149
 
     * to work along with narrowband codecs. Lately, some tests showed
150
 
     * that 16kHz <-> 8kHz resampling using libresample small filter was 
151
 
     * affordable on ARM9 222 MHz, so here we decided to enable resampling.
152
 
     * Note that it is important to make sure that libresample is created
153
 
     * using small filter. For example PJSUA_DEFAULT_CODEC_QUALITY must
154
 
     * be set to 3 or 4 so pjsua-lib will apply small filter resampling.
155
 
     */
156
 
    //#define PJMEDIA_RESAMPLE_IMP              PJMEDIA_RESAMPLE_NONE
157
 
    #define PJMEDIA_RESAMPLE_IMP                PJMEDIA_RESAMPLE_LIBRESAMPLE
158
 
 
159
 
    /* Use the lighter WSOLA implementation */
160
 
    #define PJMEDIA_WSOLA_IMP                   PJMEDIA_WSOLA_IMP_WSOLA_LITE
161
 
 
162
 
    /* We probably need more buffers especially if MDA audio backend 
163
 
     * is used, so increase the limit 
164
 
     */
165
 
    #define PJMEDIA_SOUND_BUFFER_COUNT          32
166
 
 
167
 
    /*
168
 
     * PJSIP settings.
169
 
     */
170
 
 
171
 
    /* Disable safe module access, since we don't use multithreading */
172
 
    #define PJSIP_SAFE_MODULE                   0
173
 
 
174
 
    /* Use large enough packet size  */
175
 
    #define PJSIP_MAX_PKT_LEN                   2000
176
 
 
177
 
    /* Symbian has problem with too many large blocks */
178
 
    #define PJSIP_POOL_LEN_ENDPT                1000
179
 
    #define PJSIP_POOL_INC_ENDPT                1000
180
 
    #define PJSIP_POOL_RDATA_LEN                2000
181
 
    #define PJSIP_POOL_RDATA_INC                2000
182
 
    #define PJSIP_POOL_LEN_TDATA                2000
183
 
    #define PJSIP_POOL_INC_TDATA                512
184
 
    #define PJSIP_POOL_LEN_UA                   2000
185
 
    #define PJSIP_POOL_INC_UA                   1000
186
 
    #define PJSIP_POOL_TSX_LAYER_LEN            256
187
 
    #define PJSIP_POOL_TSX_LAYER_INC            256
188
 
    #define PJSIP_POOL_TSX_LEN                  512
189
 
    #define PJSIP_POOL_TSX_INC                  128
190
 
 
191
 
    /*
192
 
     * PJSUA settings.
193
 
     */
194
 
 
195
 
    /* Default codec quality, previously was set to 5, however it is now
196
 
     * set to 4 to make sure pjsua instantiates resampler with small filter.
197
 
     */
198
 
    #define PJSUA_DEFAULT_CODEC_QUALITY         4
199
 
 
200
 
    /* Set maximum number of dialog/transaction/calls to minimum */
201
 
    #define PJSIP_MAX_TSX_COUNT                 31
202
 
    #define PJSIP_MAX_DIALOG_COUNT              31
203
 
    #define PJSUA_MAX_CALLS                     4
204
 
 
205
 
    /* Other pjsua settings */
206
 
    #define PJSUA_MAX_ACC                       4
207
 
    #define PJSUA_MAX_PLAYERS                   4
208
 
    #define PJSUA_MAX_RECORDERS                 4
209
 
    #define PJSUA_MAX_CONF_PORTS                (PJSUA_MAX_CALLS+2*PJSUA_MAX_PLAYERS)
210
 
    #define PJSUA_MAX_BUDDIES                   32
211
 
#endif
212
 
 
213
 
 
214
 
/*
215
 
 * Additional configuration to activate APS-Direct feature for
216
 
 * Nokia S60 target
217
 
 *
218
 
 * Please see http://trac.pjsip.org/repos/wiki/Nokia_APS_VAS_Direct
219
 
 */
220
 
#ifdef PJ_CONFIG_NOKIA_APS_DIRECT
221
 
 
222
 
    /* MUST use switchboard rather than the conference bridge */
223
 
    #define PJMEDIA_CONF_USE_SWITCH_BOARD       1
224
 
 
225
 
    /* Enable APS sound device backend and disable MDA & VAS */
226
 
    #define PJMEDIA_AUDIO_DEV_HAS_SYMB_MDA      0
227
 
    #define PJMEDIA_AUDIO_DEV_HAS_SYMB_APS      1
228
 
    #define PJMEDIA_AUDIO_DEV_HAS_SYMB_VAS      0
229
 
 
230
 
    /* Enable passthrough codec framework */
231
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODECS      1
232
 
 
233
 
    /* And selectively enable which codecs are supported by the handset */
234
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODEC_PCMU  1
235
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODEC_PCMA  1
236
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODEC_AMR   1
237
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODEC_G729  1
238
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODEC_ILBC  1
239
 
 
240
 
#endif
241
 
 
242
 
 
243
 
/*
244
 
 * Additional configuration to activate VAS-Direct feature for
245
 
 * Nokia S60 target
246
 
 *
247
 
 * Please see http://trac.pjsip.org/repos/wiki/Nokia_APS_VAS_Direct
248
 
 */
249
 
#ifdef PJ_CONFIG_NOKIA_VAS_DIRECT
250
 
 
251
 
    /* MUST use switchboard rather than the conference bridge */
252
 
    #define PJMEDIA_CONF_USE_SWITCH_BOARD       1
253
 
 
254
 
    /* Enable VAS sound device backend and disable MDA & APS */
255
 
    #define PJMEDIA_AUDIO_DEV_HAS_SYMB_MDA      0
256
 
    #define PJMEDIA_AUDIO_DEV_HAS_SYMB_APS      0
257
 
    #define PJMEDIA_AUDIO_DEV_HAS_SYMB_VAS      1
258
 
 
259
 
    /* Enable passthrough codec framework */
260
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODECS      1
261
 
 
262
 
    /* And selectively enable which codecs are supported by the handset */
263
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODEC_PCMU  1
264
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODEC_PCMA  1
265
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODEC_AMR   1
266
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODEC_G729  1
267
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODEC_ILBC  1
268
 
 
269
 
#endif
270
 
 
271
 
 
272
 
/*
273
 
 * Configuration to activate "APS-Direct" media mode on Windows,
274
 
 * useful for testing purposes only.
275
 
 */
276
 
#ifdef PJ_CONFIG_WIN32_WMME_DIRECT
277
 
 
278
 
    /* MUST use switchboard rather than the conference bridge */
279
 
    #define PJMEDIA_CONF_USE_SWITCH_BOARD       1
280
 
 
281
 
    /* Only WMME supports the "direct" feature */
282
 
    #define PJMEDIA_AUDIO_DEV_HAS_PORTAUDIO     0
283
 
    #define PJMEDIA_AUDIO_DEV_HAS_WMME          1
284
 
 
285
 
    /* Enable passthrough codec framework */
286
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODECS      1
287
 
 
288
 
    /* Only PCMA and PCMU are supported by WMME-direct */
289
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODEC_PCMU  1
290
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODEC_PCMA  1
291
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODEC_AMR   0
292
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODEC_G729  0
293
 
    #define PJMEDIA_HAS_PASSTHROUGH_CODEC_ILBC  0
294
 
 
295
 
#endif
296
 
 
297
 
/*
298
 
 * iPhone sample settings.
299
 
 */
300
 
#if PJ_CONFIG_IPHONE
301
 
    /*
302
 
     * PJLIB settings.
303
 
     */
304
 
 
305
 
    /* Disable floating point support */
306
 
    #define PJ_HAS_FLOATING_POINT               0
307
 
 
308
 
    /*
309
 
     * PJMEDIA settings
310
 
     */
311
 
 
312
 
    /* We have our own native CoreAudio backend */
313
 
    #define PJMEDIA_AUDIO_DEV_HAS_PORTAUDIO     0
314
 
    #define PJMEDIA_AUDIO_DEV_HAS_WMME          0
315
 
    #define PJMEDIA_AUDIO_DEV_HAS_COREAUDIO     1
316
 
 
317
 
    /* The CoreAudio backend has built-in echo canceller! */
318
 
    #define PJMEDIA_HAS_SPEEX_AEC    0
319
 
 
320
 
    /* Disable some codecs */
321
 
    #define PJMEDIA_HAS_L16_CODEC               0
322
 
    #define PJMEDIA_HAS_G722_CODEC              0
323
 
 
324
 
    /* Use the built-in CoreAudio's iLBC codec (yay!) */
325
 
    #define PJMEDIA_HAS_ILBC_CODEC              1
326
 
    #define PJMEDIA_ILBC_CODEC_USE_COREAUDIO    1
327
 
 
328
 
    /* Fine tune Speex's default settings for best performance/quality */
329
 
    #define PJMEDIA_CODEC_SPEEX_DEFAULT_QUALITY 5
330
 
 
331
 
    /*
332
 
     * PJSIP settings.
333
 
     */
334
 
 
335
 
    /* Increase allowable packet size, just in case */
336
 
    //#define PJSIP_MAX_PKT_LEN                 2000
337
 
 
338
 
    /*
339
 
     * PJSUA settings.
340
 
     */
341
 
 
342
 
    /* Default codec quality, previously was set to 5, however it is now
343
 
     * set to 4 to make sure pjsua instantiates resampler with small filter.
344
 
     */
345
 
    #define PJSUA_DEFAULT_CODEC_QUALITY         4
346
 
 
347
 
    /* Set maximum number of dialog/transaction/calls to minimum */
348
 
    #define PJSIP_MAX_TSX_COUNT                 31
349
 
    #define PJSIP_MAX_DIALOG_COUNT              31
350
 
    #define PJSUA_MAX_CALLS                     4
351
 
 
352
 
    /* Other pjsua settings */
353
 
    #define PJSUA_MAX_ACC                       4
354
 
    #define PJSUA_MAX_PLAYERS                   4
355
 
    #define PJSUA_MAX_RECORDERS                 4
356
 
    #define PJSUA_MAX_CONF_PORTS                (PJSUA_MAX_CALLS+2*PJSUA_MAX_PLAYERS)
357
 
    #define PJSUA_MAX_BUDDIES                   32
358
 
 
359
 
#endif
360
 
 
361
 
/*
362
 
 * Minimum size
363
 
 */
364
 
#ifdef PJ_CONFIG_MINIMAL_SIZE
365
 
 
366
 
#   undef PJ_OS_HAS_CHECK_STACK
367
 
#   define PJ_OS_HAS_CHECK_STACK        0
368
 
#   define PJ_LOG_MAX_LEVEL             0
369
 
#   define PJ_ENABLE_EXTRA_CHECK        0
370
 
#   define PJ_HAS_ERROR_STRING          0
371
 
#   undef PJ_IOQUEUE_MAX_HANDLES
372
 
/* Putting max handles to lower than 32 will make pj_fd_set_t size smaller
373
 
 * than native fdset_t and will trigger assertion on sock_select.c.
374
 
 */
375
 
#   define PJ_IOQUEUE_MAX_HANDLES       32
376
 
#   define PJ_CRC32_HAS_TABLES          0
377
 
#   define PJSIP_MAX_TSX_COUNT          15
378
 
#   define PJSIP_MAX_DIALOG_COUNT       15
379
 
#   define PJSIP_UDP_SO_SNDBUF_SIZE     4000
380
 
#   define PJSIP_UDP_SO_RCVBUF_SIZE     4000
381
 
#   define PJMEDIA_HAS_ALAW_ULAW_TABLE  0
382
 
 
383
 
#elif defined(PJ_CONFIG_MAXIMUM_SPEED)
384
 
#   define PJ_SCANNER_USE_BITWISE       0
385
 
#   undef PJ_OS_HAS_CHECK_STACK
386
 
#   define PJ_OS_HAS_CHECK_STACK        0
387
 
#   define PJ_LOG_MAX_LEVEL             3
388
 
#   define PJ_ENABLE_EXTRA_CHECK        0
389
 
#   define PJ_IOQUEUE_MAX_HANDLES       5000
390
 
#   define PJSIP_MAX_TSX_COUNT          ((640*1024)-1)
391
 
#   define PJSIP_MAX_DIALOG_COUNT       ((640*1024)-1)
392
 
#   define PJSIP_UDP_SO_SNDBUF_SIZE     (24*1024*1024)
393
 
#   define PJSIP_UDP_SO_RCVBUF_SIZE     (24*1024*1024)
394
 
#   define PJ_DEBUG                     0
395
 
#   define PJSIP_SAFE_MODULE            0
396
 
#   define PJ_HAS_STRICMP_ALNUM         0
397
 
#   define PJ_HASH_USE_OWN_TOLOWER      1
398
 
#   define PJSIP_UNESCAPE_IN_PLACE      1
399
 
 
400
 
#   ifdef PJ_WIN32
401
 
#     define PJSIP_MAX_NET_EVENTS       10
402
 
#   endif
403
 
 
404
 
#   define PJSUA_MAX_CALLS              512
405
 
 
406
 
#endif
407