rpms/cmusphinx3/F-11 cmusphinx3.spec, NONE, 1.1 sphinx3-doxygen.patch, NONE, 1.1 sphinx3-link.patch, NONE, 1.1 sphinx3-python.patch, NONE, 1.1 sphinx3-string.patch, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2

Jerry James jjames at fedoraproject.org
Sat Sep 26 16:14:15 UTC 2009


Author: jjames

Update of /cvs/pkgs/rpms/cmusphinx3/F-11
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv31325/F-11

Modified Files:
	.cvsignore sources 
Added Files:
	cmusphinx3.spec sphinx3-doxygen.patch sphinx3-link.patch 
	sphinx3-python.patch sphinx3-string.patch 
Log Message:
Initial import into F-11.



--- NEW FILE cmusphinx3.spec ---
%{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}

Name:           cmusphinx3
Version:        0.8
Release:        3%{?dist}
Summary:        Large vocabulary speech recognition in C

Group:          Applications/Multimedia
License:        BSD
URL:            http://www.cmusphinx.org/
Source0:        http://downloads.sourceforge.net/cmusphinx/sphinx3/%{version}/sphinx3-%{version}.zip
# This patch was sent upstream on 2009 Aug 26, and has been applied.  It fixes
# several cases of missing prototypes for functions declared in string.h
# (strcpy, memset, etc.)
Patch0:         sphinx3-string.patch
# This patch was sent upstream on 2009 Aug 26, and has been applied.  It fixes
# a number of broken links and unescaped special characters in the doxygen
# source.
Patch1:         sphinx3-doxygen.patch
# This patch has not been sent upstream, because it is specific to a Fedora
# build environment.  It fixes a Python include path.
Patch2:         sphinx3-python.patch
# This patch has not been sent upstream, because it is specific to the way we
# build shared libraries in Fedora.  It adds a link necessary to avoid
# undefined weak symbols in one library.
Patch3:         sphinx3-link.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

BuildRequires:  alsa-lib-devel, doxygen, pkgconfig
BuildRequires:  python-devel, sphinxbase-devel

%description
Sphinx-3 is CMU's state-of-the-art large vocabulary speech recognition system.
It uses Hidden Markov Models (HMM) with continuous output probability density
functions (PDF).  It supports several modes of operation.  The more accurate
mode, known as the "flat decoder", is descended from the original Sphinx-3
release.  The faster mode, known as the "tree decoder", was developed
separately.  The two decoders were merged in Sphinx 3.5, though the flat
decoder was not fully functional until Sphinx 3.7.

%package devel
Summary:        Header files for developing with cmusphinx3
Group:          Applications/Multimedia
Requires:       %{name}-libs = %{version}-%{release}, pkgconfig
Requires:       sphinxbase-devel

%description devel
Header files for developing with cmusphinx3.

%package libs
Summary:        Shared libraries for cmusphinx3 executables
Group:          Applications/Multimedia

%description libs
Shared libraries for cmusphinx3 executables.

%package python
Summary:        Python interface to cmusphinx3
Group:          Applications/Multimedia
Requires:       %{name}-libs = %{version}-%{release}, sphinxbase-python

%description python
Python interface to cmusphinx3.

%package doc
Summary:        Doxygen documentation for cmusphinx3
Group:          Documentation
Requires:       %{name}-libs = %{version}-%{release}

%description doc
Doxygen documentation for cmusphinx3.

%prep
%setup -q -n sphinx3-%{version}
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1

# Remove executable bits from the documentation
find doc -type f | xargs chmod a-x

# Dispose of version control files in the documentation
rm -fr doc/images/.svn doc/s3/.svn doc/s3-2_files/.svn

# Convert the encoding of one file
cd doc/s3-2_files
iconv -f WINDOWS-1252 -t UTF-8 master03_stylesheet.css > x.css
touch -r master03_stylesheet.css x.css
mv -f x.css master03_stylesheet.css

%build
%configure --disable-dependency-tracking --disable-static

# Get rid of undesirable hardcoded runpaths
sed -i -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \
       -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' \
    libtool

# Build the C code and its documentation
make %{?_smp_mflags}
make doxygen

# Build the Python interface
cd python
python setup.py build

%install
rm -rf $RPM_BUILD_ROOT

# Install the libraries, programs, and scripts
make install DESTDIR=$RPM_BUILD_ROOT

# Install the Python egg
mkdir -p $RPM_BUILD_ROOT%{python_sitearch}
cd python
python setup.py install --skip-build --root $RPM_BUILD_ROOT

# Get rid of files we don't want packaged
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
rm -fr $RPM_BUILD_ROOT%{_datadir}/sphinx3/doc
rm -f doc/images/Makefile doc/s3/*.fig

%clean
rm -rf $RPM_BUILD_ROOT

%post libs -p /sbin/ldconfig

%postun libs -p /sbin/ldconfig

%files
%defattr(-,root,root,-)
%doc AUTHORS ChangeLog COPYING NEWS README
%{_bindir}/*
%{_datadir}/sphinx3

%files devel
%defattr(-,root,root,-)
%{_includedir}/sphinx3
%{_libdir}/libs3decoder.so
%{_libdir}/pkgconfig/sphinx3.pc

%files libs
%defattr(-,root,root,-)
%{_libdir}/libs3decoder.so.*

%files python
%defattr(-,root,root,-)
%{python_sitearch}/Sphinx3*.egg-info
%{python_sitearch}/_sphinx3.so

%files doc
%defattr(-,root,root,-)
%doc doc/images doc/s3 doc/s3-2_files doc/*.doc doc/*.htm* doc/*.pdf doc/*.ppt
%doc doc/*.txt doc/sphinx3.4.code.tracing doc/sphinx3.5_refactoring.note html

%changelog
* Fri Sep 18 2009 Jerry James <loganjerry at gmail.com> - 0.8-3
- Drop unnecessary BRs
- Preserve timestamp on iconv'd file

* Tue Sep 15 2009 Jerry James <loganjerry at gmail.com> - 0.8-2
- Fix issues raised in review

* Wed Aug 26 2009 Jerry James <loganjerry at gmail.com> - 0.8-1
- Initial RPM

sphinx3-doxygen.patch:
 include/ascr.h                                      |   10 ++--
 include/confidence.h                                |    2 
 include/cont_mgau.h                                 |   23 +++++----
 include/corpus.h                                    |    2 
 include/ctxt_table.h                                |    2 
 include/dag.h                                       |    8 +--
 include/dict.h                                      |    4 -
 include/dict2pid.h                                  |    4 -
 include/fast_algo_struct.h                          |    2 
 include/fillpen.h                                   |    8 +--
 include/gmm_wrap.h                                  |   10 ++--
 include/interp.h                                    |    2 
 include/lextree.h                                   |    2 
 include/lm.h                                        |   48 ++++++++++----------
 include/lmclass.h                                   |   12 ++---
 include/mdef.h                                      |   12 ++---
 include/ms_gauden.h                                 |   10 ++--
 include/ms_mllr.h                                   |    8 +--
 include/ms_senone.h                                 |   10 ++--
 include/s3_cfg.h                                    |    4 -
 include/s3_decode.h                                 |   43 +++++++++--------
 include/srch_output.h                               |    2 
 include/srch_word_switch_tree.h                     |    2 
 include/subvq.h                                     |   18 +++----
 include/tmat.h                                      |    6 +-
 include/vector.h                                    |   22 ++++-----
 include/vithist.h                                   |   10 ++--
 include/wid.h                                       |    4 -
 src/libs3decoder/libsearch/srch_flat_fwd_internal.h |    8 +--
 src/programs/main_decode.c                          |    2 
 src/programs/main_gausubvq.c                        |    2 
 src/programs/s3_align.c                             |    6 +-
 32 files changed, 155 insertions(+), 153 deletions(-)

--- NEW FILE sphinx3-doxygen.patch ---
diff -dur sphinx3-0.8.ORIG/include/ascr.h sphinx3-0.8/include/ascr.h
--- sphinx3-0.8.ORIG/include/ascr.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/ascr.h	2009-08-26 12:45:02.689957552 -0600
@@ -121,12 +121,12 @@
  * @return Pointer to created structure if successful, NULL otherwise.
  */
 S3DECODER_EXPORT
-ascr_t *ascr_init (int32 n_sen,		/**< Input: #Ordinary senones */
-		   int32 n_comsen,	/**< Input: #Composite senones */
-		   int32 n_sseq,        /**< Input: # of senone sequences */ 
-		   int32 n_comsseq,     /**< Input: # of composite senone sequences */ 
+ascr_t *ascr_init (int32 n_sen,		/**< Input: \#Ordinary senones */
+		   int32 n_comsen,	/**< Input: \#Composite senones */
+		   int32 n_sseq,        /**< Input: \# of senone sequences */ 
+		   int32 n_comsseq,     /**< Input: \# of composite senone sequences */ 
 		   int32 pl_win,        /**< Input: size of phoneme lookahead windows */
-		   int32 n_cisen        /**< Input: # of CI senones */
+		   int32 n_cisen        /**< Input: \# of CI senones */
     );
 
 /**
diff -dur sphinx3-0.8.ORIG/include/confidence.h sphinx3-0.8/include/confidence.h
--- sphinx3-0.8.ORIG/include/confidence.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/confidence.h	2009-08-26 12:45:02.689957552 -0600
@@ -85,7 +85,7 @@
 #endif
 
 /**
-   \struct structure specific for node of DAG for confidence
+   structure specific for node of DAG for confidence
    annotation.
    
 */
diff -dur sphinx3-0.8.ORIG/include/cont_mgau.h sphinx3-0.8/include/cont_mgau.h
--- sphinx3-0.8.ORIG/include/cont_mgau.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/cont_mgau.h	2009-08-26 12:45:20.192010034 -0600
@@ -169,7 +169,7 @@
  * \brief A single mixture-Gaussian model for one senone (see above comment).
  */
 typedef struct {
-    int32 n_comp;	/**< #Component Gaussians in this mixture.  NOTE: May be 0 (for the
+    int32 n_comp;	/**< \#Component Gaussians in this mixture.  NOTE: May be 0 (for the
 			   untrained states). */
 
     int32 bstidx;         /**< Index for the most likely Gaussians in this mixture of component. It persists through time. */ 
@@ -205,7 +205,7 @@
  * \brief The set of mixture-Gaussians in an acoustic model used in Sphinx 3.X family of tool
  */
 typedef struct {
-    int32 n_mgau;	/**< #Mixture Gaussians in this model (i.e., #senones) */
+    int32 n_mgau;	/**< \#Mixture Gaussians in this model (i.e., \#senones) */
     int32 max_comp;	/**< Max components in any mixture */
     int32 veclen;	/**< Vector length of the Gaussian density means (and diagonal vars) */
     mgau_t *mgau;	/**< The n_mgau mixture Gaussians */
@@ -215,10 +215,10 @@
     int32 verbose;    /**< Whether to display information */
 
     /* Used only in the flat lexicon decoder, statistics */
-    int32 frm_sen_eval;		/**< #Senones evaluated in the most recent frame */
-    int32 frm_gau_eval;		/**< #Gaussian densities evaluated in the most recent frame */
-    int32 frm_ci_sen_eval;        /**< #CI Senones evaluated in most recent frame*/
-    int32 frm_ci_gau_eval;        /**< #CI Senones evaluated in most recent frame*/
+    int32 frm_sen_eval;		/**< \#Senones evaluated in the most recent frame */
+    int32 frm_gau_eval;		/**< \#Gaussian densities evaluated in the most recent frame */
+    int32 frm_ci_sen_eval;        /**< \#CI Senones evaluated in most recent frame*/
+    int32 frm_ci_gau_eval;        /**< \#CI Senones evaluated in most recent frame*/
 
     int32 gau_type; /**< gau_type=CONTHMM if it is fully continous HMM, 
                        gau_type=SEMIHMM if it is semi continous HMM. Currently SEMIHMM is not supported. */
@@ -248,9 +248,9 @@
     Number of senones evaluated in this frame
     \def mgau_frm_gau_eval
     Number of gaussians evaluated in this frame
-    \def mgau_frm_ci_sen_eval
+    \def mgau_frm_cisen_eval
     Number of CI senones evaluated in this frame
-    \def mgau_frm_ci_gau_eval
+    \def mgau_frm_cigau_eval
     Number of CI gaussians evaluated in this frame
 
 */
@@ -326,15 +326,16 @@
     );		
 
 /**
- * Like mgau_eval, but return the scores of the individual components, instead of combining
+ * Like mgau_eval(), but return the scores of the individual components, instead of combining
  * them into a senone score.  
  * @return: Best component score.
  */
 S3DECODER_EXPORT
 int32 mgau_comp_eval (mgau_model_t *g,	/**< In: Set of mixture Gaussians */
-		      int32 m,		/**< In: Mixture being considered */
+		      int32 s,		/**< In: Mixture being considered */
 		      float32 *x,	/**< In: Input vector being compared to the components */
-		      int32 *score);	/**< Out: Array of scores for each component */
+		      int32 *score	/**< Out: Array of scores for each component */
+    );
 
 /**
  * A routine that dump all mean and variance parameters of a set of gaussian distribution.   
diff -dur sphinx3-0.8.ORIG/include/corpus.h sphinx3-0.8/include/corpus.h
--- sphinx3-0.8.ORIG/include/corpus.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/corpus.h	2009-08-26 12:45:02.691987630 -0600
@@ -168,7 +168,7 @@
  */
 typedef struct {
     hash_table_t *ht;	/**< Hash table for IDs; CASE-SENSITIVE */
-    int32 n;		/**< #IDs (and corresponding argument strings) in the corpus */
+    int32 n;		/**< \#IDs (and corresponding argument strings) in the corpus */
     char **str;		/**< The argument strings */
 } corpus_t;
 
diff -dur sphinx3-0.8.ORIG/include/ctxt_table.h sphinx3-0.8/include/ctxt_table.h
--- sphinx3-0.8.ORIG/include/ctxt_table.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/ctxt_table.h	2009-08-26 12:45:02.692970928 -0600
@@ -111,7 +111,7 @@
 typedef struct {
     s3ssid_t  *ssid;	/**< Senone Sequence ID list for all context ciphones */
     s3cipid_t *cimap;	/**< Index into ssid[] above for each ci phone */
-    int32     n_ssid;	/**< #Unique ssid in above, compressed ssid list */
+    int32     n_ssid;	/**< \#Unique ssid in above, compressed ssid list */
 } xwdssid_t;
 
 
diff -dur sphinx3-0.8.ORIG/include/dag.h sphinx3-0.8/include/dag.h
--- sphinx3-0.8.ORIG/include/dag.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/dag.h	2009-08-26 12:45:02.693953379 -0600
@@ -203,10 +203,10 @@
 */
 typedef struct {
     dagnode_t *list;		/**< Linear list of nodes allocated */
-    dagnode_t *root;            /**< Corresponding to the node of (<s>,0)  */
-    dagnode_t *end;             /**< Final node (</s>,nfrm) */
+    dagnode_t *root;            /**< Corresponding to the node of (\<s\>,0)  */
+    dagnode_t *end;             /**< Final node (\</s\>,nfrm) */
 
-    daglink_t entry;		/**< Entering (<s>,0) */
+    daglink_t entry;		/**< Entering (\<s\>,0) */
     daglink_t final;            /**< Exit link from final DAG node */
 
     s3wid_t orig_exitwid;	/**< If original exit node is not a filler word */
@@ -220,7 +220,7 @@
                                    parts of the dag code will exceed the maximum no of edge 
                                 */
 
-    int32 lmop;		        /**< (Temporary Variable): #LM ops actually made */
+    int32 lmop;		        /**< (Temporary Variable): \#LM ops actually made */
     int32 maxlmop;		/**< Max LM ops allowed before utterance aborted 
 				 */
 
diff -dur sphinx3-0.8.ORIG/include/dict2pid.h sphinx3-0.8/include/dict2pid.h
--- sphinx3-0.8.ORIG/include/dict2pid.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/dict2pid.h	2009-08-26 12:45:02.694986001 -0600
@@ -221,8 +221,8 @@
 				   composite phone (composite sseq). */
     int32 *comwt;		/**< Weight associated with each composite state (logs3 value).
 				   Final composite state score weighted by this amount */
-    int32 n_comstate;		/**< #Composite states */
-    int32 n_comsseq;		/**< #Composite senone sequences */
+    int32 n_comstate;		/**< \#Composite states */
+    int32 n_comsseq;		/**< \#Composite senone sequences */
     int32 n_ci;   /**< Number of CI phone in */
     int32 n_dictsize; /**< Dictionary size */
 
diff -dur sphinx3-0.8.ORIG/include/dict.h sphinx3-0.8/include/dict.h
--- sphinx3-0.8.ORIG/include/dict.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/dict.h	2009-08-26 12:45:02.694986001 -0600
@@ -150,8 +150,8 @@
     int32 n_ciphone;	/**< Used only if CI phones handled internally (mdef == NULL) */
     dictword_t *word;	/**< Array of entries in dictionary */
     hash_table_t *ht;	/**< Hash table for mapping word strings to word ids */
-    int32 max_words;	/**< #Entries allocated in dict, including empty slots */
-    int32 n_word;	/**< #Occupied entries in dict; ie, excluding empty slots */
+    int32 max_words;	/**< \#Entries allocated in dict, including empty slots */
+    int32 n_word;	/**< \#Occupied entries in dict; ie, excluding empty slots */
     int32 filler_start;	/**< First filler word id (read from filler dict) */
     int32 filler_end;	/**< Last filler word id (read from filler dict) */
     s3wid_t *comp_head;	/**< comp_head[w] = wid of a compound word with 1st component = w;
diff -dur sphinx3-0.8.ORIG/include/fast_algo_struct.h sphinx3-0.8/include/fast_algo_struct.h
--- sphinx3-0.8.ORIG/include/fast_algo_struct.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/fast_algo_struct.h	2009-08-26 12:45:02.696274894 -0600
@@ -193,7 +193,7 @@
     int32 maxhmmpf;        /**< Max active HMMs per frame*/
     int32 hmm_hist_binsize;/**< Hmm histogram bin size */
     int32 hmm_hist_bins;   /**< Number of histogram bins*/
-    int32 *hmm_hist;	   /**< Histogram: #frames in which a given no. of HMMs are active */
+    int32 *hmm_hist;	   /**< Histogram: \#frames in which a given no. of HMMs are active */
     
 } histprune_t;
 
diff -dur sphinx3-0.8.ORIG/include/fillpen.h sphinx3-0.8/include/fillpen.h
--- sphinx3-0.8.ORIG/include/fillpen.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/fillpen.h	2009-08-26 12:45:02.697279436 -0600
@@ -115,10 +115,10 @@
  * Initialize filler probabilities (penalties, whatever) module and return a pointer to the
  * structure created.  Filler word probabilities are simple unigram probabilities.  Here is an
  * example of such a file (one entry per line; a word and a probability):
- *   <sil>  0.10792
- *   <uh>   0.00866
- *   <um>   0.00147
- * If the first character in a line is a '#', the line is treated as a comment and ignored.
+ *   \<sil\>  0.10792
+ *   \<uh\>   0.00866
+ *   \<um\>   0.00147
+ * If the first character in a line is a '\#', the line is treated as a comment and ignored.
  * If no filler probabilities file is provided, the silence word gets silprob, and all other
  * filler words get fillprob.  As with the trigram LM, the resulting log-probabilities are
  * multiplied by a language weight and finally a word insertion penalty is tacked on.
diff -dur sphinx3-0.8.ORIG/include/gmm_wrap.h sphinx3-0.8/include/gmm_wrap.h
--- sphinx3-0.8.ORIG/include/gmm_wrap.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/gmm_wrap.h	2009-08-26 12:45:02.697279436 -0600
@@ -108,7 +108,7 @@
 */
 int32 approx_cd_gmm_compute_sen(
     void *srch, /**< a pointer to a srch_t */
-    float32 **feat, /**< feature vector #stream x #coeff*/
+    float32 **feat, /**< feature vector \#stream x \#coeff*/
     int32 wav_idx  /**< frame index */
     );
 
@@ -120,7 +120,7 @@
 
 int32 ms_cd_gmm_compute_sen_comp(
     void *srch,   /**< a pointer to a srch_t */
-    float32 **feat,  /**< feature vector #stream x #coeff*/
+    float32 **feat,  /**< feature vector \#stream x \#coeff*/
     int32 wav_idx    /**< frame index */
     );
 
@@ -131,7 +131,7 @@
 
 int32 ms_cd_gmm_compute_sen(
     void *srch,   /**< a pointer to a srch_t */
-    float32 **feat,  /**< feature vector #stream x #coeff*/
+    float32 **feat,  /**< feature vector \#stream x \#coeff*/
     int32 wav_idx    /**< frame index */
     );
 
@@ -146,7 +146,7 @@
 
 int32 s3_cd_gmm_compute_sen_comp(
     void *srch,   /**< a pointer to a srch_t */
-    float32 **feat,  /**< feature vector #stream x #coeff*/
+    float32 **feat,  /**< feature vector \#stream x \#coeff*/
     int32 wav_idx    /**< frame index */
 
     );
@@ -163,7 +163,7 @@
 
 int32 s3_cd_gmm_compute_sen(
     void *srch,   /**< a pointer to a srch_t */
-    float32 **feat,  /**< feature vector #stream x #coeff*/
+    float32 **feat,  /**< feature vector \#stream x \#coeff*/
     int32 wav_idx    /**< frame index */
     );
 
diff -dur sphinx3-0.8.ORIG/include/interp.h sphinx3-0.8/include/interp.h
--- sphinx3-0.8.ORIG/include/interp.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/interp.h	2009-08-26 12:45:02.698235093 -0600
@@ -101,7 +101,7 @@
  */
 typedef struct {
     logmath_t *logmath;
-    int32 n_sen;	/**< #senones */
+    int32 n_sen;	/**< \#senones */
 
     /**
      * \struct interp_wt_s
diff -dur sphinx3-0.8.ORIG/include/lextree.h sphinx3-0.8/include/lextree.h
--- sphinx3-0.8.ORIG/include/lextree.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/lextree.h	2009-08-26 12:45:02.699266386 -0600
@@ -152,7 +152,7 @@
  * A lextree can be built for a specific history (e.g., for all bigram successors of a given
  * word or trigram successors of a word-pair in a given LM).  The history provides a set of left
  * context CIphones (if the final history word has multiple pronunciations; and there is always
- * <sil>).
+ * \<sil\>).
  * A lextree is usually a set of trees, one for each distinct root model for the given set of
  * words.  Furthermore, the root node of each tree can itself actually be a SET of nodes,
  * required by the different left contexts.  If there is no history (i.e., the unigram lextree),
diff -dur sphinx3-0.8.ORIG/include/lmclass.h sphinx3-0.8/include/lmclass.h
--- sphinx3-0.8.ORIG/include/lmclass.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/lmclass.h	2009-08-26 12:45:02.699949946 -0600
@@ -133,14 +133,14 @@
  * updated set.  Note that the input file can contain several class definitions.
  * File format:
  * 
- *    LMCLASS <classname1>
- * 	<word1> [<prob1>]
- * 	<word2> [<prob2>]
+ *    LMCLASS \<classname1\>
+ * 	\<word1\> [\<prob1\>]
+ * 	\<word2\> [\<prob2\>]
  * 	... (each word, and its associated probability, in one line)
- *    END <classname1>
- *    LMCLASS <classname2>
+ *    END \<classname1\>
+ *    LMCLASS \<classname2\>
  *      ...
- *    END <classname2>
+ *    END \<classname2\>
  *    ... (as many classes as desired)
  * 
  * By convention, classname strings begin and end with [ and ] (Roni Rosenfeld).
diff -dur sphinx3-0.8.ORIG/include/lm.h sphinx3-0.8/include/lm.h
--- sphinx3-0.8.ORIG/include/lm.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/lm.h	2009-08-26 12:45:02.701195066 -0600
@@ -448,7 +448,7 @@
 typedef struct tginfo_s {
     s3lmwid_t w1;		/**< w1 component of bigram w1,w2.  All bigrams with
 				   same w2 linked together. */
-    int32 n_tg;			/**< #tg for parent bigram w1,w2 */
+    int32 n_tg;			/**< \#tg for parent bigram w1,w2 */
     tg_t *tg;			/**< Trigrams for w1,w2 */
     int32 bowt;			/**< tg bowt for w1,w2 */
     int32 used;			/**< whether used since last lm_reset */
@@ -463,7 +463,7 @@
 typedef struct tginfo32_s {
     s3lmwid32_t w1;		/**< w1 component of bigram w1,w2.  All bigrams with
 				   same w2 linked together. */
-    int32 n_tg;			/**< #tg for parent bigram w1,w2 */
+    int32 n_tg;			/**< \#tg for parent bigram w1,w2 */
     tg32_t *tg32;			/**< Trigrams for w1,w2 */
     int32 bowt;			/**< tg bowt for w1,w2 */
     int32 used;			/**< whether used since last lm_reset */
@@ -558,9 +558,9 @@
  */
 typedef struct lm_s {
     char *name ;        /**< The name of the LM */
-    int32 n_ug;         /**< #unigrams in LM */
-    int32 n_bg;         /**< #bigrams in entire LM */
-    int32 n_tg;         /**< #trigrams in entire LM */
+    int32 n_ug;         /**< \#unigrams in LM */
+    int32 n_bg;         /**< \#bigrams in entire LM */
+    int32 n_tg;         /**< \#trigrams in entire LM */
     int32 max_ug;       /**< To which n_ug can grow with dynamic addition of words */
 
     int32 n_ng;           /**< if unigram, n_ng=1, if bigram n_bg=2 and so one */
@@ -625,15 +625,15 @@
     
     
     /* Statistics */
-    int32 n_bg_fill;    /**< #bg fill operations */
-    int32 n_bg_inmem;   /**< #bg in memory */
-    int32 n_bg_score;   /**< #bg_score operations */
-    int32 n_bg_bo;	/**< #bg_score ops backed off to ug */
+    int32 n_bg_fill;    /**< \#bg fill operations */
+    int32 n_bg_inmem;   /**< \#bg in memory */
+    int32 n_bg_score;   /**< \#bg_score operations */
+    int32 n_bg_bo;	/**< \#bg_score ops backed off to ug */
     int32 n_tg_fill;	/**< Similar stats for trigrams */
-    int32 n_tg_inmem;   /**< #tg in memory */
-    int32 n_tg_score;   /**< #tg_score operations */
-    int32 n_tg_bo;      /**< #tg_score ops backed off to bg */
-    int32 n_tgcache_hit;  /**< # of trigram cache hit ops backed off to bg */
+    int32 n_tg_inmem;   /**< \#tg in memory */
+    int32 n_tg_score;   /**< \#tg_score operations */
+    int32 n_tg_bo;      /**< \#tg_score ops backed off to bg */
+    int32 n_tgcache_hit;  /**< \# of trigram cache hit ops backed off to bg */
     
     int32 access_type;	/**< Updated on every lm_{tg,bg,ug}_score call to reflect the kind of
                            n-gram accessed: 3 for 3-gram, 2 for 2-gram and 1 for 1-gram */
@@ -649,7 +649,7 @@
   
     /* Data structure that maintains the class information */
     lmclass_t **lmclass;   /**< LM class for this LM */
-    int32 n_lmclass;      /**< # LM class */
+    int32 n_lmclass;      /**< \# LM class */
     int32 *inclass_ugscore; /**< An array of inter-class unigram probability */
 
 
@@ -876,7 +876,7 @@
 
 /**
  * Return trigram followers for given two words.  Both w1 and w2 must be valid.
- * Return value: #trigrams in returned list.
+ * Return value: \#trigrams in returned list.
  */
 int32 lm_tglist (lm_t *lmp,	/**< In: LM being queried */
 		 s3lmwid32_t w1,	/**< In: LM word id of the first of a 2-word history */
@@ -894,7 +894,7 @@
 
 /**
  * Return the bigram followers for the given word w.
- * Return value: #bigrams in returned list.
+ * Return value: \#bigrams in returned list.
  */
 int32 lm_bglist (lm_t *lmp,	/**< In: LM being queried */
 		 s3lmwid32_t w,	/**< In: LM word id of the 1-word history */
@@ -915,7 +915,7 @@
  * of simply returning the bglist.  The wordprob array contains dictionary word IDs.  But note
  * that only the base IDs are entered; the caller is responsible for filling out the alternative
  * pronunciations.
- * Return value:  #entries filled in the wordprob array.
+ * Return value:  \#entries filled in the wordprob array.
  */
 int32 lm_bg_wordprob(lm_t *lm,		/**< In: LM being queried */
 		     s3lmwid32_t w,	/**< In: LM word ID of the 1-word history */
@@ -938,7 +938,7 @@
 
 /**
  * Like lm_bg_wordprob, but for unigrams.
- * Return value:  #entries filled in the wordprob array.
+ * Return value:  \#entries filled in the wordprob array.
  */
 int32 lm_ug_wordprob(lm_t *lm, /**< In: LM being queried */
 		     dict_t *dict, /**< In : The dictionary */
@@ -946,7 +946,7 @@
 		     wordprob_t *wp /**< In/out: Array to be filled */
     );
 
-/** Return the unigrams in LM.  Return value: #unigrams in returned list. */
+/** Return the unigrams in LM.  Return value: \#unigrams in returned list. */
 int32 lm_uglist (lm_t *lmp,	/**< In: LM being queried */
 		 ug_t **ug	/**< Out: *ug = unigram array */
     );
@@ -1157,7 +1157,7 @@
    x: not supported yet
    y: supported
 
-   i\o 0 1 2
+   i\\o 0 1 2
    0 - n n
    1 n - y
    2 n x -
@@ -1190,10 +1190,10 @@
    Add word list to the LM 
    For each word in the file, call lm_add_wordlist. 
    The file is assume to have a format like this:
-   <word1> 
-   <word2>
-   <word3>
-   <word4>
+   \<word1\> 
+   \<word2\>
+   \<word3\>
+   \<word4\>
      
    If the lmwid2dictid mapping is not updated, or the dictionary
    itself is not used in the context.  Just specify dict=NULL;
diff -dur sphinx3-0.8.ORIG/include/mdef.h sphinx3-0.8/include/mdef.h
--- sphinx3-0.8.ORIG/include/mdef.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/mdef.h	2009-08-26 12:45:02.702266353 -0600
@@ -182,12 +182,12 @@
    \brief strcture for storing the model definition. 
 */
 typedef struct {
-    int32 n_ciphone;		/**< #basephones actually present */
-    int32 n_phone;		/**< #basephones + #triphones actually present */
-    int32 n_emit_state;		/**< #emitting states per phone */
-    int32 n_ci_sen;		/**< #CI senones; these are the first */
-    int32 n_sen;		/**< #senones (CI+CD) */
-    int32 n_tmat;		/**< #transition matrices */
+    int32 n_ciphone;		/**< \#basephones actually present */
+    int32 n_phone;		/**< \#basephones + \#triphones actually present */
+    int32 n_emit_state;		/**< \#emitting states per phone */
+    int32 n_ci_sen;		/**< \#CI senones; these are the first */
+    int32 n_sen;		/**< \#senones (CI+CD) */
+    int32 n_tmat;		/**< \#transition matrices */
     
     hash_table_t *ciphone_ht;	/**< Hash table for mapping ciphone strings to ids */
     ciphone_t *ciphone;		/**< CI-phone information for all ciphones */
diff -dur sphinx3-0.8.ORIG/include/ms_gauden.h sphinx3-0.8/include/ms_gauden.h
--- sphinx3-0.8.ORIG/include/ms_gauden.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/ms_gauden.h	2009-08-26 12:45:02.702266353 -0600
@@ -139,9 +139,9 @@
     vector_t ***var;	/**< like mean; diagonal covariance vector only */
     float32 ***det;	/**< log(determinant) for each variance vector;
 			   actually, log(sqrt(2*pi*det)) */
-    int32 n_mgau;	/**< #codebooks */
-    int32 n_feat;	/**< #feature streams in each codebook */
-    int32 n_density;	/**< #gaussian densities in each codebook-feature stream */
+    int32 n_mgau;	/**< \#codebooks */
+    int32 n_feat;	/**< \#feature streams in each codebook */
+    int32 n_density;	/**< \#gaussian densities in each codebook-feature stream */
     int32 *featlen;	/**< feature length for each feature */
 } gauden_t;
 
@@ -193,7 +193,7 @@
 gauden_dist (gauden_t *g,	/**< In: handle to entire ensemble of codebooks */
 	     s3mgauid_t mgau,	/**< In: codebook for which density values to be evaluated
 				   (g->{mean,var}[mgau]) */
-	     int32 n_top,	/**< In: #top densities to be evaluated */
+	     int32 n_top,	/**< In: \#top densities to be evaluated */
 	     vector_t *obs,	/**< In: Observation vector; obs[f] = for feature f */
 	     gauden_dist_t **out_dist
 	     /**< Out: n_top best codewords and density values,
@@ -213,7 +213,7 @@
  */
 int32
 gauden_dist_norm (gauden_t *g,		/**< In: handle to all collection of codebooks */
-		  int32 n_top,		/**< In: #density values computed per feature */
+		  int32 n_top,		/**< In: \#density values computed per feature */
 		  gauden_dist_t ***dist,/**< In/Out: n_top density indices and values for
 					   each feature.  On return, density values are
 					   normalized. */
diff -dur sphinx3-0.8.ORIG/include/ms_mllr.h sphinx3-0.8/include/ms_mllr.h
--- sphinx3-0.8.ORIG/include/ms_mllr.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/ms_mllr.h	2009-08-26 12:45:02.703328150 -0600
@@ -97,7 +97,7 @@
 			   float32 *****A,		/**< Out: [*A][stream][nclass][streamlen][streamlen] */
 			   float32 ****B,		/**< Out: [*B][stream][nclass][streamlen] */
 			   int32 *streamlen,	/**< In: Dimension of each feature stream */
-			   int32 n_stream,	/**< In: #Feature streams */
+			   int32 n_stream,	/**< In: \#Feature streams */
 			   int32 *nclass	/**< Out: number of classes */
     );
 
@@ -107,7 +107,7 @@
  */
 int32 ms_mllr_free_regmat (float32 ****A,	/**< In: A[stream][nclass][streamlen][streamlen] */
 			   float32 ***B,	/**< In: B[stream][nclass][streamlen] */
-			   int32 n_stream	/**< In: #Feature streams */
+			   int32 n_stream	/**< In: \#Feature streams */
     );
 
 /**
@@ -116,11 +116,11 @@
  */
 int32 ms_mllr_norm_mgau (float32 ***mean,	/**<< In/Out: Set of vectors to be transformed:
 						   mean[stream][density] */
-			 int32 n_density,	/**< In: #densities in above mean matrix */
+			 int32 n_density,	/**< In: \#densities in above mean matrix */
 			 float32 ****A,	/**< In: "matrix" portion of regression matrix */
 			 float32 ***B,	/**< In: "vector" portion of regression matrix */
 			 int32 *streamlen,	/**< In: Dimension of each feature stream */
-			 int32 n_stream,	/**< In: #Feature streams */
+			 int32 n_stream,	/**< In: \#Feature streams */
 			 int32 _class	/**< In: number of classes */
     );
 
diff -dur sphinx3-0.8.ORIG/include/ms_senone.h sphinx3-0.8/include/ms_senone.h
--- sphinx3-0.8.ORIG/include/ms_senone.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/ms_senone.h	2009-08-26 12:45:02.704256679 -0600
@@ -147,10 +147,10 @@
                                    evaluating the many codebooks will be more costly.
                                    if (n_gauden == 1): pdf[feat][codeword][sen].  Optimized
                                    for the shared-distribution semi-continuous case. */
-    int32 n_sen;		/**< #senones in this set */
-    int32 n_feat;		/**< #feature streams */ 
-    int32 n_cw;			/**< #codewords per codebook,stream */
-    int32 n_gauden;		/**< #gaussian density codebooks referred to by senones */
+    int32 n_sen;		/**< \#senones in this set */
+    int32 n_feat;		/**< \#feature streams */ 
+    int32 n_cw;			/**< \#codewords per codebook,stream */
+    int32 n_gauden;		/**< \#gaussian density codebooks referred to by senones */
     float32 mixwfloor;		/**< floor applied to each PDF entry */
     int32 shift;		/**< LSB bits truncated from original logs3 value */
     s3mgauid_t *mgau;		/**< senone-id -> mgau-id mapping for senones in this set */
@@ -189,7 +189,7 @@
 
 /**
  * Like senone_eval, but compute all senone scores for the shared density case (ie,
- * #codebooks = 1).
+ * \#codebooks = 1).
  */
 void senone_eval_all (senone_t *s,		/**< In: Senone structure */
 		      gauden_dist_t **dist,	/**< In: as in senone_eval above */
diff -dur sphinx3-0.8.ORIG/include/s3_cfg.h sphinx3-0.8/include/s3_cfg.h
--- sphinx3-0.8.ORIG/include/s3_cfg.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/s3_cfg.h	2009-08-26 12:45:02.705131259 -0600
@@ -353,8 +353,8 @@
    already exist, assign it a new id.
 
    @param _cfg A CFG parser.
-   @param _id A term id.
-   @return A string representation of the term.
+   @param _item A term string representation.
+   @return A term id.
  */
 s3_cfg_id_t
 s3_cfg_str2id(s3_cfg_t *_cfg, char *_item);
diff -dur sphinx3-0.8.ORIG/include/s3_decode.h sphinx3-0.8/include/s3_decode.h
--- sphinx3-0.8.ORIG/include/s3_decode.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/s3_decode.h	2009-08-26 12:45:02.706327239 -0600
@@ -122,7 +122,7 @@
 #ifndef __S3_DECODE_H
 #define __S3_DECODE_H
 
-/** \file live_decode_API.h
+/** \file s3_decode.h
  * \brief header for live mode decoding API 
  */
 #ifdef __cplusplus
@@ -230,8 +230,8 @@
     <I>cmd_ln_parse_file_r()</I>.  The user is responsible for calling
     <I>cmd_ln_free_r()</I> when he/she is done with the decoder.
 
-    @param decoder Pointer to the decoder.
-    @param config Pointer to the command-line object
+    @param _decode Pointer to the decoder.
+    @param _config Pointer to the command-line object
                   returned by <i>cmd_ln_parse_r()</i>.
     @return 0 for success.  -1 for failure.
 */
@@ -243,7 +243,7 @@
     function should be called once the user is finished with the Sphinx3
     decoder.
 
-    @param decoder Pointer to the decoder.
+    @param _decode Pointer to the decoder.
     @see s3_decode_init
 */
 S3DECODER_EXPORT
@@ -251,19 +251,19 @@
 
 /** Marks the start of the current utterance.  An utterance is a session of
     speech decoding that starts with a call to <I>s3_decode_begin_utt()</I> and
-    ends with a call to <I>{@link s3_decode_end_utt s3_decode_end_utt()}</I>.
+    ends with a call to <I>s3_decode_end_utt()</I>.
     In the duration of an utterance, speech data is processed with either
-    <I>{@link s3_decode_process_raw s3_decode_process_raw()}</I> or
-    <I>{@link s3_decode_process_ceps s3_decode_process_ceps()}</I>.  Decoding
+    <I>s3_decode_process_raw()</I> or
+    <I>s3_decode_process_ceps(}</I>.  Decoding
     results (hypothesis) can be retrieved any time after the start of an
-    utterance using <I>{@link s3_decode_hypothesis s3_decode_hypothesis()}</I>.
+    utterance using <I>s3_decode_hypothesis()</I>.
     All previous results will be clobbered at the start of a new utterance.
 
     At the moment, there is an undocumented time limit to the length of an
     utterance.  (Yitao: there is?)
 
-    @param decoder Pointer to the decoder.
-    @param uttid Utterance ID string.  If <I>null</I>, a somewhat unique 
+    @param _decode Pointer to the decoder.
+    @param _uttid Utterance ID string.  If <I>null</I>, a somewhat unique 
     utterance id will be generated instead.
     @return 0 for success.  -1 for failure.
     @see s3_decode_end_utt
@@ -277,10 +277,10 @@
     process speech data until the start of the next utterance.  Any hypothesis
     retrieved prior to the end of the utterance is called a partial hypothesis.
     Any hypothesis retrieved after the end of the utterance is called the final
-    hypothesis.  See <I>{@link s3_decode_hypothesis s3_decode_hypothesis()}</I>
+    hypothesis.  See <I>s3_decode_hypothesis()</I>
     on how to retrieve hypothesis.
 
-    @param decoder Pointer to the decoder
+    @param _decode Pointer to the decoder
     @see s3_decode_begin_utt
     @see s3_decode_process
     @see s3_decode_hypothesis
@@ -290,17 +290,17 @@
 
 /** Process a buffer of cepstrum frames for the current utterance.  This 
     function has to be called in the duration of an utterance.  That is, in
-    between calls to <I>{@link s3_decode_begin_utt s3_decode_begin_utt()}</I>
-    and <I>{@link s3_decode_end_utt s3_decode_end_utt()}</I>.
+    between calls to <I>s3_decode_begin_utt()</I>
+    and <I>s3_decode_end_utt()</I>.
 
     One common issue with Sphinx3 decoder is the mismatch of parameters to
     the signal processor and accoustic model.  Please double check with the
     accoustic model training scripts and your signal processing front-end to
     make sure the cepstrals are generated consistently.
 
-    @param decoder Pointer to the decoder.
-    @param frames Buffer of audio feature frames.
-    @param num_frames Number of frames in the buffer.
+    @param _decode Pointer to the decoder.
+    @param _frames Buffer of audio feature frames.
+    @param _num_frames Number of frames in the buffer.
     @return 0 for success.  -1 for failure.
     @see s3_decode_begin_utt
     @see s3_decode_end_utt
@@ -338,10 +338,11 @@
     }
     </PRE>
     
-    @param decoder Pointer to the decoder.
-    @param hyp_str Return pointer to a READ-ONLY string.  If <I>null</I>,
+    @param _decode Pointer to the decoder.
+    @param _uttid Pointer to utterance ID string.
+    @param _hyp_str Return pointer to a READ-ONLY string.  If <I>null</I>,
     the string is not returned.
-    @param hyp_segs Return pointer to a null-terminated array of word
+    @param _hyp_segs Return pointer to a null-terminated array of word
     segments.  If <I>null</I>, the array is not returned.
     @return 0 for success.  -1 for failure.
 */
@@ -353,7 +354,7 @@
  * s3_decode_end_utt() before this.  See {@link dag.h} and {@link
  * astar.h} for information on what to do with this structure.
  *
- * @param decoder Pointer to the decoder.
+ * @param _decode Pointer to the decoder.
  * @return A dag_t structure, or NULL on failure.  This pointer
  * becomes invalid after a call to s3_decode_begin_utt().
  */
diff -dur sphinx3-0.8.ORIG/include/srch_output.h sphinx3-0.8/include/srch_output.h
--- sphinx3-0.8.ORIG/include/srch_output.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/srch_output.h	2009-08-26 12:45:02.706327239 -0600
@@ -176,7 +176,7 @@
 void log_hypseg (char *uttid,   /**< Input; uttid */
 		 FILE *fp,	/**< Out: output file */
 		 srch_hyp_t *hypptr,	/**< In: Hypothesis */
-		 int32 nfrm,	/**< In: #frames in utterance */
+		 int32 nfrm,	/**< In: \#frames in utterance */
 		 int32 scl,	/**< In: Acoustic scaling for entire utt */
 		 float64 lwf,	/**< In: LM score scale-factor (in dagsearch) */
 		 dict_t* dict,  /**< In: dictionary */
diff -dur sphinx3-0.8.ORIG/include/srch_word_switch_tree.h sphinx3-0.8/include/srch_word_switch_tree.h
--- sphinx3-0.8.ORIG/include/srch_word_switch_tree.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/srch_word_switch_tree.h	2009-08-26 12:45:02.707011056 -0600
@@ -130,7 +130,7 @@
 
 
     lextree_t **roottree;           /**< The pool of trees that stores all
-                                       word trees. An array with dimension. #lm*/
+                                       word trees. An array with dimension. \#lm*/
 
     hash_table_t *active_word;    /**< Hash table that map word end to the index of the expandtree. */
 
diff -dur sphinx3-0.8.ORIG/include/subvq.h sphinx3-0.8/include/subvq.h
--- sphinx3-0.8.ORIG/include/subvq.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/subvq.h	2009-08-26 12:45:02.707011056 -0600
@@ -112,10 +112,10 @@
  * \brief Wrapper structures of sub-vector quantization
  */
 typedef struct {
-    arraysize_t origsize;	/**< origsize.r = #codebooks (or states) in original model;
-				   origsize.c = max #codewords/codebook in original model. */
-    int32 n_sv;			/**< #Subvectors */
-    int32 vqsize;		/**< #Codewords in each subvector quantized mean/var table */
+    arraysize_t origsize;	/**< origsize.r = \#codebooks (or states) in original model;
+				   origsize.c = max \#codewords/codebook in original model. */
+    int32 n_sv;			/**< \#Subvectors */
+    int32 vqsize;		/**< \#Codewords in each subvector quantized mean/var table */
     int32 **featdim;		/**< featdim[s] = Original feature dimensions in subvector s */
     vector_gautbl_t *gautbl;	/**< Vector-quantized Gaussians table for each sub-vector */
     int32 ***map;		/**< map[i][j] = map from original codebook(i)/codeword(j) to
@@ -144,9 +144,9 @@
 
 /**
  * SubVQ file format:
- *   VQParam #Original-Codebooks #Original-Codewords/codebook(max) -> #Subvectors #VQ-codewords
- *   Subvector 0 length <length> <feature-dim> <feature-dim> <feature-dim> ...
- *   Subvector 1 length <length> <feature-dim> <feature-dim> <feature-dim> ...
+ *   VQParam \#Original-Codebooks \#Original-Codewords/codebook(max) -> \#Subvectors \#VQ-codewords
+ *   Subvector 0 length \<length\> \<feature-dim\> \<feature-dim\> \<feature-dim\> ...
+ *   Subvector 1 length \<length\> \<feature-dim\> \<feature-dim\> \<feature-dim\> ...
  *   ...
  *   Codebook 0
  *   Row 0 of mean/var values (interleaved) for subvector 0 codebook (in 1 line)
@@ -237,7 +237,7 @@
  */
 int32 subvq_mgau_shortlist (subvq_t *vq,        /**< In subvq */
 			    int32 m,	/**< In: GMM index */
-			    int32 n,	/**< In: #Components in specified mixture */
+			    int32 n,	/**< In: \#Components in specified mixture */
 			    int32 beam	/**< In: Threshold to select active components */
     );
 
@@ -250,7 +250,7 @@
 int32 subvq_mgau_eval (mgau_model_t *g, /**< In: Gaussian */
 		       subvq_t *vq, /**< In: the SVQ */
 		       int32 m, /**< In: GMM Index */
-		       int32 n, /**< In :#Components in a specified mixture */
+		       int32 n, /**< In :\#Components in a specified mixture */
 		       int32 *active /**< In:Active list of mixture */
     );
 
diff -dur sphinx3-0.8.ORIG/include/tmat.h sphinx3-0.8/include/tmat.h
--- sphinx3-0.8.ORIG/include/tmat.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/tmat.h	2009-08-26 12:45:02.708327341 -0600
@@ -114,9 +114,9 @@
     logmath_t *logmath;
     int32 ***tp;	/**< The transition matrices; int32 since probs in logs3 domain:
 			   tp[tmatid][from-state][to-state] */
-    int32 n_tmat;	/**< #matrices */
-    int32 n_state;	/**< #source states in matrix (only the emitting states);
-			   #destination states = n_state+1, it includes the exit state */
+    int32 n_tmat;	/**< \#matrices */
+    int32 n_state;	/**< \#source states in matrix (only the emitting states);
+			   \#destination states = n_state+1, it includes the exit state */
 } tmat_t;
 
 
diff -dur sphinx3-0.8.ORIG/include/vector.h sphinx3-0.8/include/vector.h
--- sphinx3-0.8.ORIG/include/vector.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/vector.h	2009-08-26 12:45:02.709225798 -0600
@@ -84,8 +84,8 @@
  * \brief wrapper of array size 
  */
 typedef struct {
-    int32 r;		/**< #rows, */
-    int32 c;		/**< #cols in an array */
+    int32 r;		/**< \#rows, */
+    int32 c;		/**< \#cols in an array */
 } arraysize_t;
 
 /** \struct point_t
@@ -187,7 +187,7 @@
 int32 vector_mean (float32 *mean,	/**< Out: Computed mean; caller should allocate
 					   this memory */
 		   float32 **data,	/**< In: Set of data over which mean is computed */
-		   int32 n_vec,		/**< In: #Vectors in data */
+		   int32 n_vec,		/**< In: \#Vectors in data */
 		   int32 n_dim	/**< In: Dimensionality of each vector (and mean) */
     );
 
@@ -241,14 +241,14 @@
  */
 S3DECODER_EXPORT
 float64 vector_vqgen (float32 **data,	/**< In: Input Data to be quantized */
-		      int32 rows,	/**< In: #Rows in input data */
-		      int32 cols,	/**< In: #Cols in input data (and output VQ table) */
-		      int32 vqrows,	/**< In: #Rows in vector quantized result */
+		      int32 rows,	/**< In: \#Rows in input data */
+		      int32 cols,	/**< In: \#Cols in input data (and output VQ table) */
+		      int32 vqrows,	/**< In: \#Rows in vector quantized result */
 		      float64 epsilon,	/**< In: Convergence limit; stop k-means iterations when
 					   the relative reduction in total squared error in
 					   successive iterations ((sqerr[t]-sqerr[t+1])/sqerr[t])
 					   is below this value. */
-		      int32 maxiter,	/**< In: Max #iterations, regardless of convlimit */
+		      int32 maxiter,	/**< In: Max \#iterations, regardless of convlimit */
 		      float32 **mean,	/**< Out: Vector quantized array of centroids.  Caller
 					   must allocate this array */
 		      int32 *map,       /**< Out: data->mean mapping; mean[map[i]] is the closest
@@ -269,8 +269,8 @@
  */
 int32 vector_vqlabel (float32 *vec,	/**< In: Vector to be compared against VQ table */
 		      float32 **mean,	/**< In: Table of centroids */
-		      int32 rows,	/**< In: #Rows in mean */
-		      int32 cols,	/**< In: #Cols in mean (and vec) */
+		      int32 rows,	/**< In: \#Rows in mean */
+		      int32 cols,	/**< In: \#Cols in mean (and vec) */
 		      float64 *sqerr	/**< Out: Squared error (distance) between vec and the
 					   selected codeword.  May be NULL if not needed. */
     );
@@ -296,7 +296,7 @@
  * only the diagonal is maintained, as a vector).
  */
 typedef struct {
-    int32 n_gau;	/**< #Gaussians in table */
+    int32 n_gau;	/**< \#Gaussians in table */
     int32 veclen;	/**< Vector length */
     float32 **mean;	/**< n_cw x veclen mean values */
     float32 **var;	/**< n_cw x veclen corresponding (diagonal) variance values */
@@ -338,7 +338,7 @@
 void
 vector_gautbl_eval_logs3 (vector_gautbl_t *gau,	/**< In: Table of Gaussians */
 			  int32 offset,	/**< In: First VQ codeword in the range to be evaluated */
-			  int32 count,	/**< In: #Codewords to be evaluated (range size) */
+			  int32 count,	/**< In: \#Codewords to be evaluated (range size) */
 			  float32 *x,	/**< In: Input vector being compared to codewords */
 			  int32 *scr,	/**< Out: Mahalanobis distance scores (logs3 values).
 					   Caller must allocate this array.  Note that only
diff -dur sphinx3-0.8.ORIG/include/vithist.h sphinx3-0.8/include/vithist.h
--- sphinx3-0.8.ORIG/include/vithist.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/vithist.h	2009-08-26 12:45:02.709225798 -0600
@@ -239,7 +239,7 @@
     vithist_entry_t **entry;	/**< entry[i][j]= j-th entry in the i-th block allocated */
     int32 *frame_start;		/**< For each frame, the first vithist ID in that frame; (the
                                    last is just before the first of the next frame) */
-    int32 n_entry;		/**< Total #entries used (generates global seq no. or ID) */
+    int32 n_entry;		/**< Total \#entries used (generates global seq no. or ID) */
     int32 n_frm;		/**< No. of frames processed so far in this utterance */
     int32 n_ci;                 /**< No. of CI phones */
     int32 bghist;		/**< If TRUE (bigram-mode) only one entry/word/frame; otherwise
@@ -301,8 +301,8 @@
 
 
 /**
- * Invoked at the beginning of each utterance; vithist initialized with a root <s> entry.
- * @return Vithist ID of the root <s> entry.
+ * Invoked at the beginning of each utterance; vithist initialized with a root \<s\> entry.
+ * @return Vithist ID of the root \<s\> entry.
  */
 int32 vithist_utt_begin (vithist_t *vh, /**< In: a Viterbi history data structure*/
 			 kbcore_t *kbc  /**< In: a KBcore */
@@ -310,8 +310,8 @@
 
 
 /**
- * Invoked at the end of each utterance; append a final </s> entry that results in the best
- * path score (i.e., LM including LM transition to </s>).
+ * Invoked at the end of each utterance; append a final \</s\> entry that results in the best
+ * path score (i.e., LM including LM transition to \</s\>).
  * Return the ID of the appended entry if successful, -ve if error (empty utterance).
  */
 int32 vithist_utt_end (vithist_t *vh, /**< In: a Viterbi history data structure*/
diff -dur sphinx3-0.8.ORIG/include/wid.h sphinx3-0.8/include/wid.h
--- sphinx3-0.8.ORIG/include/wid.h	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/include/wid.h	2009-08-26 12:45:02.710324924 -0600
@@ -95,14 +95,14 @@
 
 /**
  * Augment the given wordprob array with alternative pronunciations from the dictionary.
- * Return value: #entries in the augmented wordprob array (including the original ones).
+ * Return value: \#entries in the augmented wordprob array (including the original ones).
  */
 int32 wid_wordprob2alt (dict_t *dict,	/**< In: Dictionary */
 			wordprob_t *wp,	/**< In/Out: Input wordprob array, to be augmented with
 					   alternative pronunciations for the entries that
 					   already exist in it.  Caller must have allocated
 					   this array. */
-			int32 n	/**< In: #Input entries in the wordprob array */
+			int32 n	/**< In: \#Input entries in the wordprob array */
     );
 
 #if 0
diff -dur sphinx3-0.8.ORIG/src/libs3decoder/libsearch/srch_flat_fwd_internal.h sphinx3-0.8/src/libs3decoder/libsearch/srch_flat_fwd_internal.h
--- sphinx3-0.8.ORIG/src/libs3decoder/libsearch/srch_flat_fwd_internal.h	2008-12-31 11:27:56.000000000 -0700
+++ sphinx3-0.8/src/libs3decoder/libsearch/srch_flat_fwd_internal.h	2009-08-26 12:45:02.711326770 -0600
@@ -117,7 +117,7 @@
  * \struct backoff_t
  *
  * Backoff node when backing off all the way to unigrams.  Since each
- * word exits with #ciphones different scores (for so many different
+ * word exits with \#ciphones different scores (for so many different
  * right contexts), a separate node exists for each context.
  */
 typedef struct {
@@ -150,7 +150,7 @@
      * this forward pass can also consider words starting at a number of neighbouring frames
      * within a given window.
      * 
-     * Input lattice file format:  Each line contains a single <word> <startframe> info.  The
+     * Input lattice file format:  Each line contains a single \<word\> \<startframe\> info.  The
      * line may contain other info following these two fields; these are ignored.  Empty lines
      * and lines beginning with a # char in the first column (ie, comment lines) are ignored.
      */
@@ -163,13 +163,13 @@
 				   entire run */
   
     char const *latfile_ext;	/**< Complete word candidate filename for an utterance formed
-                           by word_cand_dir/<uttid>.latfile_ext */
+                           by word_cand_dir/\<uttid\>.latfile_ext */
     int32 word_cand_win;	/**< In frame f, candidate words in input lattice from frames
 				   [(f - word_cand_win) .. (f + word_cand_win)] will be
 				   the actual candidates to be started(entered) */
     word_cand_t **word_cand;	/**< Word candidates for each frame.  (NOTE!! Another array
                                    with a hard limit on its size.) */
-    int32 n_word_cand;	/**< #candidate entries in word_cand for current utterance.
+    int32 n_word_cand;	/**< \#candidate entries in word_cand for current utterance.
                            If <= 0; full search performed for current utterance */
 
 
diff -dur sphinx3-0.8.ORIG/src/programs/main_decode.c sphinx3-0.8/src/programs/main_decode.c
--- sphinx3-0.8.ORIG/src/programs/main_decode.c	2008-12-31 11:27:58.000000000 -0700
+++ sphinx3-0.8/src/programs/main_decode.c	2009-08-26 12:45:02.711326770 -0600
@@ -56,7 +56,7 @@
  * 		Started.
  */
 
-/** \file decode.c
+/** \file main_decode.c
  * \brief main function for application decode
  */
 #include "info.h"
diff -dur sphinx3-0.8.ORIG/src/programs/main_gausubvq.c sphinx3-0.8/src/programs/main_gausubvq.c
--- sphinx3-0.8.ORIG/src/programs/main_gausubvq.c	2008-12-31 11:27:58.000000000 -0700
+++ sphinx3-0.8/src/programs/main_gausubvq.c	2009-08-26 12:45:02.712327401 -0600
@@ -76,7 +76,7 @@
 #include "feat.h"
 #include "cmdln_macro.h"
 
-/** \file gausubvq.c 
+/** \file main_gausubvq.c 
  * \brief Compute the SVQ map 
  */
 
diff -dur sphinx3-0.8.ORIG/src/programs/s3_align.c sphinx3-0.8/src/programs/s3_align.c
--- sphinx3-0.8.ORIG/src/programs/s3_align.c	2008-12-31 11:27:58.000000000 -0700
+++ sphinx3-0.8/src/programs/s3_align.c	2009-08-26 12:45:02.712327401 -0600
@@ -804,15 +804,15 @@
 /**
  * Build a sentence HMM for the given transcription (wordstr).  A two-level DAG is
  * built: phone-level and state-level.
- *   - <s> and </s> always added at the beginning and end of sentence to form an
+ *   - \<s\> and \</s\> always added at the beginning and end of sentence to form an
  *     augmented transcription.
- *   - Optional <sil> and noise words added between words in the augmented
+ *   - Optional \<sil\> and noise words added between words in the augmented
  *     transcription.
  * wordstr must contain only the transcript; no extraneous stuff such as utterance-id.
  * Phone-level HMM structure has replicated nodes to allow for different left and right
  * context CI phones; hence, each pnode corresponds to a unique triphone in the sentence
  * HMM.
- * Return 0 if successful, <0 if any error (eg, OOV word encountered).
+ * Return 0 if successful, \<0 if any error (eg, OOV word encountered).
  */
 int32
 align_build_sent_hmm(char *wordstr, int insert_sil)

sphinx3-link.patch:
 Makefile.in |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- NEW FILE sphinx3-link.patch ---
diff -dur sphinx3-0.8.ORIG/src/libs3decoder/Makefile.in sphinx3-0.8/src/libs3decoder/Makefile.in
--- sphinx3-0.8.ORIG/src/libs3decoder/Makefile.in	2008-12-31 21:23:33.000000000 -0700
+++ sphinx3-0.8/src/libs3decoder/Makefile.in	2009-09-15 15:47:49.599310099 -0600
@@ -197,7 +197,7 @@
 tidigitsdata = @tidigitsdata@
 SUBDIRS = libam libconfidence libcommon  libdict libep liblm libsearch libAPI libcfg
 lib_LTLIBRARIES = libs3decoder.la
-libs3decoder_la_LDFLAGS = -version-info 0:6:0
+libs3decoder_la_LDFLAGS = -version-info 0:6:0 -lsphinxbase
 libs3decoder_la_SOURCES = 
 libs3decoder_la_LIBADD = \
 	libam/libam.la \

sphinx3-python.patch:
 setup.py |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- NEW FILE sphinx3-python.patch ---
diff -dur sphinx3-0.8.ORIG/python/setup.py sphinx3-0.8/python/setup.py
--- sphinx3-0.8.ORIG/python/setup.py	2008-12-31 21:20:08.000000000 -0700
+++ sphinx3-0.8/python/setup.py	2009-08-26 12:46:43.559003453 -0600
@@ -10,8 +10,8 @@
 module = Extension('_sphinx3',
                    include_dirs = ['../../sphinxbase/include',
                                    '../include',
-                                   '/usr/local/include/sphinxbase/',
-                                   '/usr/local/include/sphinx3',
+                                   '/usr/include/sphinxbase/',
+                                   '/usr/include/sphinx3',
                                    ],
 		   define_macros = define_macros,
 		   library_dirs = ['../../sphinxbase/src/libsphinxbase/.libs',

sphinx3-string.patch:
 libAPI/s3_decode.c                |    1 +
 libAPI/utt.c                      |    1 +
 libsearch/kb.c                    |    2 +-
 libsearch/lextree.c               |    1 +
 libsearch/srch.c                  |    1 +
 libsearch/srch_fsg.c              |    1 +
 libsearch/srch_time_switch_tree.c |    1 +
 libsearch/vithist.c               |    1 +
 8 files changed, 8 insertions(+), 1 deletion(-)

--- NEW FILE sphinx3-string.patch ---
diff -dur sphinx3-0.8.ORIG/src/libs3decoder/libAPI/s3_decode.c sphinx3-0.8/src/libs3decoder/libAPI/s3_decode.c
--- sphinx3-0.8.ORIG/src/libs3decoder/libAPI/s3_decode.c	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/src/libs3decoder/libAPI/s3_decode.c	2009-08-26 10:57:50.691952472 -0600
@@ -150,6 +150,7 @@
 =============================================================================
 */
 
+#include <string.h>
 #include <time.h>
 #include <feat.h>
 #include "s3_decode.h"
diff -dur sphinx3-0.8.ORIG/src/libs3decoder/libAPI/utt.c sphinx3-0.8/src/libs3decoder/libAPI/utt.c
--- sphinx3-0.8.ORIG/src/libs3decoder/libAPI/utt.c	2008-12-31 11:27:54.000000000 -0700
+++ sphinx3-0.8/src/libs3decoder/libAPI/utt.c	2009-08-26 10:58:10.739950084 -0600
@@ -101,6 +101,7 @@
 #include <direct.h>             /* RAH, added */
 #endif
 
+#include <string.h>
 #include "kb.h"
 #include "utt.h"
 #include "srch.h"
diff -dur sphinx3-0.8.ORIG/src/libs3decoder/libsearch/kb.c sphinx3-0.8/src/libs3decoder/libsearch/kb.c
--- sphinx3-0.8.ORIG/src/libs3decoder/libsearch/kb.c	2008-12-31 11:27:56.000000000 -0700
+++ sphinx3-0.8/src/libs3decoder/libsearch/kb.c	2009-08-26 10:54:38.093005711 -0600
@@ -152,7 +152,7 @@
 #include "kb.h"
 #include "srch.h"
 #include "mllr.h"
-
+#include <string.h>
 
 #define REPORT_KB 1
 
diff -dur sphinx3-0.8.ORIG/src/libs3decoder/libsearch/lextree.c sphinx3-0.8/src/libs3decoder/libsearch/lextree.c
--- sphinx3-0.8.ORIG/src/libs3decoder/libsearch/lextree.c	2008-12-31 11:27:56.000000000 -0700
+++ sphinx3-0.8/src/libs3decoder/libsearch/lextree.c	2009-08-26 10:55:12.853091485 -0600
@@ -136,6 +136,7 @@
 
 #include "lextree.h"
 #include "wid.h"
+#include <string.h>
 
 /*
  * Lextree nodes, and the HMMs contained within, are cleared upon creation, and whenever
diff -dur sphinx3-0.8.ORIG/src/libs3decoder/libsearch/srch.c sphinx3-0.8/src/libs3decoder/libsearch/srch.c
--- sphinx3-0.8.ORIG/src/libs3decoder/libsearch/srch.c	2008-12-31 11:27:56.000000000 -0700
+++ sphinx3-0.8/src/libs3decoder/libsearch/srch.c	2009-08-26 10:55:48.605155067 -0600
@@ -217,6 +217,7 @@
 #include "pio.h"
 #include "srch.h"
 #include "corpus.h"
+#include <string.h>
 
 #define COMPUTE_HEURISTIC 1
 #define SHOW_SENONE_SCORE_FOR_FRAME 0
diff -dur sphinx3-0.8.ORIG/src/libs3decoder/libsearch/srch_fsg.c sphinx3-0.8/src/libs3decoder/libsearch/srch_fsg.c
--- sphinx3-0.8.ORIG/src/libs3decoder/libsearch/srch_fsg.c	2008-12-31 11:27:56.000000000 -0700
+++ sphinx3-0.8/src/libs3decoder/libsearch/srch_fsg.c	2009-08-26 10:56:04.988016715 -0600
@@ -81,6 +81,7 @@
 #include "kbcore.h"
 #include "word_fsg.h"
 #include "fsg_search.h"
+#include <string.h>
 
 static word_fsg_t *srch_FSG_read_fsgfile(void *srch, const char *fsgfilename);
 
diff -dur sphinx3-0.8.ORIG/src/libs3decoder/libsearch/srch_time_switch_tree.c sphinx3-0.8/src/libs3decoder/libsearch/srch_time_switch_tree.c
--- sphinx3-0.8.ORIG/src/libs3decoder/libsearch/srch_time_switch_tree.c	2008-12-31 11:27:56.000000000 -0700
+++ sphinx3-0.8/src/libs3decoder/libsearch/srch_time_switch_tree.c	2009-08-26 10:56:28.845010375 -0600
@@ -152,6 +152,7 @@
 #include "lextree.h"
 #include "lm.h"
 #include "vithist.h"
+#include <string.h>
 
 /** 
     \file srch_time_switch_tree.h 
diff -dur sphinx3-0.8.ORIG/src/libs3decoder/libsearch/vithist.c sphinx3-0.8/src/libs3decoder/libsearch/vithist.c
--- sphinx3-0.8.ORIG/src/libs3decoder/libsearch/vithist.c	2008-12-31 11:27:56.000000000 -0700
+++ sphinx3-0.8/src/libs3decoder/libsearch/vithist.c	2009-08-26 10:57:04.115947097 -0600
@@ -127,6 +127,7 @@
 #include <listelem_alloc.h>
 #include <pio.h>
 #include <heap.h>
+#include <string.h>
 
 #include "vithist.h"
 #include "lextree.h"


Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/cmusphinx3/F-11/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- .cvsignore	26 Sep 2009 02:46:00 -0000	1.1
+++ .cvsignore	26 Sep 2009 16:14:14 -0000	1.2
@@ -0,0 +1 @@
+sphinx3-0.8.zip


Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/cmusphinx3/F-11/sources,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- sources	26 Sep 2009 02:46:00 -0000	1.1
+++ sources	26 Sep 2009 16:14:14 -0000	1.2
@@ -0,0 +1 @@
+cbbcbb86d8aac41085ddeaa953a06298  sphinx3-0.8.zip




More information about the fedora-extras-commits mailing list