[xiph-commits] r12103 - trunk/speex/doc
jm at svn.xiph.org
jm at svn.xiph.org
Mon Nov 13 06:13:38 PST 2006
Author: jm
Date: 2006-11-13 06:13:36 -0800 (Mon, 13 Nov 2006)
New Revision: 12103
Modified:
trunk/speex/doc/manual.lyx
Log:
Updated manual based on new preprocessor work
Modified: trunk/speex/doc/manual.lyx
===================================================================
--- trunk/speex/doc/manual.lyx 2006-11-13 14:12:14 UTC (rev 12102)
+++ trunk/speex/doc/manual.lyx 2006-11-13 14:13:36 UTC (rev 12103)
@@ -1,20 +1,24 @@
-#LyX 1.4.2 created this file. For more info see http://www.lyx.org/
+#LyX 1.4.3 created this file. For more info see http://www.lyx.org/
\lyxformat 245
\begin_document
\begin_header
-\textclass article
+\textclass scrbook
\language english
\inputencoding auto
\fontscheme pslatex
\graphics default
-\paperfontsize default
+\paperfontsize 10
\spacing onehalf
\papersize letterpaper
-\use_geometry false
-\use_amsmath 1
+\use_geometry true
+\use_amsmath 2
\cite_engine basic
\use_bibtopic false
\paperorientation portrait
+\leftmargin 2cm
+\topmargin 2cm
+\rightmargin 2cm
+\bottommargin 2cm
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
@@ -32,7 +36,7 @@
\begin_layout Title
The Speex Codec Manual
\newline
-(version 1.2-beta1)
+(version 1.2-beta2)
\end_layout
\begin_layout Author
@@ -78,7 +82,7 @@
\end_layout
-\begin_layout Section
+\begin_layout Chapter
Introduction to Speex
\end_layout
@@ -255,7 +259,7 @@
\end_layout
-\begin_layout Section
+\begin_layout Chapter
Codec description
\begin_inset LatexCommand \label{sec:Feature-description}
@@ -268,7 +272,7 @@
This section describes the main features provided by Speex.
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Concepts
\end_layout
@@ -521,11 +525,11 @@
the frames.
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Codec
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Preprocessor
\end_layout
@@ -540,7 +544,7 @@
\end_layout
\begin_layout Itemize
-denoising
+noise suppression
\end_layout
\begin_layout Itemize
@@ -579,11 +583,11 @@
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Adaptive Jitter Buffer
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Acoustic Echo Canceller
\end_layout
@@ -593,7 +597,7 @@
\end_layout
-\begin_layout Section
+\begin_layout Chapter
Compiling
\end_layout
@@ -698,7 +702,7 @@
\end_layout
-\begin_layout Section
+\begin_layout Chapter
Command-line encoder/decoder
\begin_inset LatexCommand \label{sec:Command-line-encoder/decoder}
@@ -720,7 +724,7 @@
This section describes how to use these tools.
\end_layout
-\begin_layout Subsection
+\begin_layout Section
\emph on
speexenc
@@ -826,7 +830,7 @@
(-v) Print version information
\end_layout
-\begin_layout Subsubsection*
+\begin_layout Subsection*
Speex comments
\end_layout
@@ -846,7 +850,7 @@
\end_layout
-\begin_layout Subsubsection*
+\begin_layout Subsection*
Raw input options
\end_layout
@@ -875,7 +879,7 @@
--16bit Raw input is 16-bit signed
\end_layout
-\begin_layout Subsection
+\begin_layout Section
\emph on
speexdec
@@ -963,7 +967,7 @@
\end_layout
-\begin_layout Section
+\begin_layout Chapter
Programming with Speex (the libspeex
\begin_inset LatexCommand \index{libspeex}
@@ -992,7 +996,7 @@
.
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Encoding
\begin_inset LatexCommand \label{sub:Encoding}
@@ -1172,7 +1176,7 @@
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Decoding
\begin_inset LatexCommand \label{sub:Decoding}
@@ -1318,7 +1322,7 @@
speex_decoder_destroy(dec_state);
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Preprocessor
\begin_inset LatexCommand \label{sub:Preprocessor}
@@ -1366,7 +1370,7 @@
\end_layout
\begin_layout LyX-Code
-speex_preprocess(preprocess_state, audio_frame, echo_residue);
+speex_preprocess_run(preprocess_state, audio_frame);
\end_layout
\begin_layout Standard
@@ -1374,12 +1378,7 @@
\family typewriter
audio_frame
\family default
- is used both as input and output and
-\family typewriter
-echo_residue
-\family default
- is either an array filled by the echo canceller, or NULL if the preprocessor
- is used without the echo canceller.
+ is used both as input and output.
\end_layout
\begin_layout Standard
@@ -1388,7 +1387,7 @@
\end_layout
\begin_layout LyX-Code
-speex_preprocess_estimate_update(preprocess_state, audio_frame, echo_residue);
+speex_preprocess_estimate_update(preprocess_state, audio_frame);
\end_layout
\begin_layout Standard
@@ -1417,7 +1416,7 @@
speex_preprocess_state_destroy(preprocess_state);
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Echo Cancellation
\begin_inset LatexCommand \label{sub:Echo-Cancellation}
@@ -1488,7 +1487,7 @@
\end_layout
\begin_layout LyX-Code
-speex_echo_cancel(echo_state, input_frame, echo_frame, output_frame, residue);
+speex_echo_cancellation(echo_state, input_frame, echo_frame, output_frame);
\end_layout
\begin_layout Standard
@@ -1506,13 +1505,6 @@
output_frame
\family default
is the signal with echo removed.
- The
-\family typewriter
-residue
-\family default
- parameter is optional (you can set it to NULL) and is used to return the
- estimated power spectrum of the echo residue so it can be removed by the
- preprocessor (if you with to use it).
\end_layout
@@ -1549,32 +1541,38 @@
\end_layout
\begin_layout LyX-Code
-speex_echo_cancel(echo_state, input_frame, echo_frame, output_frame, residue);
+speex_echo_cancellation(echo_state, input_frame, echo_frame, output_frame);
\end_layout
\begin_layout Standard
-As stated above, if you wish to further reduce the echo present in the signal,
- you can do so by passing
+If you wish to further reduce the echo present in the signal, you can do
+ so by
\family typewriter
-residue
+associating the echo canceller to the preprocessor
\family default
- as the last parameter of
-\family typewriter
-speex_preprocess()
-\family default
- function (see Section
+ (see Section
\begin_inset LatexCommand \ref{sub:Preprocessor}
\end_inset
).
+ This is done by calling:
\end_layout
+\begin_layout LyX-Code
+speex_preprocess_ctl(preprocess_state, SPEEX_PREPROCESS_SET_ECHO_STATE,
+ echo_state);
+\end_layout
+
\begin_layout Standard
-As of version 1.2-beta1, there is an alternative, simpler API that can be
+in the initialisation.
+\end_layout
+
+\begin_layout Standard
+As of version 1.2-beta2, there is an alternative, simpler API that can be
used instead of
\emph on
-speex_echo_cancel()
+speex_echo_cancellation()
\emph default
.
When audio capture and playback are handled asynchronously (e.g.
@@ -1601,7 +1599,7 @@
\end_layout
\begin_layout LyX-Code
-speex_echo_capture(echo_state, input_frame, output_frame, residue);
+speex_echo_capture(echo_state, input_frame, output_frame);
\end_layout
\begin_layout Standard
@@ -1619,12 +1617,13 @@
speex_echo_cancel()
\emph default
.
- When capture and playback are done synchronously,
+ A side effect of using this alternate API is that the playback audio is
+ delayed by two frames, which is the normal delay caused by the soundcard.
+ When capture and playback are already synchronised,
\emph on
-speex_echo_cancel()
+speex_echo_cancellation()
\emph default
- is still prefered since it gives better control on the exact input/echo
- timing.
+ is preferable since it gives better control on the exact input/echo timing.
\end_layout
\begin_layout Standard
@@ -1644,7 +1643,7 @@
speex_echo_state_reset(echo_state);
\end_layout
-\begin_layout Subsubsection
+\begin_layout Subsection
Troubleshooting
\end_layout
@@ -1730,7 +1729,7 @@
same.
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Codec Options (speex_*_ctl)
\begin_inset LatexCommand \label{sub:Codec-Options}
@@ -1962,7 +1961,7 @@
normally only used internally
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Mode queries
\begin_inset LatexCommand \label{sub:Mode-queries}
@@ -2006,7 +2005,7 @@
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Preprocessor options
\begin_inset LatexCommand \label{sub:Preprocessor-options}
@@ -2074,7 +2073,62 @@
SPEEX_PREPROCESS_GET_DEREVERB_DECAY
\end_layout
-\begin_layout Subsection
+\begin_layout Description
+SPEEX_PREPROCESS_SET_PROB_START
+\end_layout
+
+\begin_layout Description
+SPEEX_PREPROCESS_GET_PROB_START
+\end_layout
+
+\begin_layout Description
+SPEEX_PREPROCESS_SET_PROB_CONTINUE
+\end_layout
+
+\begin_layout Description
+SPEEX_PREPROCESS_GET_PROB_CONTINUE
+\end_layout
+
+\begin_layout Description
+SPEEX_PREPROCESS_SET_NOISE_SUPPRESS Set maximum attenuation of the noise
+ in dB (negative number)
+\end_layout
+
+\begin_layout Description
+SPEEX_PREPROCESS_GET_NOISE_SUPPRESS Get maximum attenuation of the noise
+ in dB (negative number)
+\end_layout
+
+\begin_layout Description
+SPEEX_PREPROCESS_SET_ECHO_SUPPRESS Set maximum attenuation of the residual
+ echo in dB (negative number)
+\end_layout
+
+\begin_layout Description
+SPEEX_PREPROCESS_GET_ECHO_SUPPRESS Set maximum attenuation of the residual
+ echo in dB (negative number)
+\end_layout
+
+\begin_layout Description
+SPEEX_PREPROCESS_SET_ECHO_SUPPRESS_ACTIVE Set maximum attenuation of the
+ echo in dB when near end is active (negative number)
+\end_layout
+
+\begin_layout Description
+SPEEX_PREPROCESS_GET_ECHO_SUPPRESS_ACTIVE Set maximum attenuation of the
+ echo in dB when near end is active (negative number)
+\end_layout
+
+\begin_layout Description
+SPEEX_PREPROCESS_SET_ECHO_STATE Set the associated echo canceller for residual
+ echo suppression (NULL for no residual echo suppression)
+\end_layout
+
+\begin_layout Description
+SPEEX_PREPROCESS_GET_ECHO_STATE Get the associated echo canceller
+\end_layout
+
+\begin_layout Section
Packing and in-band signalling
\begin_inset LatexCommand \index{in-band signalling}
@@ -2685,7 +2739,7 @@
\end_layout
-\begin_layout Section
+\begin_layout Chapter
Formats and standards
\begin_inset LatexCommand \index{standards}
@@ -2744,7 +2798,7 @@
some modes.
\end_layout
-\begin_layout Subsection
+\begin_layout Section
RTP
\begin_inset LatexCommand \index{RTP}
@@ -2770,7 +2824,7 @@
\end_layout
-\begin_layout Subsection
+\begin_layout Section
MIME Type
\end_layout
@@ -2783,7 +2837,7 @@
in the near future.
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Ogg
\begin_inset LatexCommand \index{Ogg}
@@ -3427,7 +3481,7 @@
\end_layout
-\begin_layout Section
+\begin_layout Chapter
Introduction to CELP Coding
\begin_inset LatexCommand \index{CELP}
@@ -3479,7 +3533,7 @@
This is still a work in progress.
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Source-Filter Model of Speech Prediction
\end_layout
@@ -3572,7 +3626,7 @@
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Linear Prediction (LPC)
\begin_inset LatexCommand \index{linear prediction}
@@ -3742,7 +3796,7 @@
to filtering in the frequency domain, reducing sharp resonances.
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Pitch Prediction
\begin_inset LatexCommand \index{pitch}
@@ -3792,7 +3846,7 @@
.
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Innovation Codebook
\end_layout
@@ -3847,7 +3901,7 @@
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Noise Weighting
\begin_inset LatexCommand \index{error weighting}
@@ -4034,7 +4088,7 @@
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Analysis-by-Synthesis
\end_layout
@@ -4070,7 +4124,7 @@
\end_layout
-\begin_layout Section
+\begin_layout Chapter
Speex narrowband mode
\begin_inset LatexCommand \label{sec:Speex-narrowband-mode}
@@ -4115,7 +4169,7 @@
sub-vector fixed (innovation) codebooks
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Whole-Frame Analysis
\begin_inset LatexCommand \index{linear prediction}
@@ -4239,7 +4293,7 @@
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Sub-Frame Analysis-by-Synthesis
\end_layout
@@ -4407,7 +4461,7 @@
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Bit allocation
\end_layout
@@ -6415,7 +6469,7 @@
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Perceptual enhancement
\begin_inset LatexCommand \index{perceptual enhancement}
@@ -6476,7 +6530,7 @@
\end_layout
-\begin_layout Section
+\begin_layout Chapter
Speex wideband mode (sub-band CELP)
\begin_inset LatexCommand \index{wideband}
@@ -6529,7 +6583,7 @@
encoding is described in this section.
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Linear Prediction
\end_layout
@@ -6542,7 +6596,7 @@
is then quantized using 6 bits, too.
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Pitch Prediction
\end_layout
@@ -6557,7 +6611,7 @@
(pitch).
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Excitation Quantization
\end_layout
@@ -6566,7 +6620,7 @@
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Bit allocation
\end_layout
@@ -7117,7 +7171,7 @@
\end_layout
-\begin_layout Section
+\begin_layout Chapter
\start_of_appendix
FAQ
\end_layout
@@ -7458,7 +7512,7 @@
\end_layout
-\begin_layout Section
+\begin_layout Chapter
Sample code
\begin_inset LatexCommand \label{sec:Sample-code}
@@ -7482,7 +7536,7 @@
(in the machine natural endianness).
\end_layout
-\begin_layout Subsection
+\begin_layout Section
sampleenc.c
\end_layout
@@ -7501,7 +7555,7 @@
\end_layout
-\begin_layout Subsection
+\begin_layout Section
sampledec.c
\end_layout
@@ -7526,7 +7580,7 @@
\end_layout
-\begin_layout Section
+\begin_layout Chapter
IETF RTP Profile
\begin_inset LatexCommand \label{sec:IETF-draft}
@@ -7550,7 +7604,7 @@
\end_layout
-\begin_layout Section
+\begin_layout Chapter
Speex License
\begin_inset LatexCommand \label{sec:Speex-License}
@@ -7602,7 +7656,7 @@
\end_layout
-\begin_layout Section
+\begin_layout Chapter
GNU Free Documentation License
\end_layout
@@ -7618,7 +7672,7 @@
\end_layout
-\begin_layout Subsection*
+\begin_layout Section*
0.
PREAMBLE
\end_layout
@@ -7652,7 +7706,7 @@
\end_layout
-\begin_layout Subsection*
+\begin_layout Section*
1.
APPLICABILITY AND DEFINITIONS
\end_layout
@@ -7730,7 +7784,7 @@
preceding the beginning of the body of the text.
\end_layout
-\begin_layout Subsection*
+\begin_layout Section*
2.
VERBATIM COPYING
\end_layout
@@ -7753,7 +7807,7 @@
may publicly display copies.
\end_layout
-\begin_layout Subsection*
+\begin_layout Section*
3.
COPYING IN QUANTITY
\end_layout
@@ -7802,7 +7856,7 @@
\end_layout
-\begin_layout Subsection*
+\begin_layout Section*
4.
MODIFICATIONS
\end_layout
@@ -7954,7 +8008,7 @@
\end_layout
-\begin_layout Subsection*
+\begin_layout Section*
5.
COMBINING DOCUMENTS
\end_layout
@@ -7986,7 +8040,7 @@
You must delete all sections entitled "Endorsements."
\end_layout
-\begin_layout Subsection*
+\begin_layout Section*
6.
COLLECTIONS OF DOCUMENTS
\end_layout
@@ -8007,7 +8061,7 @@
\end_layout
-\begin_layout Subsection*
+\begin_layout Section*
7.
AGGREGATION WITH INDEPENDENT WORKS
\end_layout
@@ -8031,7 +8085,7 @@
Otherwise they must appear on covers around the whole aggregate.
\end_layout
-\begin_layout Subsection*
+\begin_layout Section*
8.
TRANSLATION
\end_layout
@@ -8049,7 +8103,7 @@
version of this License, the original English version will prevail.
\end_layout
-\begin_layout Subsection*
+\begin_layout Section*
9.
TERMINATION
\end_layout
@@ -8065,7 +8119,7 @@
\end_layout
-\begin_layout Subsection*
+\begin_layout Section*
10.
FUTURE REVISIONS OF THIS LICENSE
\end_layout
More information about the commits
mailing list