Powered by Universal Speech Solutions LLC


UniMRCP 1.0.0 Released

This release is a result of the development continuously lasting more than two years. The open source initiative works. There have been a number of successful deployments since 0.7.0 release. I cannot recall any major API change or an outstanding issue encountered meanwhile. All these make me think it is the time for 1.0.0 now.

Read more

Public MRCP Server and Partnership Possibilities

I want to explore in more details one of the basis ideas, which is getting more and more mature. The idea is simple and clear enough to build and/or launch a public MRCP server. The word "public" has the following meanings in this scope.

Read more

Two Years of UniMRCP Development

Consistency, stability and overall reliability are what I'm usually trying to achieve not only in this project, but in an everyday life. Time has proved how much I was right creating this project. UniMRCP has been evolved probably a bit slowly, but consistently and reliably, welcoming everyone interested in the project and bypassing possible troubles we all meet from time to time in our life.

Read more

Acapela Speech Synthesis Powered by UniMRCP Open Source Project

Acapela Group, a leading Voice expert, and UniMRCP, an open source MRCP project, are announcing the release of Acapela MRCP add-on 2.000, an extension of Acapela TTS for Windows and Linux servers, providing customers with a greater choice of high-end speech solutions using MRCPv2.

Read more

UniMRCP 0.10.0 Released

UniMRCP 0.10.0 r1577 has been released and now is available for download.
  • Source Distribution 
  • Windows Installers (32-bit and 64-bit)
  • Windows SDK Installers (32-bit and 64-bit) 
  • Dependency Packages (based on APR-1.3.8, APR-Util-1.3.9, Sofia-SIP-1.12.10) 

This release introduces revamped configuration format. The new format allows to use profiles in more flexible way. Also, it addresses XML conformance issues. Corresponding XML schemas are available as well. Please upgrade your local configuration files as the old format is no longer valid.

The other major addition is the implementation of request timers. It aims to address a potential vulnerability of the UniMRCP client stack in case there is no response back from an MRCP server. RTSP, MRCPv2 request timeouts as well as several SIP timeouts are configurable now.

Yet another interesting addition is an utility tool called svnrev, which allows to generate uni_revision.h header file containing SVN revision number and build stamp. Although this tool has basically been integrated into VS and GNU build, it's experimental and probably informative only yet.

Changes since previous release 0.9.0 r1383 include
  • Enhanced MRCP, RTSP parsers to be able to process messages with headers, which don't entirely fit the read buffer. The issue encountered on processing of a huge number of vendor specific parameters included in the response to GET-PARAMS request. (Issue-57, Vlad)
  • Disabled simultaneous termination of tasks. Now tasks are terminated one by one. (Issue-56, Derik)
  • Fixed apt_pair_parse() to copy name/value strings from the stream.
  • Fixed possible stack overflow on the construction of log entries. Log entries are limited with 4096 bytes.
  • Added a sample scenario to umc application to show how SET-PARAMS and GET-PARAMS methods should be used.
  • Fixed RTSP client stack crash while processing the response to final TEARDOWN request. (Issue-60, Chris)
  • Provided an option to adjust size of buffers used to receive/transmit MRCPv2 messages. (Issue-57, Vlad)
  • Added the main page for doxygen generated documentation. (Vali)
  • Implemented an option to trace current thread identifier in the logs. (Anthony)
  • Checked playout delay to be codec frame aligned. (Shy)
  • Fixed remote address in the trace for "Close RTP Transmitter".
  • Revised C/C++ header guards not to violate naming convention of the C standard. (Issue-62, Markus)
  • Added SVN keyword Id to all the source files to be automatically expanded on each commit with the revision number and stamp of the file.
  • Fixed access violation while reading server config. (Issue-66, Vali)
  • Enhanced detection of Flite configuration. (Issue-67, nombrandue)
  • Added logger.xml configuration file to load the settings of logger from.
  • Added missing mpf_codec_open() and mpf_codec_close() calls, which might be required for integration of new codecs. (Shy)
  • Added multipart content generator and parser.
  • Enhanced asrclient library built on top of libunimrcpclient to provide streaming interface as an alternative to file input.
  • Introduced generic timer queue and poller task.
  • Removed no longer referenced net client and server tasks.
  • Fixed UniMRCP server crash in case there is no MPF engine configured for the MRCPv1 profile. (Issue-74, Anthony)
  • Increased XML_FILE_BUFFER_LENGTH to ensure configuration files fit the buffer.
  • Revised task and inter-task communication related debug traces.

Thanks for using UniMRCP.

Arsen Chaloyan
The author of UniMRCP

Announcement Group

Subscribe to the Announcements Group if you prefer to receive news and press releases only. Please note that announcements are normally posted to the Discussion Group as well.