2019-12-01 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.6.5


Alfred E. Heggestad (138):
      mnat: add struct mnat pointer to session handler
      ice: add ice-lite, move to per-account config
      modules: check return value from uag_event_register()
      menu: check return value of account_set_answermode
      ua: move ua_print_sip_status to debug_cmd module
      pcp: updated mnat api
      modules: rename gst1.so to gst.so
      account: make answermode code more robust
      bfcp: remove code
      ua: remove uag_tls()
      sdl: add support for YUYV422 pixel format
      modules: rename gst_video1.so to gst_video.so
      sdl: add support for UYVY422 pixel format
      ua: fix whitespace
      test: mock_mnat_register return void
      stream: debug tuning
      test: enable wait_connected flag on mock mnat
      dtls_srtp: dont store remote address on the state
      test: enable wait_secure flag on mock mediaenc
      modules: rename sdl2.so to sdl.so
      menc: sort handlers in logical order
      audiounit: use error ENOTSUP if AudioSessionSetActive fails
      test: add webrtc test-case
      audiounit: check return value of AudioUnitSetProperty()
      bv32: remove module (#793)
      audiounit: fix samplerate for iOS
      config: add snd_path to template
      account: remove check for deprecated password
      audio: use dynamically allocated string for device name
      Update README.md
      avcodec: remove unused prototype
      avcodec: fix unused parameter warning
      move h265.so into avcodec.so
      Update .travis.yml (#798)
      Account specific audio source and playback (#796)
      mpa: switch encoder to use lame (#797)
      mk: remove GPROF
      ua: add support for SIP trace (#804)
      AAC codec (#805)
      audio: set the correct variable to false if pthread_create() fails
      sdl: properly close window (OSX)
      ua: fix warning
      rtcpsummary: use call object from event handler
      test: move aucodec list one level up
      video: add vidcodec accessor
      refactoring; move rtp stats code to separate .c file
      rtpstat cleanup
      call: check magic
      vidinfo: add video overlay box with decoder info
      vidinfo: fix compiler warning on linux
      vidinfo: fix compiler warning on Android
      stream: rename to stream_set_session_handlers()
      Fix osx build (#809)
      vidinfo: delete old file
      test: move ausrc list one level up
      test: move auplay list one level up
      test: move aufilt list one level up
      video: use vidcodec's list in video_decoder_set()
      stream: add stream-list to stream/audio/video API
      vidinfo: remove pixelformat, add packetloss
      mk: add detection in SYSROOT_LOCAL
      dtls_srtp: add media name and component type to logline
      mnat: make mnat_find() public
      audio: print name in parenthesis if not set
      video: move vidfilt list one level up
      audio: remove hack for starting source/player first
      video: set stream samplerate in alloc
      video: fix potential use of free'd string
      ice: fix documentation
      g711: use designated initialisers
      g722: use designated initialisers
      g726: use designated initialisers
      ilbc: use designated initialisers
      mk: check for ilbc in
      gsm: use designated initialisers
      amr: fix detection in SYSROOT_LOCAL
      amr: use designated initialisers
      isac: use designated initialisers
      test: add audio_codecs to account testcase
      win32: sort module exports in alphabetical order
      win32: add debug_cmd to static list of modules
      echo: no need to use uag_current() -- ref #815
      mk: detect aac in SYSROOT_LOCAL
      modules: use designated initializers
      modules: use designated initializers
      v4l2_codec: use designated initializers
      wincons: use designated initializers
      gzrtp: use designated initializers
      avcodec: use designated initializers
      video: request keyframe during packet-loss
      mk: detect mqtt.so in SYSROOT_LOCAL
      menu: fix formatting
      menu: clean up usage of uag_current() -- ref #815
      menu: save UA aor for redialing
      avcodec: use AVFrame key_frame flag to check for keyframes (#830)
      call: add call_find_id() -- ref #815
      menu: new command /callfind -- ref #815
      ice: make username/password optional
      mqtt: add ua/call selection -- fixes #815
      stream: no RTCP socket for mediaenc, if muxed
      mqtt: encode response with JSON -- fix #826
      main: change help text for -4 and -6 (ref #834)
      docs: thanks to @premultiply
      net: change prefer_ipv6 to int af, fixes #834
      pulse: fix log text
      avformat: fix build on Debian 8
      stream: log more details
      stream: make stream_start_mediaenc() public for core
      stream: move start_mediaenc to call.c
      audio: add ptime to struct aucodec (#849)
      README: add i2s module
      docs: thanks to Christian Spielberger
      test: remove unused setting of int err
      stream: remove code not executed
      message: no need to check err
      net: fix potential deref of NULL pointer
      vidinfo: no need to check err
      natpmp: no need to check err
      ilbc: no need to check err
      ctrl_tcp: no need to check oe_cmd here
      avformat: remove got_pict hack
      avcodec: minor fixes
      sdl: remove int err, not needed
      pulse: check the correct pointer
      v4l2_codec: remove int err, not needed
      alsa: store return value in a long
      avcodec: copy key_frame flag from hardware frame
      stream: make some functions public
      ctrl_tcp: restore mbuf pos on errors
      metric: add lock for multi-threading
      sdl: skip plane if wstep is zero
      aubridge: clear pointers after thread has exited
      fix doxygen comments
      av1: set allow_lowbitdepth to get correct pixel-format
      bump version to 0.6.5
      stream: check return value of metric_init()
      stream: update doxygen comments
      update doxygen comments

Christian Spielberger (2):
      aui2s: add rtos i2s audio driver module (#848)
      i2s: add doxygen defgroup header (#850)

Juha Heinanen (3):
      - Added 'net_set_address' and 'net_set_af' API functions.
      Added safety check to net_set_address() API function.
      - Added AF_UNSPEC to supported net_set_af families.

juha-h (4):
      - Exposed net_dns_debug function to API. (#791)
      Added possibility to include ";extra" parameter to an account and access (#803)
      - Search include files also from opencore-amr source directory (#822)
      Merge pull request #843 from alfredh/net_stuff

premultiply (5):
      Unify response list header layout (#821)
      More common list format (#823)
      MPA fmtp mirroring (#837)
      MPA layer 3 encoding fixes (#839)
      MPA L2 and L3 encoding (#844)

trampster (2):
      Pass NULL to pa_simple_new if no device specified to indicate to PulseAudio we want to use the default (#785)
      Add support for aes_256_gcm (#790)


2019-09-01 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.6.4

Aleksei (1):
      Update MSVS project (Remove mos.c) (#744)

Alfred E. Heggestad (77):
      test: added testcase for RTCP
      speex_pp: handle changes in frame_size
      mos: remove code (unused) (#739)
      speex_aec: deprecate and remove module (#740)
      aufilt: remove ptime parameter
      audio: add last sample count
      audio: remove recv ptime and pt from debug
      stream: common function for start mediaenc
      stream: added set/is_secure
      test: sort tests in alphabetical order
      test: added mock aufilt and testcase
      mnat: add media connected handler
      ice: use connected handler
      stream: add mnat_connected_handler
      call: split call start into audio/video
      stream: print mnat_connected
      dtls_srtp: remove 100ms timer
      stream: add stream_start()
      call: split update_media into audio/video
      srtp: use designated initializers to init struct menc
      zrtp: use designated initializers to init struct menc
      dtls_srtp: use designated initializers to init struct menc
      mnat: add wait_connected flag (#752)
      menc: add wait_secure flag (#754)
      opus: add opus_packet_loss config
      audio: fix rtp timestamps for opus mono (ref #753)
      webrtc interop (#756)
      avcodec: remove compile time check (LIBAVUTIL_VERSION_INT)
      avcodec: minor cleanup
      avcodec: define KEYFRAME_INTERVAL
      travis: use ubuntu xenial (#764)
      remove PIX_FMT wrapper for old ffmpeg
      stream: add lost count to RTP handler
      aucodec: add buffer to packet-loss handler
      add support for Opus FEC (WIP) (#755)
      test: explicitly set BEHAVIOUR_ANSWER
      test: set default action to ACTION_RECANCEL
      x11: remove support for 16-bit RGB colors
      sdl2: use vidisp name 'sdl'
      stream: reorder functions
      ice: check argument
      avcodec: remove decoder framerate
      stream: add media name to debug
      test: remove testcase for C++
      avcodec: remove log-line
      avcodec: remove old ffmpeg wrapper for AVCodecID
      test: add media-line to mnat mock
      vidsrc: add wanted pixel format to parameters
      stream: add handler for mnat connected
      vp9: decode V and P fields
      opus: update docs (ref #768)
      test: use pixel format from api
      test: use pixel format YUV420P
      fix warning on linux
      video: fix warning
      test: fix warnings
      dtmfio: fix warning
      opus_multistream: fix warnings
      Avcodec hwaccel (#770)
      fakevideo: use pixel format from parameters
      sdl2: add support for pixel format NV21
      bump version to 0.6.4
      mk: update Doxyfile
      gst1: remove hard-coded uri
      config: update default config
      config: use cloudflare as sample DNS servers
      config: print default hwaccel for avcodec.so module
      dtls_srtp: make it more robust
      test: use LD to link selftest
      avformat: remove check for avformat >= 53.4.0
      video: remove video_view
      avformat: better logging
      config: add mqtt template (ref #780)
      Update README.md
      docs: refresh example config
      config: remove openl.so from template
      README: fix typo

Timmo Verlaan (1):
      menu: sndcode should signal release of key (#749)

seamus (1):
      menu: add answermode command (#779)

trampster (1):
      Allow CALL_CLOSED to be raised when call_id is not set. (#748)




2019-06-22 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.6.3

Alfred E. Heggestad (99):
      baresip: remove prefer_ipv6 from api, use config instead
      ua: remove prefer_ipv6 from api, use config instead
      audio: allocate mbuf for encoded telephony events
      net: remove af from api, use config instead
      gst: remove old module, use gst1 instead
      gst_video: remove old module, use gst_video1 instead
      gst1: update comment
      httpd: update comment
      call: remove unused constant
      reg: print address family of registration
      ua: clean up prefer_ipv6 code
      test: disable test for AUDIO_MODE_THREAD
      config: remove old check for rtcp_enable
      config: remove unused macro SA_INIT
      config: remove unused MOD_PRE
      test: mock aucodec support all sample formats
      audio: check that ptime is within the range of 1-60ms
      audio: dont check sample format for packetloss handler
      audio: use audio codec srate directly, remove get_srate wrapper
      audio: remove get_framesize
      audio: handle rtcp sample-rate for asymmetric codecs
      audio: remove get_ch()
      mpa: return posix error code instead of -1
      mk: sort list of files in alphabetical order
      menu: sort and align incall commands table
      ua: check input argument to ua_print_supported
      test: check error from test fixture
      ua: use a print handler to print allowed methods
      ua: use a single tick instead of backtick for logging
      audio: mirror ptime attribute if changed by peer (ref #688) (#700)
      audio: receive ptime is always set
      plc: count samples from audio input
      use sizeof(x) instead of sizeof x
      account: fix typo
      timestamp: add timestamp_calc_seconds()
      call: remove const from menc_event_handler
      call: swap order of menc event and error handler
      mnat: make struct mnat public
      mnat: change to a simpler register api
      menc: protocol is always UDP
      mnat: change api to always use UDP protocol
      stream: add remote RTP/RTCP address to object
      menc: add remote RTP/RTCP address to API
      dtls_srtp: use remote address from mediaenc API
      dtls_srtp: remove dtls_print_sha1_fingerprint
      remove audio/video codec cycle
      net: add network_if_getname()
      sdp: remove sdp_media_format_cycle (unused)
      sdp: remove sdp_rattr() -- unused
      pcp: updated MNAT api
      gzrtp: updated menc api (ref #713)
      dtls_srtp: fix warning
      zrtp: fix warnings
      net: use network_if_getname to get interface name
      stream: use enum media_type instead of a string
      call: only include aucodec codecs in remote sdp (ref #718)
      call: simplify audio encoder/decodet set
      stream: add pointer to medianat module
      webrtc_aec: add warning
      ua: use KEYCODE_REL in dtmf handler (ref #719)
      call: add prefix to logline
      webrtc_aec: add sample format converter to decoder (ref #712)
      webrtc_aec: add sample format converter to encoder (ref #712)
      webrtc_aec: add enc/dec to log line
      webrtc_aec: fix enum warning
      webrtc_aec: echo_cancellation.h is included in aec.h (ref #712)
      config: add sip_cafile to template
      net: add a function to print IP-addr and interface
      net: dont init local address to 127.0.0.1
      audio: handle marker bit in stream.c (#724)
      avcodec: make sure ffmpeg input buffer has AV_INPUT_BUFFER_PADDING_SIZE space at the end
      stream: update doxygen comments
      stream: only flush jitter-buffer if it was started
      avcodec: fallback define for AV_INPUT_BUFFER_PADDING_SIZE
      stream: add pseq_set flag
      stream: dont calculate loss if no jitter buffer
      webrtc_aec: add support for 32000Hz samplerate
      net: multiple nameservers in net_use_nameserver()
      webrtc_aec: add reference to webrtc native
      dtmfio: use UA_EVENT_CALL_DTMF_START to handle dtmf events
      test: use event handler to receive DTMF events
      webrtc_aec: remove samplerate check
      prepare for 0.6.3 release
      gst_video1: cleanup
      stream: print mediaenc id
      config: add net prefix to prefer_ipv6
      codec2: print mode
      codec2: modern init of struct aucodec
      codec2: add config param codec2_mode
      codec2: round up bytes per frame
      win32: add httpd module to static.c
      codec2: update description
      mk: add detection of codec2.so module
      video: check if frame pointer is valid
      contact: set err properly
      audio: no need to clear err, it is not used
      config: add opus_samplerate to template
      travis: add building of codec2 on OSX (#736)
      config: add webrtc_aec to template

Christian Spielberger (2):
      call: reset streams on call hold (#707)
      Bugfix/flush buffers on call hold (#716)

Dmitry (2):
      opus: fixed opus_inbandfec param name in config and examples (#704)
      menu: set default values for optional config params (#705)

Juha Heinanen (1):
      webrtc_aec: enable delay-agnostic echo cancellation

Nicolas Tizon (1):
      audio: increase buffer size for audio device string (#710)

juha-h (5):
      - added prefer_ipv6 config variable (#692)
      webrtc_aec module: added pthread.h include to .cpp files (#714)
      - Updated ilbc module encode/decode/pkloss function arguments (#723)
      - Use opus in mono mode (opus/48000/1) if opus_stereo or (#730)
      - Added opus_samplerate config parameter. (#733)

premultiply (1):
      Interop: Parameters reordering and whitespace removal (#698)

weili-jiang (1):
      Count ua references prior to destroy in case UA_EVENT_SHUTDOWN causes references to be removed (#702)




2019-04-19 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.6.2

Alfred E. Heggestad (124):
      daala: remove module
      remove USE_VIDEO compile flag (#658)
      config: remove sip_trans_bsize option
      contact: fix bug in contact prev/next
      cmd: remove unused complete flag
      log: add command to toggle loglevel ('v')
      debug_cmd: fix warning
      Remove natbd module (#659)
      message: make listen/unlisten more robust (ref #650)
      update doxygen comments
      srtp: fix warnings
      update README
      stream: define port 9 as PORT_DISCARD
      add offerer flag to video and stream
      stream: check for multiplexed RTCP packets on RTP port
      stream: change logic for rtcp-mux attribute
      omx: update doxygen comment
      bv32: add doxygen header
      mk: modules in alphabetical order
      mk: modules in alphabetical order
      mk: modules in alphabetical order
      h265: use avcodec API for the encoder
      h265: fixes for Debian 8
      h265: make it work with old encoder api
      h265: init time_base manually
      fix av_packet_free
      allocate avpacket
      h265: cleanup
      cleanup
      cleanup
      h265: add configurable decoder
      cleanup
      use pkg-config for libs
      h265: update documentation
      mk: enable h265.so if avcodec installed
      h265: include avutil mem.h
      travis: use ubuntu 16.04
      h265: add wrapper for av_frame_alloc
      h265: add wrapper for avcodec_free_context
      h265: fix config
      fix crash with ffmpeg 2.8
      add wrapper for av_packet_free
      fix warning
      use av_free_packet
      cleanup
      deprecate v4l.so -- use v4l2.so instead
      h265: tested with YUV444P pixel format
      h265: check pixel format on changes
      Merge remote-tracking branch 'origin/master' into h265_use_avcodec_encoder
      h265: fix avcodec_free_context wrapper
      H265 use avcodec encoder (#668)
      debian: add source format 1.0
      aufile: add sample config (ref #663)
      v4l: remove module, use v4l2.so instead
      video: remote orient parameter
      video: remove video_set_orient
      aubridge: remove audio resampler
      aubridge: fix warning
      aubridge: add support for multiple sample formats
      aubridge: fix warnings
      auloop: remove usage of audio codec
      jack: add support for FLOAT sample format
      Avcodec remove libx264 (#671)
      config: add avcodec.so sample config
      stream: set rtcp-mux attribute if enabled
      sdl: remove module
      stream: send a dummy RTCP packet to open NAT pinhole
      avcodec: use pkg-config for linker flags
      avformat: use pkg-config for linker flags
      config: remove usage of USE_AVCODEC
      coreaudio: remove ios specific code
      h265: one file per line
      avformat: move AVCodec from struct to stack
      avformat: remove codec_id check
      avformat: minor cleanup
      debian: remove usage of shlibs:Depends from dev package
      debug_cmd: fix warning
      avformat: minor cleanup
      avformat: minor cleanup
      vidloop: rename intra to keyframe
      vidloop: print keyframes only if codec is enabled
      avcodec: move destructor to the top of the file
      plc: check input arguments
      auloop: rename ab to aubuf
      Opus multistream (#678)
      mqtt: minor updates
      mqtt: use re_snprintf
      mqtt: update documentation (fixes #669)
      h264: fix h264_is_keyframe, IDR_SLICE is keyframe
      avcodec: check input arguments
      vidloop: show video display pixel-format in summary
      avcodec: clean up decoding code
      avcodec: add color range MPEG
      h265: add color range and GOP size
      ffmpeg: check avutil version for color range
      avcodec: set slice-max-size in H264 packetization-mode 0
      avcodec: add sdp.c
      avcodec: move h264_fmtp_cmp to sdp.c
      avcodec: add support for H264 packetization mode 1
      av1: update comment
      avcodec: handle H264 STAP-A packets
      test: fix ua register test-cases (ref #680)
      ua: add delayed_close flag (ref #680)
      menu: call uag_current() directly
      video: save pixel format of outgoing stream
      aulevel: add support for sample format FLOAT
      Vidfilt add param (#682)
      test: copy uri_cmp source from libre
      sdl2: handle window closed event (SDL_QUIT)
      vidloop: stop loop if window was closed
      sdl2: add support for quit key
      avcodec: fixes for packetization_mode 1
      bump version to 0.6.2
      vidfilt: update doxygen comments
      rtcpsummary: fix warnings about unused variables
      mqtt: fix warnings about unused variables
      gst_video1: use GST_BUFFER_PTS
      mk: add echo module to list of basic modules
      core: remove some unused values
      menu: call parameter is used
      mwi: minor formatting changes
      audio: align debug text
      Update README.md
      ua: add ua_destroy() -- ref #686

Andreas Hansson (1):
      Added debug cmd to print UUID (#674)

Juha Heinanen (2):
      do not add basic modules if BASIC_MODULES has value 'no'
      exclude more modules if BASIC_MODULES=no

Nicolas Tizon (1):
      vidloop: update vidsrc (#662)

Roger Sandholm (1):
      Readme and config example correction, httpd comments (#666)

Timmo Verlaan (1):
      menu: add uadel to delete a uac by aor (#680)

juha-h (1):
      srtp: added sending of MENC_EVENT_SECURE event (#660)

premultiply (1):
      Add 48 khz sampling rate support (#685)

weili-jiang (1):
      Command not found returns error (#664)




2019-02-17 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.6.1

Aleksei (2):
      Update MSVS project (#655)
      Fix warnings at windows compilation (#656)

Alfred E. Heggestad (111):
      call: prm parameter is mandatory
      core: add address-family to stream_param (ref #583)
      core: add cname to stream_param (ref #583)
      realtime: remove code
      contact: add support for current contact (#573)
      play: update doxygen comments
      mk: add detection of OpenGL framework (ref #575)
      stream: make call optional (closes #583)
      net: update doxygen comments
      contact: update doxygen comments
      Module app unload (#589)
      mk: disable opengl module in default build
      opengles: updated vidisp api
      avcapture: fix build for ios (ref #593)
      module: update doxygen comments
      ua: add missing doxygen comments
      ua_set_custom_hdrs: add error checking
      ua: add doxygen comments
      ua: fix formatting and update doxygen
      ua: update doxygen comments
      call: update doxygen comments
      message: update doxygen comments
      custom_hdrs: add doxygen comments
      stream: update doxygen comments
      video: rename intra to key-frames
      sip: add doxygen comments
      event: add doxygen comments
      mediadev: minor code formatting
      mediadev: add doxygen comments
      audiounit: rename comp to 'audiounit_comp'
      audiounit: check input parameters
      coreaudio: remove blocking sleep (#605)
      audio: change logline to debug (ref #609)
      auloop: show read/write counters in stream duration (seconds)
      audiounit: print name of audio component used
      audiounit: move aufmt_to_formatflags to audiounit.c
      rpm: remove support for in-tree RPM building
      account: init mnat, fix warning on mingw32
      mk: make sure omx.so is only added once (fixes #612)
      silk: remove codec (#611)
      aubridge: use sizeof sample format instead of 2
      coreaudio: clarify that coreaudio module is for macOS
      audio: cleanup comment
      pcp: clean up comment
      audiounit: check for valid sample size
      audiounit: clarify usage of inputBus and outputBus
      add accessor to ausrc/auplay base-class
      auloop: add summary
      vidloop: rename variable
      mk: detect CoreAudio framework
      webrtc aec (#617)
      audiounit: clean up enable/disable
      auloop: print sample format
      audiounit: clarify usage of inputBus and outputBus
      dtls_srtp: remove support for SHA-1 fingerprint
      dtls_srtp: remove unused DTLS-SRTP methods
      menc: move and document event type
      menc: added menc_event_name()
      remove obsolete compile flag MODULE_CONF
      stream: move handlers to end of struct
      test: check magic in audio sample handler
      test: added testcase for call with mock medianat
      dshow: remove a comment
      call: using str_isset() is faster than strlen()
      config: remove 'rtcp_enable', always enabled (#623)
      stream: remove rtcp flag
      update comments
      Update README.md
      README: added rtcpsummary module
      aubridge: add module prefix to global symbols
      update copyright year to 2019
      audiounit: fix warnings on ios
      stream: make stream_sdpmedia public
      stream: make stream_update public
      audio: make audio_{encoder,decoder}_set public
      stream: make struct stream_param public
      audio: use samplesize to calculate packet size
      audio: use sizeof int16_t instead of 2
      stream: update doxygen comments
      audio: update doxygen comments
      video: update comment
      jack: allocate array of ports from channels (ref #625)
      jack: update comment
      audiounit: check memory allocation
      main: fix bug with reading of -u parameter value
      audio: split up definition of AUDIO_SAMPSZ
      gtk: minor formatting improvements
      gtk: check duration_timer_tag (ref #630)
      audio: make audio_alloc() public
      avformat: print decoder name (ref #639)
      menu: change some commands from CMD_IPRM to CMD_PRM
      avformat: add pixel format mapping function
      avcodec: add pixel format mapping function
      avcodec: add pixel format mapping function for encoder
      menu: use CMD_PRM for call transfer
      contact: add flag to enable presence (fixes #645)
      cmd: remove support for progress/interactive commands
      menu: fix warning
      config: update comment
      coreaudio: add support for multiple sample formats, including FLOAT
      menu: no need to use command's complete flag
      jack: allocate buffer before start (ref #647)
      auloop: print newline at the end
      Update .travis.yml (#652)
      Update .travis.yml (#653)
      fix some warnings reported by @Encamy
      dshow: fix warning on win32
      update doxygen comments
      bump version to 0.6.1
      config: refresh config template
      audiounit: fix warning on ios

José Luis Millán (2):
      ctrl_tcp: increase command buffer size (#585)
      vumeter: configuration option to disable vumeter output to stderr (#608)

Juha Heinanen (4):
      new account functions
      fixed typo
      added audio_codec api function
      added @return description

Nicolas Tizon (4):
      sdl2: make window resizable (#587)
      coreaudio: mediadev support (#600)
      avcodec: force intra (H.263, H.264) frame request if no key frame received (#614)
      audiounit: add AUConverter resampler (recorder) (#624)

Olle E. Johansson (1):
      Improve mqtt module (#642)

Timmo Verlaan (2):
      menu: add uafind to select ua by aor (#626)
      menu: create_ua doesn't use dialbuf (#627)

juha-h (5):
      Merge pull request #588 from alfredh/new_account_functions
      Merge pull request #598 from alfredh/audio_codec
      added account_set_answermode api function (#619)
      opengles android ndk r18 update (#629)
      do not accept incoming calls without srtp if account has mandatory srtp (#651)


2018-12-01 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.6.0

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.6.0
	* NOTE: Requires libre v0.6.0 or later
	        Requires librem v0.6.0 or later

	* config:

	  opus_complexity  {0-10}        # Encoder's computational complexity
	  opus_application {audio, voip} # Encoder's intended application
	  sip_cafile       ca.crt        # trusted Certificate Authorities

	* baresip-core:
	  - account: added support for per account mwi using
	             ;mwi=on|off addr-param (#530) (thanks Juha Heinanen)
		     per account support for call transfer (#535)
		     (thanks Juha Heinanen)
	  - audio: add audio_start()
		   add audio_started()
		   EBU/ACIP invite handler.
		   flush aubuf when resetting codec
	  - call: make call_connect() public
		  make call_notify_sipfrag() public
	  - contacts: make struct contacts opaque
		      add contact_uri()
	  - rtpkeep: code removed
	  - sdp: remove unused functions
	  - ua: add sip_cafile config option
	        (thanks to @wnetbal for the original patch)
		add event UA_EVENT_MWI_NOTIFY (thanks Juha Heinanen)
		add event UA_EVENT_CALL_TRANSFER
		add event UA_EVENT_AUDIO_ERROR
		add ua_uri_complete()
	  - vidfilt: add timestamp parameter to filter API
	  - vidisp: add timestamp parameter to display API
	  - video: add RTP timestamp state for receive

	* selftest:
	  - test: add call transfer test (ref #538)
	  - test: add call via tcp test

	* Modules:

	* avcapture: fix video resolutions mismatches (#580) (Nicolas Tizon)

	* avcodec: remove support for old versions of ffmpeg
		   detect MPEG4 key-frames

	* avformat: remove support for old versions of ffmpeg

	* ctrl_tcp: Fix netstring frame handling (#569) (José Luis Millán)

	* debug_cmd: /play will always stop current file playing.  (#578)
		     (thanks Ola Palm)

	* directfb: updated vidisp api (#568) (thanks andreygursky)

	* dshow: mediadev support (#550) (Nicolas Tizon)

	* echo: add support for video

	* h265: change rate control to ABR (Average Bitrate) (#526)

	* mwi: moved printing of mwi info from mwi module to menu module
	       (thanks Juha Heinanen)

	* opengl: properly handle linesize (#566)

	* opus: add configuration parameter 'opus_complexity'
		add configuration parameter 'opus_application'
		(thanks José Luis Millán)

	* libsrtp: module removed

	* v4l2_codec: use thread instead of fd event (#558)

	* winwave: add support for FLOAT sample format (#559)
		   mediadev support (#556) (Nicolas Tizon)


2018-09-15 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.5.11

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.5.11
	* NOTE: Requires libre v0.5.7 or later
	        Requires librem v0.5.3 or later

	* build:

	* baresip-core:
	  - account: disable password in the SIP uri
	  - aucodec: add packet channels (pch) to struct (#489)
	  - audio: add MAGIC_CHECK to some callback handlers
	  - audio: fix timestamp for MPA codec
	  - audio: remove audio_srate and audio_channels (#488)
	  - audio: remove exception for MPA
	  - aufilt: add sample format parameter (#492)
	  - auplay/ausrc: Add dev_list to auplay and ausrc struct (#516)
			  (thanks Nicolas Tizon)
	  - call: dump SDP offer, ref #480
	  - call: Support also SIP URI with missing display name. (#512)
		  (thanks Christian Spielberger)
	  - config: update template for coreaudio
	  - contact: consider empty contacts file as existing
		     contacts file (#501) (thanks Juha Heinanen)
	  - main: add -n option for network interface
	  - main: turn off buffering to standard output (#504)
		  (thanks Geoff Stewart)
	  - opus: refresh config template
	  - stream: add magic number for debugging (ref #514)
	  - ua: do ua_register explicitly (refs #508) (#509)
	  - ua: added ua param to message handler (#485) (thanks Juha Heinanen)
	  - ua: Sending and receiving custom headers (#470)
		(thanks Encamy)
	  - video: added more MAGIC_CHECK checks
	  - vidsrc: Vidsrc devices list (#491) (thanks Nicolas Tizon)

	* selftest:
	  - test: use event-handler in mediaenc mock
	  - test: add sip uri with angle brackets (ref #512)

	* Modules:

	* alsa: remove check for alsa_sample_format config

	* alsa: On termination of alsa_play wait until buffer
		was processed. (#520) (thanks Christian Spielberger)

	* aubridge: check to make sure the device is running before
		    dereferencing it. (#495) (thanks Geoff Stewart)

	* avahi: fix warning when RELEASE=1

	* avcapture: use mediadev API to add device names

	* coreaudio: Coreaudio select device (#502)

	* daala: update vidcodec API

	* gtk: update message handler with struct ua pointer

	* httpd: add CORS header in http reply (#517) (thanks Nicolas Tizon)

	* menu: Send DTMF code command (#496) (thanks Nicolas Tizon)

	* rtcpsummary: new RTCP summary module (#505)
		       (thanks Geoff Stewart)

	* speex: remove module (#494)

	* srtp: add support for AES-GCM cipher

	* vidloop: use portable lock instead of pthread mutex
		   fix crash when resolution changes

	* vidloop: Vidloop fix: video frame rendering is moved to
		   main thread (#481) (thanks Nicolas Tizon)

	* x11: check for shared memory extension

	* x11grab: remove old linker path


2018-07-04 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.5.10

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.5.10
	* NOTE: Requires libre v0.5.7 or later
	        Requires librem v0.5.3 or later

	* build:
	  - Updated MSVS project (thanks Encamy)

	* baresip-core:
	  - account: add more accessor functions (thanks Juha Heinanen)
	  - audio: add audio_set_hold
	  - aufilt: add struct audio parameter
	  - mediaenc: add menc_event handler (thanks Juha Heinanen)
	  - net: add support for IP-address in 'net_interface' (thanks @Encamy)
	  - stream: add stream_call
	  - stream: check SDP_SENDONLY flag
	  - stream: correct flags in stream_send (thanks Andreas Hansson)
	  - stream: set RTP socket buffersize to 65536 (ref #415)
	  - ua: add events for VU level (thanks Ola Palm)
	  - ua: add ua_update_account
	  - ua: don't append domain if uri is IP address (thanks Ali Shirvani)
	  - ui: add ui_input_long_command
	  - videnc:  add timestamp parameter
	  - video: add video_calc_rtp_timestamp_fix
	  - video: lock when setting encoder (ref #418) (#441)

	* Modules:

	* aufile: add slow cpu detection

	* auloop: add samplerate and channels argument to command

	* av1: add timestamp parameter to encode function

	* avcodec: add timestamp parameter to encode function
		   set baseline profile on ffmpeg H.264 encoder
		   remove checks for old versions of libx264

	* dshow: fix build for VC and mingw (thanks @Encamy)
		 add picture vertical flipping (thanks Nicolas Tizon)

	* dtls_srtp: add usage of medienc event handler

	* gst_video: add timestamp parameter to encode function

	* gst_video1: add timestamp parameter to encode function

	* h265: add timestamp parameter to encode function

	* httpd: no echoing of long commands

	* menu: add video switch command /vidsrc  (thanks Ali Shirvani)

	* opensles: check state before calling Destroy

	* sdl2: print renderer info

	* vidloop: refactoring of timestamp routines

	* vp8: add timestamp parameter to encode function

	* vp9: add timestamp parameter to encode function

	* vumeter: add periodic events (thanks Ola Palm)

	* zrtp: add usage of medienc event handler (thanks Juha Heinanen)


2018-04-21 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.5.9

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.5.9
	* NOTE: Requires libre v0.5.7 or later
	        Requires librem v0.5.2 or later

	* build:
	  - Updated MSVS project to VS15 and added several files
	    to project settings (thanks Encamy)

	* config:

	  video_fps            29.97         # float

	* baresip-core:
	  - conf: add conf_get_float
	  - timer: add tmr_jiffies_usec
	  - timestamp: new file for timestamp helpers
	  - ua: add catchall flag to struct ua
	  - ua: add ua_set_catchall
	  - ua: uag_find: return match if catchall flag is set
	  - vidcodec: change rtp_ts from 32-bit to 64-bit
	  - videnc: change framerate to double float
	  - video: change framerate to double float
	  - vidsrc: add frame timestamp
	  - vidsrc: change framerate to double float

	* selftest:
	  - mediaenc: add testcase for media encryption

	* Modules:

	* avcapture: add support for video frame timestamp

	* avcodec: fix compiling with old ffmpeg versions
		   print framerate of decoded bitstream

	* avformat: add support for video frame timestamp

	* b2bua: add handling of all inbound SIP requests

	* cairo: add support for video frame timestamp

	* ctrl_tcp: Fix #369. documentation typo (#372)
		    Fix #370. wrong assignent (#371)
		    (thanks José Luis Millán)

	* dshow: add support for video frame timestamp

	* fakevideo: add support for video frame timestamp
		     add support for timer polling (no pthreads)

	* menu: added "statmode_default" config variable (#359)
		(thanks Juha Heinanen)

	* rst: add support for video frame timestamp

	* swscale: add YUV444P pixel format

	* v4l: add support for video frame timestamp

	* v4l2: add support for video frame timestamp
		show actual framerate

	* vidbridge: add support for video frame timestamp

	* vidloop: add videoloop summary

	* x11grab: add support for video frame timestamp


2018-02-11 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.5.8

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.5.8
	* NOTE: Requires libre v0.5.7 or later
	        Requires librem v0.5.2 or later

	* new commands:

	  - /aubitrate 64000   -- Set audio bitrate

	* new modules:

	  - ctrl_tcp      TCP control interface using JSON payload
			  (thanks José Luis Millán)

	* config:

	  auenc_format            s16             # s16, float, ..
	  audec_format            s16             # s16, float, ..

	  videnc_format           yuv420p         # yuv420p, yuv444p, ..

	* baresip-core:
	  - account: password in SIP uri is now deprecated
	  - aucodec: add encoder/decoder audio sample format (#352)
	  - aucodec: add bitrate to encoder param
	  - audio: add function to set encoder bitrate
	  - audio: sample format for audio encoder/decoder
	  - call: add call_id accessor
	  - call: fix memory leak in case sipsess_connect() fails
	  - config: add configurable video pixel format
	  - config:  set exact installation pathes at build time (#354)
		     (thanks Guillaume Rousse)
	  - event: fix memory leak
	  - event: add call-id to JSON dict
	  - log: rename log_enable_stderr to log_enable_stdout
	  - metric: fix calculation of average bitrate
	  - reg: add display-name to SIP register
	  - stream: print a message when incoming RTP stream is established
	  - timer: add tmr_jiffies_usec
	  - video: save and show pixel format of incoming video
	  - vidutil: new file for video utility functions

	* selftest:
	  - event: add testcase for events
	  - sip: make 'struct user' opaque
	  - ua: update password using ;auth_pass=XXX parameter

	* Modules:

	* account: update template with auth_pass parameter

	* amr: update aucodec API with audio sample format

	* avcodec: Return EPROTO when encountering missing fragments in
		   H264 stream, to trigger intra-frame request (#339)
		   (thanks Jonathan Sieber)
		   use AV_INPUT_BUFFER_MIN_SIZE (ref #351)
		   add support for YUV444P pixel format

	* avformat: use av_dump_format()

	* bv32: update aucodec API with audio sample format

	* codec2: update aucodec API with audio sample format

	* ctrl_tcp: new module for TCP control interface using JSON payload
		   (thanks José Luis Millán)

	* g711: update aucodec API with audio sample format

	* g722: update aucodec API with audio sample format

	* g7221: update aucodec API with audio sample format

	* g726: update aucodec API with audio sample format

	* gsm: update aucodec API with audio sample format

	* gst1: define _POSIX_C_SOURCE to make nanosleep visible

	* l16: update aucodec API with audio sample format

	* mpa: update aucodec API with audio sample format

	* mqtt: update README with correct JSON syntax (ref #356)

	* omx: fix compilation for Raspbian

	* opus: update aucodec API with audio sample format
		add support for FLOAT sample format

	* silk: update aucodec API with audio sample format

	* speex: deprecate, disable as autodetected module

	* speex_aec: always link to libspeexdsp

	* speex_pp: always link to libspeexdsp


2017-12-25 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.5.7

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.5.7
	* NOTE: Requires libre v0.5.5 or later
	        Requires librem v0.5.0 or later

	* Credits: Thanks to Swedish Radio who sponsored many new
		   features in this release.

	* new commands:
	  -  'conf_reload' -- Reload config file

	* new modules:
	  - gzrtp         ZRTP module using GNU ZRTP C++ library
			  (thanks glenvt18)

	  - mqtt          MQTT (Message Queue Telemetry Transport) module
			  (sponsored by Swedish Radio)

	* config:
	  - audio_txmode  poll|thread        Set audio transmit mode
	  - auplay_format s16|float|s24_3le  Set playback sample format
	  - ausrc_format  s16|float|s24_3le  Set source sample format
	  - sdp_ebuacip   yes|no             Enable EBU-ACIP parameters
	  - zrtp_hash	  yes|no	     Enable/disable ZRTP hash

	* baresip-core:
	  - audio: add sample format conversion
	  - audio: add sample format for source/playback
	  - audio: check timestamps on incoming RTP packets
	  - audio: pace outgoing packets in txmode=thread
	  - audio: remove txmode with realtime thread
	  - audio: remove txmode with timer
	  - audio: set EBUACIP parameters in SDP
	  - auplay: add sample format to auplay_prm
	  - auplay: change write handler to any sample format
	  - ausrc: add sample format to ausrc_prm
	  - ausrc: change read handler to any sample format
	  - event.c: new file for generic event handling
	  - event: add event_encode_dict to encode event to a dictionary
	  - event: added UA_EVENT_CALL_RTCP for received RTCP
	  - log: print to stdout (ref #320)

	* selftest:
	  - add test for different audio tx-modes
	  - add test for float audio sample format

	* Modules:

	* alsa: add support for multiple sample formats

	* audiounit: add support for FLOAT sample format

	* auloop: add support for multiple sample formats

	* avahi: Bugfix: Destroy resolver after callback (#318)
		 (thanks Jonathan Sieber)

	* avcodec: change x264 rate control mode to ABR (#334)
		 (thanks Jonathan Sieber)

	* debug_cmd: add command 'conf_reload' to reload config file

	* gzrtp: ZRTP module using GNU ZRTP C++ library
		 (thanks glenvt18)

	* menu: add config 'ringback_disabled' to disable playing
	        of ringback tone.

	* mqtt: MQTT (Message Queue Telemetry Transport) module
		new module using libmosquitto as the backend.

	* opus: fix encoder bitrate, ref #305
		add opus_stereo config parameter (thanks Ola Palm)
		add config param opus_sprop_stereo (thanks Ola Palm)

	* portaudio: add support for FLOAT sample format

	* pulse: add support for FLOAT sample format
		 remove garbage at the beginning of a recording (#323)

	* quicktime: module was removed

	* rst: add support for multiple sample formats

	* zrtp: add signaling hash support (#311)




2017-10-14 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.5.6

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.5.6
	* NOTE: Requires libre v0.5.5 or later
	        Requires librem v0.5.0 or later

	* New Baresip logo (thanks Ernst and community)

	* baresip-core:
	  - log: rename error to error_msg due to GNU extension clash
	  - ua: remove ua_sipfd()

	* Modules:

	* avahi: Avahi Zeroconf Module (thanks Jonathan Sieber)

	* avcodec: handle fragment packet loss

	* cairo: draw a dancing logo

	* ice: set ICE role correctly
	       set retransmit count (RC) to 4

	* opensles: fix recorder speaker setup (thanks Juha Heinanen)

	* opus: fix encoder bitrate, ref #305

	* zrtp: encrypt/decrypt RTCP packets (thanks @glenvt18)


2017-09-07 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.5.5

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.5.5
	* NOTE: Requires libre v0.5.5 or later
	        Requires librem v0.5.0 or later

	* new commands:
	  - insmod module.so -- Load a module
	  - rmmod  module.so -- Unload a module

	* config:
	  - fullscreen  yes|no    Enable fullscreen display

	* baresip-core:
	  - account: optional param 'auth_pass' for password
		     add account_set_auth_pass()
		     add account_aor()
		     add account_auth_pass()
	  - contact: add update handler (thanks Jonathan Sieber)
	  - h264: add rtp_ts RTP Timestamp
	  - module: add module_load/unload
		    remove list of application modules
	  - stream: reset timer on incoming RTCP packets (fixes #271)
	  - ui: make the API re-entrant
	  - video: add RTP timestamp to videnc packet handler
		   add video_calc_rtp_timestamp()
		   add video_calc_seconds()
	  - video: use RTP timestamp from video encoder

	* selftest:
	  - add test for video timestamps

	* Modules:

	* account: move password prompt here

	* av1: use encoder PTS to calculate RTP timestamp

	* avcodec: use encoder PTS to calculate RTP timestamp
		   use level_idc=0x1f for x264

	* cons: updated UI api

	* evdev: updated UI api

	* gst_video: use encoder PTS to calculate RTP timestamp

	* gst_video1: use encoder PTS to calculate RTP timestamp

	* h265: use encoder PTS to calculate RTP timestamp
		fix FU decoder bug

	* httpd: updated UI api

	* ice: move gathering from lib to app
	       (requires libre v0.5.5 or later)

	* menu: updated UI api

	* mwi: updated UI api

	* presence: Handle contacts added at run-time
		    (thanks Jonathan Sieber)

	* sdl: updated UI api

	* sdl2: add support for fullscreen video

	* stdio: updated UI api

	* v4l: add support for more pixel-formats

	* v4l2_codec: use encoder PTS to calculate RTP timestamp

	* vp8: use encoder PTS to calculate RTP timestamp

	* vp9: use encoder PTS to calculate RTP timestamp

	* wincons: updated UI api


2017-06-24 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.5.4

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.5.4
	* NOTE: Requires libre v0.5.4 or later
	        Requires librem v0.5.0 or later

	* config:
	  - audio_level  yes|no    Enable audio level RTP extension

	* baresip-core:
	  - add support for Client-to-Mixer Audio Level Indication (RFC 6464)
	  - add support for RTP Header Extensions (RFC 5285)
	  - module: dont load same static module twice
	  - ua: add ua_progress()
	  - ua: check for Accept header in incoming OPTIONS request
	  - use a dummy RTP port for incoming OPTIONS (ref #265)
	  - vidcodec: make the API re-entrant
	  - vidfilt: make the API re-entrant
	  - vidisp: make the API re-entrant
	  - vidsrc: make the API re-entrant

	* selftest:
	  - add test for audio level indication in call
	  - add test for call progress

	* Modules:

	* (all video modules updated with API-changes)

	* zrtp: check for RTP packet in send handler (ref #262)
		(thanks to MobiSciLab for reporting the bug)

		- registered zrtp_log function with zrtp engine
		- improved info message on how to verify remote peer
		- improved setting and printing of zrtp cache file
		(thanks Juha Heinanen)


2017-05-14 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.5.3

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.5.3
	* NOTE: Requires libre v0.5.3 or later
	        Requires librem v0.5.0 or later

	* config:
	  - (no changes)

	* build:
	  - detect jack module (thanks Tony Langley)
	  - Updated MSVS projects to vs2015 (thanks Mikhail Barg)

	* baresip-core:
	  - aulevel: add aulevel_calc_dbov()
	  - audio: Set correct clock rate for telephone events
		   (thanks Jan Hoffmann)
	  - play: Add gapless repeat for tone playback (thanks Jan Hoffmann)

	* selftest:
	  - add tests for aulevel
	  - add tests for audio player
	  - add mock aucodec/auplay

	* Modules:

	* gst_video1: Tune x264enc for low latency (thanks Jonathan Sieber)

	* httpd: fix a crash

	* ice: update to latest libre ICE-api

	* omx: Fixed some problems on OMX/RaspberryPi (thanks Jonathan Sieber)

	* srtp: fix SRTP for early-media (thanks Jan Hoffmann)

	* vumeter: use aulevel_calc_dbov to calculate signal energy

	* zrtp: update to latest libzrtp from freeswitch (thanks Juha Heinanen)


2017-04-07 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.5.2

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.5.2
	* NOTE: Requires libre v0.5.0 or later
	        Requires librem v0.5.0 or later

	* new modules:
	  - omx    OpenMAX IL video display module (thanks Jonathan Sieber)

	* config:
	  - (no changes)

	* baresip-core:
	  - aucodec: make the API re-entrant
	  - aufilt: make the API re-entrant
	  - auplay: make the API re-entrant
	  - ausrc: make the API re-entrant
	  - video: using a video-source is now optional

	* Modules:

	* avformat: add pixelformat AV_PIX_FMT_YUVJ420P (Thanks Gary Metalle)

	* cairo: print picture info, use grey background

	* dtmfio: check fd before calling fclose (thanks Richard Perez)

	* h265: enable YUV444P pixelformat

	* oss: fix build for Solaris 11

	* speex: mark the module as deprecated, see speex.org


2017-03-04 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.5.1

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.5.1
	* NOTE: Requires libre v0.5.0 or later
	        Requires librem v0.5.0 or later

	* new modules:

	* config:
	  - stunuser		STUN username for STUN/TURN/ICE
	  - stunpass		STUN password for STUN/TURN/ICE
	  - snd_path		Path to sndfile audio dump files

	* baresip-core:
	  - account: add more accessor functions
	  - account: add 'stunuser' and 'stunpass'
	  - commands: make the struct commands opaque
	  - message: make the API re-entrant, multiple listeners
	  - menc: make the API re-entrant
	  - mnat: make the API re-entrant

	* selftest:
	  - add tests for account
	  - add tests for message

	* Modules:

	* amr: use MOD-CFLAGS instead of global CFLAGS

	* avcodec: added optional config 'avcodec_h264dec' to specify hardware
		   accellerated FFmpeg decoder (thanks Harald Gutmann)

	* avformat: remove blocking sleep, use packet timestamp to
		    pace video stream (thanks Harald Gutmann)

	* debug_cmd: add OpenSSL version to systems info

	* gtk: fix build where USE_NOTIFICATIONS is not defined
	       get rid of system header warnings by using -isystem

	* httpd: add support for un-escaping of URL parameters
		 (thanks to elektm93)

	* menu: add new command 'ausrc' to switch audio source
		add new command 'auplay' to switch audio player

	* sdl2: add more pixelformats (ref #202)
		(thanks Harald Gutmann)

	* sndfile: add config to specify path for dump files (thanks Elektm93)
		   add test for sndfile on *BSD. (#194) (thanks jungle-boogie)

	* swscale: get dst-size from config (ref #203)

	* v4l2_codec: Video device selection bug (#218)
		      (thanks Richard Perez)


2016-12-23 Alfred E. Heggestad <alfred.heggestad@gmail.com>

	* Version 0.5.0

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.5.0
	* NOTE: Requires libre v0.5.0 or later
	        Requires librem v0.5.0 or later

	* new modules:
	  - av1		Experimental AV1 video codec
	  - debug_cmd	Debug commands for advanced users
	  - pcp		Port Control Protocol (PCP) for NAT traversal
	  - swscale	Video scaling using FFmpeg's libswscale

	* config:
	  - call_max_calls	Maximum number of calls per account

	* baresip-core:
	  - call: add multiple lines
	  - call: start video on reinvite (thanks Gary Metalle)
	  - cmd: add support for long commands
	  - cmd: make it re-entrant
	  - config: add some modules to template (thanks Dmitrij D. Czarkoff)
	  - contact: make it re-entrant
	  - play: make it re-entrant
	  - vidcodec: add a intraframe-flag to api
	  - video: resend FIR until Intra frame received

	* selftest:
	  - add test for DTMF in call
	  - add test for contacts
	  - add test for long commands
	  - add test for maximum calls
	  - add test for multiple calls
	  - add test for video call
	  - add audio-source mock
	  - add video-codec mock
	  - add video-display mock
	  - add video-source mock

	* Modules:

	* aufile: convert samples from little-endian to host-endian

	* auloop: use long commands /auloop and /auloop_stop

	* av1: new module for Experimental AV1 video codec

	* avcodec: add config option 'avcodec_h264enc' to set encoder name
		   (thanks to @hargut)

	* avformat: fix init and warnings (thanks Maciej Koman)

	* b2bua: use long command /b2bua

	* contact: use long commands

	* debug_cmd: new module for advanced debug commands

	* g7221: expose spandsp api (thanks to Steve Underwood)

	* gtk: use long command /gtk

	* h265: add 'profile-id=1' to SDP

	* menu: add long commands
		add command 'line' or '@' to set current call

	* opengl: fix deprecated warnings on OSX 10.12

	* opensles: add support for stereo
		    (thanks to Juha Heinanen and Vijay Pratap Singh)

	* opus: add support for SDP parameter mirroring
		(thanks to Sveriges Radio)

	* pcp: new module for Port Control Protocol (PCP) NAT traversal
	       requires librew (https://github.com/alfredh/rew)

	* plc: expose spandsp api (thanks to Steve Underwood)

	* presence: add long commands /presence_{on,off}line

	* snapshot: use long commands (thanks Dmitrij D. Czarkoff)

	* sndio: use driver-suggested buffer size (thanks Dmitrij D. Czarkoff)

	* swscale: new module for video filter using libswscale

	* v4l2: pick up VID_FMT_NV12 and VID_FMT_NV21 formats as well (#176)
		don't check for native/emulated format (#179)
		(thanks Dmitrij D. Czarkoff)

	* vidloop: use long commands

	* vp8: add 'intra' parameter to decoder api
	       fix building with old versions of libvpx

	* wincons: graceful closing of thread (fixes #151)
		   (thanks to @GGGO)

	* zrtp: use long command


2016-07-22 Alfred E. Heggestad <aeh@db.org>

	* Version 0.4.20

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.4.20
	* NOTE: Requires libre v0.4.17 or later
	        Requires librem v0.4.7 or later

	* new modules:
	  - pulse      Pulseaudio driver
	  - vp9        VP9 video codec

	* config:
	  - audio_path          Path to audio files
	  - call_local_timeout  Timeout for incoming calls
	  - redial_attempts     Number of redial attempts
	  - redial_delay        Redial delay in seconds

	* baresip-core:
	  - baresip: added a global baresip instance (WIP)
	  - call: add RTP timeout (thanks to Sveriges Radio)
	  - config: added call_local_timeout for incoming call timeout
	  - config: added compile-time configureable CONFIG_PATH
	  - config: added 'audio_path' config variable (thanks Juha Heinanen)
	  - net: made it re-entrant with struct network
	  - ua: added uag_set_exit_handler
	  - ua: fix bug with reg_uri limited to 64-chars
	  - video: vidfilters should not modify decoded image

	* selftest:
	  - add test for network
	  - add test for sending SIP OPTIONS
	  - add test for RTP timeout

	* Modules:

	* avcodec: fix usage of deprecated API

	* avformat: remove support for scaling
		    fix usage of deprecated API

	* cons: relay log-messages to active UDP/TCP connections
		https://github.com/alfredh/baresip/issues/144

	* h265: fix usage of deprecated API

	* menu: added support for re-dial on failure
		(thanks to Sveriges Radio)

	* mpa: Bug with reinit of codec structs (thanks Christian Hoene)

	* natpmp: added support for RTCP

	* presence: use correct struct in deref handler

	* pulse: new module for Pulseaudio driver
		 (thanks to Matthias Apitz for testing)

	* vidloop: vidfilters should not modify decoded image

	* vp8: module renamed from vpx.so to vp8.so

	* vp9: new module implementing VP9 video codec

	* wincons: use ReadConsoleInput, thanks to GGGO (fixes #139)
		   https://github.com/alfredh/baresip/issues/139


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

	* Version 0.4.19

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.4.19
	* NOTE: Requires libre v0.4.14 or later
	        Requires librem v0.4.7 or later

	* new modules:
	  - mpa        MPA Speech and Audio Codec (thanks Christian Hoene)

	* baresip-core:
	  - audio: remove is_g722 exception
		   use aucodec's rtp clockrate for calculating RTP timestamp
		   plc: make sure sampc is exactly one ptime frame
	  - aucodec: split srate into DSP srate and RTP clockrate
		     (these are different for e.g. G.722 and MDA)
	  - mos: add mos_calculate() (thanks Lorenzo Mangani)
	  - net: use configured dns servers only, if specified
	  - ua: fix potential NULL-pointer crash for uag.cfg

	* selftest:
	  - add test for SIP registration with DNS
	  - add test for SIP registration with authentication
	  - add test for MOS calculations
	  - added a mock DNS Server
	  - added a mock SIP Server

	* Modules:

	* aucodec: add support for NV12 and YUVJ420P pixel formats

	* daala: update to libdaala version 0.0-1564-g79787c7

	* gtk: fix autodetection of libgtk+ 2.0 (thanks Charles Lehner)

	* h265: remove call to x265_cleanup, caused crash on OpenBSD

	* mpa: new module that implements MPA Speech and Audio Codec
	       (this module was contributed by Christian Hoene)

	* opus: added new configuration parameters:
		opus_cbr        {yes,no}   # Constant Bitrate (inverse of VBR)
		opus_inbandfec  {yes,no}   # Enable inband FEC
		opus_dtx        {yes,no}   # Enable DTX

	* presence: improved interoperability, allow white space before
		    xml element closing tags (thanks Juha Heinanen)

	* x11: added borderless window (thanks Doug Blewett)


2016-03-12 Alfred E. Heggestad <aeh@db.org>

	* Version 0.4.18

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.4.18
	* NOTE: Requires libre v0.4.14 or later
	        Requires librem v0.4.7 or later

	* baresip-core:
	  - call: fix SIP INFO with dtmf-relay (thanks Gary Metalle)
	  - ua: add event UA_EVENT_CALL_CLOSED for ua_hangup()

	* selftest:
	  - add tests for answer a call and hangup

	* Modules:

	* alsa: fix potential crash (thanks Gary Metalle)

	* audiounit: fix compilation for iOS (issue #91)

	* avcodec: fix compilation for FFmpeg 3.0

	* avformat: fix compilation for FFmpeg 3.0

	* gtk: always handle incoming calls (thanks Charles Lehner)

	* h265: fix compilation for FFmpeg 3.0

	* menu: add config 'menu_bell  off/on' to enable Bell alert
		add command 'A' for switch audio device (thanks AlexMarlo)

	* v4l2_codec: add list of encoders (fixes #99)


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

	* Version 0.4.17

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT tag: v0.4.17
	* NOTE: Requires libre v0.4.14 or later
	        Requires librem v0.4.7 or later

	* new modules:
	  - echo        Echo server module
	  - jack        JACK Audio Connection Kit audio-driver

	* baresip-core:
	  - config: keep config object in memory
	  - ua: moved playing of ringtones out of core, to "menu" module
		(let's keep the core nice and slim..)
	  - ui: added ui_password_prompt()

	* selftest:
	  - silence debug/info log by default, only print warnings
	    (use -v to see verbose logging)

	* Modules:

	* alsa: added config option to specify the sample format
		"alsa_sample_format    {s16,float,s24_3le}"
		thanks to Ola Palm for valuable feedback

	* audiounit: fix recording on OSX (thanks Sebastian Reimers)
		     print hardware samplerate in debug mode

	* auloop: add support for 44100 Hz samplerate

	* daala: update to latest libdaala API (thanks Dmitrij D. Czarkoff)

	* echo: new module which implements a simple Echo-server, to
		be used in combination with the aubridge.so module.
		contributed by Sebastian Reimers

	* gtk: fixes to support C89 compiler (thanks Dmitrij D. Czarkoff)

	* jack: new module which implements audio-driver for JACK

	* menu: playing of ringtones moved here, from ua.c

	* sndio: fix crash when device open fails (thanks Dmitrij D. Czarkoff)


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

	* Version 0.4.16

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT commit bed2241da3261e472f09b21958f0cc1324a94f27
	* GIT tag: v0.4.16
	* NOTE: Requires libre v0.4.14 or later

	* new modules:
	  - v4l2_codec  Video4Linux2 video codec (H264 hardware encoding)
	  - vidinfo     Video info overlay module

	* baresip-core:
	  - audio: add audio_set_source() and audio_set_player()
	  - audio: flush tx-buffer for all modes (thanks Thibault Gueslin)
	  - call: add call_is_outgoing()
	  - call: check address-family of incoming SDP offer (thanks Olle)
	  - h264: move H.264 packetization code to core
	  - main: add -u option to append extra global UA parameters
	  - main: pre-load modules after all arguments are parsed
	  - ua: add events UA_EVENT_SHUTDOWN,UA_EXIT
	  - ua: add ua_hold_answer()
	  - ua: add ua_set_media_af()
	  - ua: delay mod-unloading if mods has a ref to struct ua

	* build:
	  - add verbose build with V=1 (thanks Dmitrij D. Czarkoff)
	  - add pkg-config file (thanks William King)
	  - add travis.yml file for Github build-system

	* Modules:

	* alsa: fix memory leaks

	* avcodec: move common H.264 packetization code to core

	* cairo: use pkg-config in makefile

	* daala: update to latest libdaala (thanks Dmitrij D. Czarkoff)

	* gst_video: use H.264 packetization API from core

	* gst_video1: use H.264 packetization API from core

	* gtk: fix segmentation fault on window close

	* mwi: add 500ms delay after closing subscription

	* oss: use pthread for ausrc instead of fd_listen (fixes FreeBSD)

	* presence: use sipevent_sock instance from UA core
		    add 500ms delay after closing subscription

	* v4l2_codec: new module

	* vidinfo: new module

	* zrtp: fix ZRTP over TURN by moving helper to layer 10
		fix ZID verification (thanks Ingo Feinerer)


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

	* Version 0.4.15

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT commit 86262a6fc17e19e2be82eb8a2a05ec0f884d3d38
	* GIT tag: v0.4.15
	* NOTE: Requires libre v0.4.13 or later

	* added selftest binary

	* baresip-core:
	  - audio: fix televent when pt != 101 (reported by AndyJRobinson)
	  - magic: use __func__ for C99 or later
	  - sip: make sip_req_send() public
	  - ua: add UA_EVENT_CALL_DTMF_START/END, thanks Gary Metalle

	* Modules:

	* alsa: added extra logging

	* gtk: add support for libnotify (thanks Charles Lehner)

	* video: fix potential null deref (thanks Tomasz Ostrowski)

	* zrtp: added 36-bytes preamble for TURN-header


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

	* Version 0.4.14

	* GIT URL: https://github.com/alfredh/baresip.git
	* GIT commit ebac23b0692de71ee4c3a436f0372013150c937f
	* GIT tag: v0.4.14
	* NOTE: Requires libre v0.4.13 or later

	* new modules:
	  - gtk		GTK+ 2.0 UI (thanks Charles E. Lehner)
	  - gst1	Gstreamer 1.0 audio module
	  - gst_video1	Gstreamer 1.0 video module (thanks Thomas Strobel)
	  - daala	Experimental video-codec using Daala

	* baresip-core:
	  - baresip: added -m argument to pre-load modules
	  - config: add kqueue to sample config (thanks Dmitrij D. Czarkoff)
	  - log: make code C89 compliant (thanks Victor Sergienko)
	  - module: added module_preload()
	  - ua: add CALL_EVENT_TRANSFER_FAILED
	  - ua: skip initial white space from uri (thanks Juha Heinanen)
	  - ua: ua_prev_call()
	  - videnc: move videnc_packet_h to update-handler

	* build:
	  - added optional $(MOD)_CFLAGS for local module CFLAGS
	  - added project file for Visual C++ Express 2010
	  - freebsd: add include path to $(SYSROOT)/local/include
	    (thanks Hellmuth Michaelis)

	* Modules:

	* avcodec: make code C89 compliant (thanks Victor Sergienko)

	* cons: make code C89 compliant (thanks Victor Sergienko)

	* daala: new module

	* dshow: updates for VC2010 (thanks Victor Sergienko)

	* gst1: new module

	* gst_video1: new module

	* gtk: new module

	* menu: fix crash when 0 UAs (thanks Hans Petter Selasky)
		added command 'H' to hold previous call (thanks xanm)

	* wincons: make code C89 compliant (thanks ggcoding)


2015-06-20 Alfred E. Heggestad <aeh@db.org>

	* Version 0.4.13

	* GIT commit 2e3e825ef5532dfde5a8b52de9ebaac51aa20a9c
	* NOTE: Requires libre v0.4.12 or later

	* new modules:
	  - aufile      Audio module for using a WAV-file as audio input
	  - b2bua       Back-to-Back User-Agent (B2BUA) module
	  - codec2      CODEC2 audio codec
	  - gst_video   Gstreamer video codec
	  - h265        H.265 (HEVC) video codec

	* baresip-core:
	  - contact: add support for access-control (thanks Doug Blewett)
	  - ausrc: change base-class to a const pointer
	  - auplay: change base-class to a const pointer
	  - vidsrc: change base-class to a const pointer
	  - vidisp: change base-class to a const pointer
	  - video: smooth sending of video packets


	* Modules:

	* amr: added support for octet-align mode (thanks to Stefan Sayer)

	* aubridge: copy audio-samples if resampler not needed

	* aufile: new module for using a WAV-file as audio source

	* avcapture: only register 1 video source

	* avformat: fix segfault on recent versions of libav

	* b2bua: new experimental module

	* codec2: new module for CODEC2 audio codec

	* dtls_srtp: uppercase fingerprint, interop (thanks Juha Heinanen)
		     alternative SDP protocols for interop

	* dtmfio: unregister event handler on close (thanks Hellmuth Michaelis)

	* gst_video: new module using Gstreamer as a video codec
		     (Thanks to Victor Sergienko and Fadeev Alexander)

	* h265: new module for H.265 video codec

	* httpd: added raw mode (thanks Lorenzo Mangani)

	* menu: create user-agent with a command 'R' (thanks Lorenzo Mangani)

	* opus: add configuration of "opus_bitrate"
		(thanks to Juha Heinanen)

	* speex: add configuration of "speex_mode_nb" and "speex_mode_wb"
		 (thanks to Dmitrij D. Czarkoff and Juha Heinanen)

	* vidloop: add VIDLOOP_INTERNAL_FMT and split encoder/decoder

	* x11: catch Window delete (thanks to Doug Blewett)

	* zrtp: initialize remote_zid (thanks to Ingo Feinerer)


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
