API documentation
authorjmvalin <jmvalin@0101bb08-14d6-0310-b084-bc0e0c8e3800>
Tue, 21 May 2002 02:12:13 +0000 (02:12 +0000)
committerjmvalin <jmvalin@0101bb08-14d6-0310-b084-bc0e0c8e3800>
Tue, 21 May 2002 02:12:13 +0000 (02:12 +0000)
git-svn-id: http://svn.xiph.org/trunk/speex@3318 0101bb08-14d6-0310-b084-bc0e0c8e3800

configure.in
libspeex/speex.h
libspeex/speex_bits.h

index 2005ee3..cc221b3 100644 (file)
@@ -4,7 +4,7 @@ AC_INIT(libspeex/speex.h)
 
 SPEEX_MAJOR_VERSION=0
 SPEEX_MINOR_VERSION=1
-SPEEX_MICRO_VERSION=0
+SPEEX_MICRO_VERSION=1
 SPEEX_VERSION=$SPEEX_MAJOR_VERSION.$SPEEX_MINOR_VERSION.$SPEEX_MICRO_VERSION
 SPEEX_BINARY_AGE=0
 SPEEX_INTERFACE_AGE=0
index 51ca9ae..ade6fd5 100644 (file)
@@ -39,32 +39,56 @@ typedef void (*decode_func)(void *state, SpeexBits *bits, float *out, int lost);
 
 /** Struct defining a Speex mode */ 
 typedef struct SpeexMode {
+   /** Pointer to the low-level mode data */
    void *mode;
+
+   /** Pointer to encoder initialization function */
    encoder_init_func enc_init;
+
+   /** Pointer to encoder destruction function */
    encoder_destroy_func enc_destroy;
+
+   /** Pointer to frame encoding function */
    encode_func enc;
+
+   /** Pointer to decoder initialization function */
    decoder_init_func dec_init;
+
+   /** Pointer to decoder destruction function */
    decoder_destroy_func dec_destroy;
+
+   /** Pointer to frame decoding function */
    decode_func dec;
+
+   /** Frame size used for the current mode */
    int frameSize;
+
 } SpeexMode;
 
-/** Creates an encoder state ("object") from a mode */ 
+/**Returns a handle to a newly created Speex encoder state structure. For now, the 
+   "mode" arguent can be &nb_mode or &wb_mode . In the future, more modes may be 
+   added. Note that for now if you have more than one channels to encode, you need 
+   one state per channel.*/
 void *speex_encoder_init(SpeexMode *mode);
 
-/** Destroy a Speex encoder state */
+/** Frees all resources associated to an existing Speex encoder state. */
 void speex_encoder_destroy(void *state);
 
-/** Encode a frame */
+/** Uses an existing encoder state to encode one frame of speech pointed to by
+    "in". The encoded bit-stream is saved in "bits".*/
 void speex_encode(void *state, float *in, SpeexBits *bits);
 
-/** Creates a decoder state ("object") from a mode */ 
+/** Returns a handle to a newly created decoder state structure. For now, the mode
+    arguent can be &nb_mode or &wb_mode . In the future, more modes may be added. 
+    Note that for now if you have more than one channels to decode, you need one 
+    state per channel. */ 
 void *speex_decoder_init(SpeexMode *mode);
 
-/** Destroy a Speex decoder state */
+/** Frees all resources associated to an existing decoder state. */
 void speex_decoder_destroy(void *state);
 
-/** Decode a frame */
+/** Uses an existing decoder state to decode one frame of speech from bit-stream 
+    bits. The output speech is saved written to out. */
 void speex_decode(void *state, SpeexBits *bits, float *out, int lost);
 
 /** Default narrowband mode */
index c1c4ef5..e539c95 100644 (file)
@@ -24,6 +24,7 @@
 
 #define MAX_BYTES_PER_FRAME 1000
 
+/** Bit-packing data structure representing (part of) a bit-stream. */
 typedef struct SpeexBits {
    char bytes[MAX_BYTES_PER_FRAME];
    int  nbBits;
@@ -31,18 +32,25 @@ typedef struct SpeexBits {
    int  bitPtr;
 } SpeexBits;
 
+/** Initializes and allocates resources for a SpeexBits struct */
 void speex_bits_init(SpeexBits *bits);
 
+/** Frees all resources assiociated to a SpeexBits struct. Right now this does nothing since no resources are allocated, but this could change in the future.*/
 void speex_bits_destroy(SpeexBits *bits);
 
+/** Resets bits to initial value (just after initialization, erasing content)*/
 void speex_bits_reset(SpeexBits *bits);
 
+/** Rewind the bit-stream to beginning (ready for read) without erasing content*/
 void speex_bits_rewind(SpeexBits *bits);
 
+/** Initializes the bit-stream from the data in an area of memory (no need to
+    call speex_bits_init before) */
 void speex_bits_init_from(SpeexBits *bits, char *bytes, int len);
 
 void speex_bits_read_whole_bytes(SpeexBits *bits, char *bytes, int len);
 
+/** Write the content of a bit-stream to an area of memory */
 int speex_bits_write(SpeexBits *bits, char *bytes, int max_len);
 
 int speex_bits_write_whole_bytes(SpeexBits *bits, char *bytes, int max_len);