summaryrefslogtreecommitdiff
path: root/docs/ChangeLog
blob: 5ce39d919fb471ca7abf771d9aabf905a6bf910f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
2014-12-24 Alfred E. Heggestad <aeh@db.org>

	* Version 0.4.12

	* GIT commit 67993e35d980375458348b264c4a35a944bb5180
	* NOTE: Requires libre v0.4.11 or later

	* baresip:
	  - account: add regint and pubint
	  - audio: fix checking of sample-rate range
	  - config: remove the "input" block
	  - config: added support for quoted device parameters
	  - config: fix conversion of bandwidth to kbit/s
	  - config: generate more relevant config for FreeBSD and OpenBSD
		    (thanks Dmitrij D. Czarkoff)
	  - reg: add support for extracting GRUU parameter
	  - main: add -p option to set path to audio files
	  - sipreq: make response-handler optional
	  - ua: add support for GRUU (RFC 5627)
	    (many thanks to Juha Heinanen for starting this work and
	     helping out with the testing)
	  - ua: moved presence-status to each struct ua instance
	  - ua: add presence status to each User-Agent instance
	  - ua: use public-GRUU if set, otherwise local cuser
	  - ui: make UI single instance
	  - video: add VIDENC_INTERNAL_FMT (suggested by Victor Sergienko)

	* docs: added sample configuration files

	* account: added pubint for Publishing Interval

	* avcodec: upgrade to recent ffmpeg/libav APIs
		   either FFmpeg or libav can be used

	* celt: deleted module (replaced by opus)

	* cons: update usage of struct ui, added output handler
		added config: cons_listen    0.0.0.0:5555

	* evdev: update usage of struct ui, added output handler
		 added config: evdev_device    /dev/input/event0

	* httpd: added ui output handler

	* menu: added command 'o' for sending OPTION request
		(thanks to Juha Heinanen)

		added command 'D' for accepting incoming calls

	* mwi: subscribe to MWI after Registration succeeded
	       (thanks to Juha Heinanen)

	* opensles: add double-buffering and some tuning
		    (thanks to Francesco Bradascio)

	* opus: added config "opus_bitrate" (thanks to Sebastian Reimers)

	* presence: added support for PUBLISH (thanks to Juha Heinanen)
		    interop fixes and tuning

	* stdio: update usage of struct ui, added output handler

	* uuid: use internal version of generating UUID

	* v4l2: use memory mapped mode only

	* vumeter: dont call tmr_start from non-RE thread

	* wincons: update usage of struct ui, added output handler

	* winwave: fix bug when closing player device
		   (thanks to Tomasz Ostrowski)
		   add support for mapping device name to index

	* zrtp: add support for verify SAS (thanks to Ingo Feinerer)


2014-06-21 Alfred E. Heggestad <aeh@db.org>

	* Version 0.4.11

	* GIT commit 7a465f2eb92f4e32740093e5ad4970d528908c51

	* baresip:
	  - audio: added audio_ismuted() to get audio mute status
	  - audio: fix timestamp generation for stereo-streams
	  - audio: send outgoing audio-packets as soon as possible
	  - audio: upgrade to sample-based ausrc/auplay API
	  - auplay: change API to use samples instead of 8-bit buffer
	  - auplay: remove option to specify sample format (always S16LE)
	  - ausrc: change API to use samples instead of 8-bit buffer
	  - ausrc: remove option to specify sample format (always S16LE)
	  - call: added support for X-RTP-Stat header (thanks Lorenzo Mangani)
	  - call: check for common audio-codecs (thanks Juha Heinanen)
	  - logging: use info() instead of DEBUG_INFO();
	  - logging: use warning() instead of DEBUG_WARNING()
	  - play: convert WAV-file from little-endian to native-endian
	  - removed support for Symbian OS

	* debian: upgrade debian files

	* avcapture: also build for MacOSX

	* alsa: fix sample-endianess with SND_PCM_FORMAT_S16
		upgrade to sample-based ausrc/auplay API

	* audiounit: upgrade to sample-based ausrc/auplay API

	* auloop: upgrade to sample-based ausrc/auplay API

	* coreaudio: upgrade to sample-based ausrc/auplay API

	* dtls_srtp: use DTLS code from libre (needs libre v0.4.9 or later)
		     use SRTP code from libre (needs libre v0.4.9 or later)

	* dtmfio: new module to send DTMF-events via FIFO file
		  (contributed by Aaron Herting)

	* fakevideo: new module for fake video input/output driver

	* gst: upgrade to sample-based ausrc/auplay API

	* ice: set default candidates for ICE-lite

	* libsrtp: module 'srtp.so' renamed to 'libsrtp.so'

	* mda: Symbian MDA audio driver was deleted

	* menu: fix issue with audio-mute on multiple calls

	* opensles: upgrade to sample-based ausrc/auplay API

	* oss: upgrade to sample-based ausrc/auplay API

	* portaudio: upgrade to sample-based ausrc/auplay API

	* rst: upgrade to sample-based ausrc/auplay API

	* selftest: new module for testing the baresip core api

	* sndio: new module for OpenBSD audio driver
                 (It was contributed by Dmitrij D. Czarkoff, thank you!)

	* srtp: module is now using SRTP-stack from libre (v0.4.9 or later)

	* syslog: use logging framework to get messages

	* v4l2: add format negotiation and OpenBSD support
                (contributed by Dmitrij D. Czarkoff)

	* winwave: upgrade to sample-based ausrc/auplay API


2014-01-23 Alfred E. Heggestad <aeh@db.org>

	* Version 0.4.10

	* baresip:
	  - account: add account_set_display_name() -- thanks Dimitris
	  - audio: use both srate/channels to check if resampler is needed
	  - aufilt: change from frame_size to ptime
	  - auplay: change from frame_size to ptime
	  - ausrc: change from frame_size to ptime
	  - config: add optional ausrc_channels and auplay_channels
	  - config: create config dir with mode 0700 (suggested by Jann Horn)
	  - play: update auplay usage with ptime

	* alsa: update to new ausrc/auplay API with ptime
		fix bug when snd_pcm_readi() returns -EPIPE (thanks Remik)
		open device from main thread instead of alsa-thread (thanks EL)
		(caused problems with Sennheiser Century SC 660 + USB adapter)
	
	* auloop: minor cleanups and improvements

	* coreaudio: update to new ausrc/auplay API with ptime

	* gst: update to new ausrc/auplay API with ptime

	* l16: fix a bug with sample count

	* opus: fix a memory corruption error in opus_decode_pkloss()

	* oss: update to new ausrc/auplay API with ptime

	* plc: update to new aufilt API with ptime

	* portaudio: update to new ausrc/auplay API with ptime
		     fix bugs when using channels=2 (stereo)
		     configure device index using "device" parameter

	* rst: update to new ausrc/auplay API with ptime

	* speex_aec: update to new aufilt API with ptime

	* speex_pp: update to new aufilt API with ptime

	* winwave: update to new ausrc/auplay API with ptime

	* zrtp:	update to use libzrtp from Travis Cross' github
		use config dir to store ZRTP cache-file (thanks Juha Heinanen)
	
	
2014-01-06 Alfred E. Heggestad <aeh@db.org>

	* Version 0.4.9

	* new modules:
	  - zrtp  Media Path Key Agreement for Unicast Secure RTP

	* build:
	  - added support for LLVM clang compiler

	* baresip:
	  - account: add account_laddr()
	  - audio: upgrade to new librem auresamp API
	  - config: use oss,/dev/dsp as default device for FreeBSD
	  - log: added new logging framework
	  - main: added new verbose debug argument (-v)
	  - net: added sanity check for HAVE_INET6 build flag
	  - play: added play_set_path() -- thanks to Dimitris P.
	  - ua: added uag_find_param()
	  - ua: fix param-bug in ua_connect() -- thanks to Juha Heinanen

	* aubridge: upgrade to new librem auresamp API

	* avcodec: use new av_frame_alloc() api

	* celt: deprecate CELT-module, use OPUS instead

	* opengles: fix warnings (thanks to Dimitris P.)

	* opensles: fix bugs in player and recorder

	* opus: encode/decode sdp parameters as of I-D

	* speex_resamp: module removed, replaced by librem's resampler

	* zrtp: new module for ZRTP media encryption (use ;mediaenc=zrtp)


2013-12-06 Alfred E. Heggestad <aeh@db.org>

	* Version 0.4.8

	* new modules:
	  - dtls_srtp  DTLS-SRTP media encryption module (RFC 5763,5764)
	  - aubridge   Audio Bridge to connect auplay->ausrc
	  - vidbridge  Video Bridge module to connect vidisp->vidsrc

	* baresip:
	  - added RFC 5576  Source-Specific Media Attributes in SDP
	  - audio: set SDP bandwidth only if "rtp_bandwidth" config set
	  - play: do not store a copy of global config
	  - stream: save RTCP statistics from Sender-reports
	  - stream: add SDP ssrc attribute
	  - stream: added metrics for packets/bytes transmit/receive
	  - ua: added uag_current()/_set() to get/set current User-Agent
	  - video: set maximum RTP packet-size to 1024 bytes

	* config:
	  - added "video_display  module,device" for Video Display
	  - added "rtp_stats      {off,on}" for RTP Statistics after Call
	  - default RTP bandwidth is now 0-0

	* contact: dynamic command description for "Message" handling
		   dial from current UA (thanks to Simon Liebold)

	* isac: upgrade to draft-ietf-avt-rtp-isac-04

	* srtp: added auto-negotiation of RTP-profile for incoming calls
		(RTP/AVP, RTP/AVPF, RTP/SAVP, RTP/SAVPF)

	* vidloop: fix memory leak


2013-11-12 Alfred E. Heggestad <aeh@db.org>

	* Version 0.4.7

	* new modules:
	  - httpd   HTTP webserver UI module

	* baresip:
	  - added RFC 5506 Support for Reduced-Size RTCP
	  - audio: minor cleanups
	  - cmd: ignore RELEASE key in editor mode
	  - conf: add conf_get_sa()
	  - mnat: add address family (af) to session handler
	  - realtime: fixes for iOS (thanks Dimitris)
	  - ua: make ua_register() public
	  - ua: add ua_calls() to get list of calls
	  - ua: only create register client if regint > 0

	* debian: update dependencies (thanks Juha Heinanen)

	* rpm: added RPM package spec file

	* alsa: open device from thread to avoid blocking re-main loop

	* avcodec: build fixes for Debian Testing

	* avformat: use sys_msleep()

	* contact: improve matching logic (thanks EJC Lindner)

	* dshow: initialize variables (found with cppcheck)

	* evdev: fix formatted printing (found with cppcheck)

	* ice: use address family (AF) from call

	* ilbc: update to separate encoder/decoder states (thanks Dimitris)
	
	* snapshot: initialize variables (found with cppcheck)

	* stun: use address family (AF) from call

	* turn: use address family (AF) from call

	* uuid: fix usage of strncat()


2013-10-11 Alfred E. Heggestad <aeh@db.org>

	* Version 0.4.6

	* new modules:
	  - directfb   DirectFB video display module (thanks Andreas Shimokawa)
	  - dshow      Windows DirectShow vidsrc (thanks Dusan Stevanovic)
	  - wincons    Console input driver for Windows

	* baresip:
	  - audio: print audio-pipelines in console/debug
	  - aufilt: split into separate encoder+decoder states
	  - call: add local uri/name, dtmf-handler
	  - call: fix decoding of DTMF/SIP-INFO for '*' and '#'
	  - export CALL_EVENT_* in public API
	  - fix various clang warnings
	  - sipreq: use outbound proxy if specified (thanks EJC Lindner)
	  - ua: add possibility to specify 'struct call' for hangup/answer
	  - ua: move SIP extensions into a dynamic vector container
	  - ua: move playing of tones from call.c to ua.c
	  - vidfilt: split into separate encoder+decoder states
	  - vidisp: remove input handler

	* menu: improve call-transfer handling

	* plc: update to separate encoder/decoder states

	* selfview: update to separate encoder/decoder states

	* snapshot: remove state which was not needed

	* sndfile: update to separate encoder/decoder states
                   print unique timestamp to saved files

	* speex_aec: update to separate encoder/decoder states

	* speex_pp: update to separate encoder/decoder states

	* vidloop: update to separate encoder/decoder vidfilt states

	* vumeter: update to separate encoder/decoder states

	* wincons: new module for Console input on Win32


2013-08-31 Alfred E. Heggestad <aeh@db.org>

	* Version 0.4.5

	* new modules:
	  - account      Account loader module
	  - natpmp	 NAT-PMP client (RFC 6886)
	  - sdl2         Video display using libSDL2
	
	* baresip:
	  - account: added SIP account parser and container
	  - config: split conf.c into conf.c and config.c
	  - config: move enum audio_mode to struct config
	  - config: move uuid to struct config
	  - more usage of the #ifdef USE_VIDEO macro
	  - message: add handling of SIP MESSAGE send/recv
	  - mediaenc: added rtp_sock parameter to media-handler
	  - ua: cleanup public struct ua API
	  - vidisp api: remove unused 'parent' parameter
	  - call: handle incoming DTMF in SIP INFO (application/dtmf-relay)
	  - sdp: added sdp_decode_multipart()
	  - net: fix bug on IP-refresh when 'net_interface' is used
	  - video: minor cleanups
		   handle incoming RTCP_RTPFB_GNACK
	
	* isac: fix encode_update() signature

	* menu: move dialbuffer here from ua.c
		added command 'g' to print current config

	* mwi: multiple MWIs for multiple UAs

	* presence: include supported methods in SIP messages

	* srtp: improved interop and debugging
		handle incoming RTP/RTCP-demultiplexing

	* uuid: write loaded UUID directly to struct config

	* vidloop: added video-filters


2013-05-18 Alfred E. Heggestad <aeh@db.org>

	* Version 0.4.4

	* new modules:
	  - g726      G.726 audio codec
	  - mwi       Message Waiting Indication
	  - snapshot  Save video-stream as PNG images

	* config:
	  - added 'sip_certificate' to use a Certificate for SIP/TLS
	  - added 'ausrc_srate' and 'auplay_srate' to force DSP samplerate

	* baresip:
	  - added a simple BFCP client
	  - aufilt: improved API
	  - mediaenc: improved API with session state
	  - ua: added event handler framework
	  - aucodec: improved API with separate encode/decode state
	  - vidcodec: improved API with separate encode/decode state
	  - sdp.c: added SDP helper functions
	  - ua: move registration client to reg.c
	  - audio: added internal resampler

	* auloop: added config option 'auloop_codec' for setting codec

	* ice: remove old 'ice_interface' config option

	* menu: move handling of status-mode here

	* selfview: added config option 'selfview_size'

	* vp8: upgrade to draft-ietf-payload-vp8-08

	* winwave: cleanup and minor fixes


2013-01-01 Alfred E. Heggestad <aeh@db.org>

	* Version 0.4.3

	* new modules:
	  - selfview    Video selfview as video-filter module
	  - vumeter	Audio-filter module to display recording/playback level

	* config:
	  - added 'net_interface" to bind to a specific network interface
	  - added accounts 'regq' parameter for SIP Register client

	* baresip:
	  - added video-filter plugin API (vidfilt)
	  - audio.c: cleanups, split into transmit/receive part
	  - ua: added SIP Allow-header (thanks Juha Heinanen)
	  - ua: added Register q-value (thanks Juha Heinanen)
	  - ua: fix DTMF end event bug

	* avcodec: fix x264 fps bug (thanks Trevor Jim)

	* ice: only include ufrag/pwd in session SDP (thanks Juha Heinanen)

	
2012-09-09 Alfred E. Heggestad <aeh@db.org>

	* Version 0.4.2

	* new modules:
	  - auloop    Audio-loop test module
	  - contact   Contacts module
	  - isac      iSAC audio codec
	  - menu      Interactive menu
	  - opengles  OpenGLES video output
	  - presence  Presence module
	  - syslog    Syslog module
	  - vidloop   Video-loop test module

	* baresip:
	  - added support for call transfer
	  - added support for call waiting
	  - added multiple calls per user-agent
	  - added multiple registrations per user-agent
	  - cmd: added new command interface
	  - ua:  handle SIP Require header for incoming calls
	  - ui:  cleanup, use dynamic interactive menu
	
	* config:
	  - added 'audio_alert' for ringtones etc.
	  - added 'outboundX=proxy' for multiple outbound proxies
	  - added 'module_tmp' for temporary module loading
	  - added 'module_app' for application modules
	
	* avcodec: upgrade to latest FFmpeg and fix pts bug

	* natbd: register command 'z' for status

	* srtp: fix memleak on close

	* uuid: added UUID loader


2012-04-21 Alfred E. Heggestad <aeh@db.org>

	* Version 0.4.1

	* baresip: do not include rem.h from baresip.h
		   rename struct conf to struct config
		   vidsrc API: move size to alloc handler
		   aucodec API: change fmtp type to 'const char *'
				add SDP fmtp compare handler
		   vidcodec API: added enqueue and packetizer handlers
				 remove size from vidcodec_prm
				 remove decoder parameters from alloc
				 change fmtp type to 'const char *'
				 add SDP fmtp compare handler
		   remove aufile.c, use librem instead
		   audio: fix Telev timestamp (thanks Paulo Vicentini)
			  configurable order of playback/source start
		   ua_find: match AOR for interop (thanks Tomasz Ostrowski)
		   ua: more robust parsing for incoming MESSAGE
		   ua: password prompt (thanks to Juha Heinanen)
	
	* build: detect amr, cairo, rst, silk modules

	* config: split 'audio_dev' parameter into 'audio_player/audio_source'
		  order of audio_player/audio_source decide opening order
		  rename 'video_dev' parameter to 'video_source'
		  added optional 'auth_user=NAME' account parameter
		  (idea was suggested by Juha Heinanen)
	
	* alsa: play: no need to call snd_pcm_start(), explictly started when
		writing data to the device. (thanks to Christof Meerwald)

	* amr: 	more portable AMR codec
	
	* avcodec: automatic size from encoded frames
		   detect packetization-mode from SDP format
		   use enqueue handler
	
	* avformat: update to latest versions of ffmpeg
	
	* cairo: new experimental video source module

	* cons: added support for TCP

	* evdev: added KEY_KPx (thanks to ccwufu on OpenWRT forum)

	* g7221: use bitrate from decoded SDP format
		 added optional G722_PCM_SHIFT for 14-bit compat
	
	* rst: thread-based video source
	
	* silk: fix crash, init encoder, bitrate=64000 and complexity=2
	        (reported by Juha Heinanen)
	
	* srtp: decode SDES lifetime and MKI

	* v4l, v4l2: better module detection for FreeBSD 9
		     do not include malloc.h
		     (thanks to Matthias Apitz)

	* vpx: auto init of encoder
	
	* winwave: fix memory leak (thanks to Tomasz Ostrowski)

	* x11: add support for 16-bit graphics
	

2011-12-25 Alfred E. Heggestad <aeh@db.org>

	* Version 0.4.0

	* updated doxygen comments (thanks to Olle E. Johansson)

	* docs: added modules description

	* baresip: add ua_set_aumode(), configurable audio-tx mode
		   vidsrc API: added media_ctx shared with ausrc
		   ausrc API: add media_ctx shared with vidsrc
		   audio_encoder_set() - stop audio source first
		   audio_decoder_set() - include SDP format parameters
		   aufile: add PREFIX to share path (thanks to Juha Heinanen)
		   natbd.c: move code to a new module 'natbd'
		   get_login_name: check both LOGNAME and USER
		   ua.c: unique contact-user with address of struct ua
		   ua.c: find correct UA for incoming SIP Requests
		   ua_connect: param is optional (thanks to Juha Heinanen)
		   video: add video_set_source()
	
	* amr: minor improvements

	* audiounit: new module for MacOSX/iOS audio driver

	* avcapture: new module for iOS video source

	* avcodec: fixes for newer versions of libavcodec

	* gsm: handle packet-loss

	* natbd: move to separate module from core
	
	* opengl: fix building on MacOSX 10.7
		  (thanks to David Jedda and Atle Samuelsen)

	* opus: upgrade to opus v0.9.8

	* rst: use media_ctx for shared audio/video stream

	* sndfile: fix stereo mode
	

2011-09-07 Alfred E. Heggestad <aeh@db.org>

	* Version 0.3.0

	* baresip: use librem for media processing
		   added support for video selfview
		   aubuf, autone, vutil: moved to librem
		   ua: improved API
		   conf: use internal parser instead of fscanf()
		   vidloop: cleanup, use librem for processing

	* config: add video_selfview={pip,window} parameter	

	* amr: new module for AMR and AMR-WB audio codecs (RFC 4867)

	* avcodec, avformat: update to latest version of FFmpeg

	* coreaudio: fix building on MacOSX 10.5 (thanks David Jedda)

	* ice: fix building on MacOSX 10.5 (thanks David Jedda)

	* opengl: remove deps to libswscale

	* opensles: new module OpenSLES audio driver

	* opus: new module for OPUS audio codec

	* qtcapture: remove deps to libswscale

	* rst: new module for mp3 audio streaming

	* silk: new module for SILK audio codec

	* v4l, v4l2: remove deps to libswscale

	* x11: remove deps to libswscale, use librem vidconv instead

	* x11grab: remove deps to libswscale


2011-05-20 Alfred E. Heggestad <aeh@db.org>

	* Version 0.2.0

	* baresip: Added support for SIP Outbound (RFC 5626)
		   The SDP Content Attribute (RFC 4796)
		   RTP/RTCP Multiplexing (RFC 5761)
		   RTP Keepalive (draft-ietf-avt-app-rtp-keepalive-09)

	* config: add 'outbound' to sipnat parameter (remove stun, turn)
		  add rtpkeep={zero,stun,dyna,rtcp} parameter
		  audio_codecs parameter can now specify samplerate
		  add rtcp_mux for RTP/RTCP multiplexing on/off

	* alsa: set buffersize and fix samplesize (thanks to Luigi Rizzo)

	* avcodec: added support for MPEG4 video codec (RFC 3016)
		   wait for keyframe before decoding

	* celt: upgrade libcelt version and cleanups

	* coreaudio: fix buffering in recorder

	* ice: several improvements and fixes
	       added new config options

	* ilbc: handle asymmetric modes

	* opengl: enable vertical sync

	* sdl: upgrade to latest version of libSDL from mercurial

	* vpx: added support for draft-westin-payload-vp8-02

	* x11: handle remote display with optional shared memory

	* x11grab: new video-source module (thanks to Luigi Rizzo)

	* docs: updated doxygen comments