HTK Speech Recognition Toolkit
 [ Home | Register | Mailing Lists | Documentation ]

Getting HTK
Manage login/password

History of HTK
CUED LVR Systems

Mailing Lists

Get involved
Future Plans
Report a Bug
Bug Status

HTK Extensions
ASR Toolkits/Software
ASR Research Sites
Speech Companies
Speech Conferences
Speech Journals
ASR Evaluations



License Issues

  • What is the role of Microsoft in all this?

    See the 'History of HTK' page on the website for a full explanation. The short version is:

    HTK was originally developed at the Cambridge University Engineering Department (CUED). In 1993 Entropic Research Laboratory Inc. acquired the rights to sell HTK and the development of HTK was fully transferred to Entropic in 1995 when the Entropic Cambridge Research Laboratory Ltd was established. HTK was sold by Entropic until 1999 when Microsoft bought Entropic. Microsoft has now licensed HTK back to CUED and is providing support so that CUED can redistribute HTK and provide development support via the HTK3 web site. While Microsoft retains the copyright to the existing HTK code, everybody is encouraged to make changes to the source code and contribute them for inclusion in HTK3.

  • Can I build & sell products based on HTK3?

    You may build a product but you are not allowed to redistribute (parts of) HTK3, i.e. you can't ship shrink-wrap boxes with products that contain HTK3 code.

  • Can I use this version for teaching & academic research?

    Yes, absolutely.

  • Can I use this version in commercial product Research & Development?

    Yes. You can for example use HTK3 to train models that are then used in your products.

  • Can I use HDecode in commercial product Research & Development?

    The licence agreement for HDecode is more restrictive that the standard HTK licence. HDecode is primarily distributed for research purposes only, BUT may be used as part of the training process for producing models for products. This is to enable users to make use of the discriminative training code. If in doubt you should contact the licensor.


  • What is HTK and what is it not?

    HTK is a toolkit for research in automatic speech recognition and has been used in many commercial and academic research groups for many years.

    It is not a desktop dictation system or an application that you just install on your PC to get a speech interface to your computer.

  • Are there any teaching materials available that use HTK3?

    Not yet, but we always welcome contributions.

  • I have a problem using HTK3 -- where can I get support?

    In the first instance search the HTK website for the answer to your questions. Otherwise, you can ask on one of the HTK specific mailing lists (see Mailing List page). Queries about the use of HTK3 should be addressed to Be aware that you need to be a member of this mailing list in order to post messages.

  • How can I learn more about Automatic Speech Recognition?

    Have a look at our list of standard references about Automatic Speech Recognition and Pattern Recognition. You could also read some of the papers referenced on the CUHTK LVR system page.

  • I registered but didn't receive an email with my password. What happened?

    In almost all cases this happened as a result of our email getting treated as spam by your email server or client. The best thing to do is to whitelist the email address then visit the change password page and enter your HTK login in the "have a new password generated for you" field. A new password email will then be sent to you.

    If you do not know how to do this, then you should contact your local technical support. We cannot instruct you, as the method varies greatly according to what software is being used at your site.

  • Why are my messages being rejected by the mailing lists?

    This is most likely because your message contains HTML markup, or has an attachment. For ease of reading and to maintain the security of our web server, we only accept postings in plain text. See here for advice on configuring your email system to compose plain text messages.

    Alternatively, it could be that you are either not a subscriber, or are posting from a different address from the one you used when you subscribed. The mailing lists only accept messages from email addresses listed as subscribers. If you change youre email address, please unsubscribe the old address and subscribe from the new one. Please contact the list owner if you need assistance.

Source Code and Installation

  • What is the difference between this version and the Entropic one?

    The HTK3 code is based on the final release from Entropic (V2.2_ref). The source code now contains Microsoft Copyright headers; there is revised and consistent indentation and some minor changes to remove some compiler warnings have been made. Functionally the code in HTK 3.0.0 should be identical to HTK V2.2_ref.

  • Can I build the CU-HTK Hub4/5 evaluation system with HTK3?

    No. The HTK version used internally at the Cambridge University Engineering Department has some extra functionality not available in HTK3; support for context dependency beyond triphones; long-span language model support, confusion network generation and combination etc. Some of the most generally useful of these features may be made available in future releases of HTK.

  • What kind of computer/OS do I need to run HTK3?

    The distributed version of HTK3 should build on Linux, Solaris, IRIX, HPUX, Mac OS/Xand FreeBSD. If it doesn't, please file a bug report. HTK has also been successfully built on Windows NT, 2000 and XP (probably works on Vista too).

  • How can I use HTK with my own data in text/matlab/binary format?

    You need to convert your data to the HTK parameter format (you can eiter use the USER parameter kind or pretend they are MFCC or similar). Typically this involves writing a small programm that does the conversion. For an example see HTKWrite.c

  • I get an an error compiling HTKLib on with Visual Studio?

    Try using the older makefile which works with older versions of Visual Studio.

  • I get a compilation error: HModel.c:607: error: invalid storage class for function 'GetInputXForm'

    This happens if you try to compile HTK 3.3 using GCC version 4. You can find details about how to fix this here. Note that this has been fixed in 3.4 and we strongly recommend that you upgrade to the latest release.

  • How do I compile HTK 3.3 using GCC4?

    Please upgrade to 3.4 which does compile correctly with GCC4

  • Can I have some detailed instructions about building HTK on Linux/Unix
  • See Installing HTK on Linux or Unix (including OS X)

  • How can I compile HTK 3.2 on Windows

    You should upgrade to version 3.4 which has incorporated the modifications below to enable it to compile on Windows. Alternatively, you can download Windows binaries which have been tested on Windows 2000 and XP.

    For detailed installation instructions for Windows see Installing HTK on Microsoft Windows

  • How can I compile HTK 3.2 on Mac OS X

    You should upgrade to HTK 3.4 which now uses autoconf to build on OS X.

  • I ran configure with --prefix=/path and the binaries were installed in /path/bin.linux Why?

    This was done so to preserve the installation behaviour of previous releases. This may become optional in future releases.

Commonly used abbreviations:

CUED - Cambridge University Engineering Department
HTK - Hidden Markov Model Toolkit
PLP - Perceptual Linear Prediction

Comments and suggestions to