hapibook 1 l..!:!.£l 11 11 1 Next Previous Contents Index Next: Contents O O K A d e s c r i p t i o n ... ... . ... _... , , ~ ~ http://www.ee.uwa.edu.au/~roberto/research/speech/local/entropic/HAPIBook/hapibook.html (1 of 9)25.11.2010 3:53:08 hapibook o t the H ' ! ' K A p p l i c a t i o n Programming Interface JuIian OdelI DanKershaw Dave Ollason Valtcho Valtchev Version 1.4 David Whitehouse The HAPI Book (for HAPI Version 1.4) ©COPYRIGHT 1999 Entropic Ltd http://www.ee.uwa.edu.au/~roberto/research/speech/local/entropic/HAPIBook/hapibook.html (2 of 9)25.11.2010 3:53:08 Contents Next: Part I: Tutorial Overview Up: hapibook Previous: hapibook Contents Part I: Tutorial Overview l 1 An Introduction to HAPI m 1.1 General Principles of Recognition n 1.2 The Position and Role of HAPI n 2 An Overview of HAPI m 2.1 Basics n 2.2 Configuration n 2.3 Type definitions and memory allocation n 2.4 Error Reporting n 2.5 Strings and Names n 2.6 Speech Input/Output n 2.7 HAPI Objects n 2.8 Operation Modes n 2.9 HAPI Version history n 3 Using HAPI: An Example Application m 3.1 Getting started n Acoustic Models n Dictionary n Network n Configuration n Compilation n Running the tutorial n 3.2 Program Description n 3.3 Initialisation n 3.4 User interaction n 3.5 Recognition n 3.6 Results Processing n 3.7 Program Control n 4 Using HAPI: Improving the Dialer m 4.1 Expanded Input Syntax n 4.2 Modification of User Phone Book n 4.3 Alternative Hypotheses n 4.4 Running the extended dialer n http://www.ee.uwa.edu.au/~roberto/research/speech/local/entropic/HAPIBook/node1.html (1 of 8)25.11.2010 3:53:13 Contents 5 Using HAPI: Speaker Adaptation m 5.1 Introduction n 5.1.1 An introduction to adaptation n 5.1.2 Types of adaptation n 5.1.3 Adaptation in HAPI n 5.2 Application design n 5.2.1 Key Design n 5.2.2 Application code definitions n 5.2.3 Application overview n 5.2.4 The application in depth n 5.3 Running the adaptation tool n 5.3.1 Data collection n Performing adaptation n 5.3.3 Testing the adapted models n 6 Interfacing to a source driver m 6.1 An Example Driver n 6.2 Implementation n 6.2.1 The Buffer n 6.2.2 The HAPI Interface n 6.2.3 Data Capture n 6.3 Variations n Part II: HAPI in Depth l 7 Developing HAPI Applications m 7.1 System Design n 7.2 HAPI for HTK users n 8 HAPI, Objects and Configuration m 8.1 Initialisation and status checks n 8.2 Configuration in general n 9 hapiHMMSetObject m 9.1 Definition n 9.2 Usage n 10 hapiTransformObject m 10.1 Transforms and adaptation n 10.2 Introduction to the transform object n 10.2.1 Application initialisation n 10.2.2 Transform types n 10.3 Transform object without further adaptation n 10.4 Adaptation n http://www.ee.uwa.edu.au/~roberto/research/speech/local/entropic/HAPIBook/node1.html (2 of 8)25.11.2010 3:53:13 Contents 10.4.1 A class-based example n 10.4.2 Using a full transform n 11 hapiSource/CoderObject m 11.1 hapiSourceObject n 11.2 hapiCoderObject n 11.3 Speech detector n 11.4 Cepstral Mean Normalisation n 11.5 Channels and Sessions n 11.6 Usage n 11.7 Utterance processing n 11.8 Access n 11.9 Application defined sources n 11.9.1 Troubleshooting n 12 hapiDictObject m 12.1 Types n 12.2 Definition n 12.3 Usage n 12.4 Access Functions n 12.5 Modification Functions n 13 hapiLatObject m 13.1 Definition n 13.2 Usage n 13.3 Access n 13.3.1 Nodes n 13.3.2 Arcs n 13.3.3 Phone alignment n 13.4 Routes n 13.5 Sub lattices n 13.6 Modification n 13.7 NBest n 14 hapiNetObject m 14.1 Definition n 14.2 Usage n 15 hapiRecObject m 15.1 Types of Recogniser n 15.2 Usage n 15.3 Frame by frame operation n 15.4 Callback operation n http://www.ee.uwa.edu.au/~roberto/research/speech/local/entropic/HAPIBook/node1.html (3 of 8)25.11.2010 3:53:13 Contents 16 hapiResObject m 16.1 Usage n 16.2 Word level results access n 16.3 Phone level results access n Part III: Application Issues l 17 System Design m 17.1 Hands-free operation with HAPI n 17.2 Managing dialogs n 17.3 Robustness n 17.3.1 Out of grammar rejection n 17.3.2 Barge-in n 17.3.3 Simplicity n 17.4 The dialer n 17.4.1 Playback of audio prompts n 17.4.2 Verification of results n 17.4.3 Phone book addition n 17.4.4 Fallback simplification in adverse conditions n 18 Extended Results Processing m 18.1 Voice controlled Email n 18.2 Command Syntax n 18.3 Command Processing n 18.4 Ambiguity n 18.5 Implementation n 18.6 An Example Command n Part IV: Decoders l 19 Decoder Variations m 19.1 The HTK decoder n 19.2 The MVX decoder n 19.3 The LVX decoder n 19.4 Decoder development n 20 The Core HTK Decoder m 20.1 Systems n 20.1.1 HMMs n 20.1.2 Dictionaries n 20.1.3 Networks n 20.2 Decoder n 20.2.1 Features n 20.2.2 Pruning n http://www.ee.uwa.edu.au/~roberto/research/speech/local/entropic/HAPIBook/node1.html (4 of 8)25.11.2010 3:53:13 Contents 20.2.3 Considerations n 21 The LVX Decoder m 21.1 Systems n 21.1.1 HMMs n 21.1.2 Dictionaries n 21.1.3 Networks n 21.2 Decoder n 21.2.1 Features n 21.2.2 Pruning n 21.2.3 Considerations n Part V: Appendices l A HAPI Reference m A.1 Data Types n A.2 Configuration Variables n A.3 Objects n A.4 hapiSourceObject n A.5 hapiSourceObject Drivers n A.6 hapiCoderObject n A.7 hapiHMMSetObject n A.8 hapiTransformObject n A.9 hapiDictObject n A.10 hapiLatObject n A.11 hapiNetObject n A.12 hapiResObject n A.13 hapiRecObject n Frame-by-frame operation n Callback operation n B HAPI from J (J ) m AVA HAPI B.1 J data types and classes n HAPI B.2 Auxiliary J classes and interfaces n HAPI Abstract instance methods n Notes n Abstract instance methods n Notes n Class constants n Notes n Class constants n Notes n http://www.ee.uwa.edu.au/~roberto/research/speech/local/entropic/HAPIBook/node1.html (5 of 8)25.11.2010 3:53:13 Contents Class constants n Notes n Class constants n Notes n Class constants n Notes n Class constants n Notes n Class constants n Notes n Class constants n Notes n Class constants n Notes n Class constants n Notes n B.3 Core J classes n HAPI B.3.1 JHAPI.hapi n Class methods n Notes n B.3.2 JHAPI.SourceObject n Class constants n Constructors n Class methods n Instance methods n Notes n B.3.3 JHAPI.CoderObject n Class constants n Constructors n Class methods n Instance methods n B.3.4 JHAPI.HMMSetObject n Constructors n Class methods n Instance methods n Notes n B.3.5 JHAPI.TransformObject n Constructors n http://www.ee.uwa.edu.au/~roberto/research/speech/local/entropic/HAPIBook/node1.html (6 of 8)25.11.2010 3:53:13 Contents Class methods n Instance methods n B.3.6 JHAPI.DictObject n Class constants n Constructors n Class methods n Instance methods n B.3.7 JHAPI.NetObject n Constructors n Class methods n Instance methods n B.3.8 JHAPI.LatObject n Instance variables n Constructors n Class methods n Instance methods n B.3.9 JHAPI.ResObject n Constructors n Class methods n Instance methods n B.3.10 JHAPI.RecObject n Constructors n Class methods n Instance methods n B.4 Creating a speech application in J n AVA B.4.1 General information n B.4.2 Program Description n B.4.3 Error handling n B.4.4 Basic recognition component n B.4.5 Dialer recognition component n B.4.6 Main program n C Error and Warning Codes m C.1 Generic Errors n C.2 Summary of Errors by Module n Index l About this document ... l http://www.ee.uwa.edu.au/~roberto/research/speech/local/entropic/HAPIBook/node1.html (7 of 8)25.11.2010 3:53:13 Contents Next: Part I: Tutorial Overview Up: hapibook Previous: hapibook Entropic HAPI_V1.4 email [email protected] http://www.ee.uwa.edu.au/~roberto/research/speech/local/entropic/HAPIBook/node1.html (8 of 8)25.11.2010 3:53:13