Update voor Rob
[sgc.git] / README.txt
blob092bade07a651778f9d4b8e472f1001fd9be240f
1 SpeakGoodChinese
3 All source code in this directory is licensed under the General Public License
4 version 2 or at your wish, any later version. Stefan de Konink, after this,
5 the author, did his best to create a bug free program. This program uses the
6 Praat program extensively.
8 This program should work on any platform Praat and GTK are supported on :)
11 The contents in the directory pinyin and wordlists CAN BE licensed under 
12 another license than the GPL. These contents are not required for operation.
15 Authors:                License: 
16 Praat                   GPL             - Paul Boersma/David Weenink
17 SGC_ToneProt            GPL             - Rob van Son
18 SpeakGoodChinese        GPL             - Stefan de Konink
19 GtkTreeview Tutorial    GPL             -
21 Additional help with localization was provided by Tristian van Berkom.
23 Links:
24 http://www.praat.org/
25 http://www.fon.hum.uva.nl/
26 http://www.speechminded.com/
27 http://www.speakgoodchinese.org/
28 http://www.glade.gnome.org/
30 ---------------------------------------------------------
32 The SpeakGoodChinese tone recognizer (SGC) helps you to practise pronouncing Mandarin Chinese tones.
34 Features
36 - The tone recogniser analyses your pronunciation of the Chinese tones by using techniques in speech recognition.
38 - It shows you via a graphical presentation the difference between your pronunciation of the tones and the standard pronunciation.
40 - It also gives you a written analysis of your pronunciation.
42 - You can listen to a hummed example of a tone or tone combination, before you record your pronunciation.
44 - You can listen to your own recorded pronunciation.
46 - You can practise all one or two syllabic words of Mandarin Chinese by simply adding them to the wordlist yourself. The wordlist is then saved automatically for your future visits.
49 STRUCTURE
51 SGC consists of four major subsystems: 
52 - Glade user interface definition (glade.gnome.org), licensed under the GNU GPL
53 - Praat phonetics, speech science, function library (www.praat.org), licensed under the GNU GPL
54 - SGC_ToneProt tone recognizer (www.SpeakGoodChinese.org), licensed under the GNU GPL
55 - Wordlists, combinations of wordlists and sound examples, 
56   licensed under the GNU GPL and Creative Commons licenses
57   (also user supplied)
58 SGC should run on all platforms that support both Praat and Glade. However, not all
59 platforms have been tested yet.
60   
61 - GLADE
62 Quote from the website glade.gnome.org:
64     Glade is a RAD tool to enable quick & easy development of user interfaces 
65     for the GTK+ toolkit and the GNOME desktop environment, released under 
66     the GNU GPL License.
68     The user interfaces designed in Glade are saved as XML, and by using the 
69     libglade library these can be loaded by applications dynamically as needed.
71     By using libglade, Glade XML files can be used in numerous programming 
72     languages including C, C++, Java, Perl, Python, C#, Pike, Ruby, Haskell, 
73     Objective Caml and Scheme. Adding support for other languages is easy too.
74     
75 The GUI definition is specified in the file sgc.glade, with additional components
76 in sgc.glade.h, sgc.h, and the po and locale directories. These files can be used 
77 with the conventional RAD tools for Glade. Definition and program code are fully 
78 separated, except for a file that contains the glue subroutine calls.
80 - PRAAT
81 The Praat program is originally a stand alone program for phonetics, speech, 
82 and acoustic research. Praat runs on most Unix variants, MacOS X and earlier 
83 versions of the MacOS (the latter are not maintained), Linux, and MS Windows.
84 SGC uses a library, libpraat, constructed from the Praat sources. SGC also 
85 makes extensive use of Praat script files (with the extension .praat). Praat 
86 is comprehensively documented at www.praat.org.
88 - SGC_ToneProt
89 The SGC_ToneProt directory contains an autonomous tone recognition module.
90 It consists of praat and sendpraat executables for several platforms. The
91 recognizer is build from platform independend praat scripts. 
92 The SGC GUI controls the recognizer by executing praat scripts on the 
93 praat executable in the background. Results are returned as files. 
94 SGC_ToneProt scripts perform several types of actions beside the
95 pure tone recognition.
97 - WORDLISTS
98 Users can add their own word lists to practise. SGC stores these lists
99 in the wordlists directory. SGC comes with precompiled word lists, some 
100 with prerecorded examples for all words. 
103 COMPONENT LIST
105 - DIRECTORIES
106 locale             : Localizations of the interface
107 pinyin             : Some standard sound files (deprecated)
108 PitchTiers         : Storage of Pitch and PitchTier files
109 po                 : Pango message files
110 records            : Stores recorded PitchTiers (deprecated)
111 todo               : Incomplete files on To Do list
112 wordlists          : Wordlists and examples (*.sgc files)
113 SGC_ToneProt       : The tone recognizer (separate subsystem)
115 - TEXT FILES
116 COPYING            : GPL License
117 HOWTO              : Installation instructions
118 README       
119 README.txt         : This file
120 TODO.txt           : List of things to do
122 - C CODE AND HEADER FILES
123 cairo.c            : The graphical module
124 config.c           : Handles storing and reading the config (sgc.ini) file.
125 distribution.c     : Handles storing and reading distribution files.
126 file.c             : Handles storing and reading wordlist files.
127 frompraat.c        : Contains modified Praat functions for drawing the Pitch.
128 frompraat.h        : Subroutine definitions for frompraat.c (header file)
129 praat.c            : All praat related calls such as sound and processing.
130 main.c             : The main program, just a call to Glade.
131 signals.c          : GUI application logic code.
132 signals-editor.c   : GUI-editor application logic code.
133 signals-realize.c  : GUI startup logic.
134 sgc.glade.h        : Text definitions of Glade (header file)
135 sgc.h              : Subroutine definitions for Glade and Praat (header file)
136                    : And contains compiletime config.
138 - LIBRARY AND RELATED FILES
139 libpraat.def       : Libpraat definition file
140 libpraat.dll       : Windows praat library
142 - MAKE FILES
143 Makefile           : Link to the makefile used
144 Makefile.linux     : Makefile for Linux (on x86/64)
145 Makefile.linuxppc  : Makefile for Linux on PowerPC
146 Makefile.mingw32   : Makefile for MS Windows (XP)
148 - SCRIPTS AND ADDITIONAL FILES
149 production         : Script to copy all libraries
150 sgc.glade          : Glade interface definition, ie, the GUI
151 sgc-logo.png       : Picture of 'shuo1 hao3 zong1wen2' in characters
152 sgc-mounded.xar    : Vector graphics file (Xara) of the final logo
153 sgc.png            : SGC logo rasterized
154 sgc.xar            : Vector graphics file (Xara) of the design logo