libavfilter/asrc_flite.c File Reference

flite voice synth source More...

#include <flite/flite.h>
#include "libavutil/audioconvert.h"
#include "libavutil/file.h"
#include "libavutil/opt.h"
#include "avfilter.h"
#include "audio.h"
#include "formats.h"
#include "internal.h"

Go to the source code of this file.

Data Structures

struct  FliteContext
struct  voice_entry

Defines

#define OFFSET(x)   offsetof(FliteContext, x)
#define FLAGS   AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM
#define DECLARE_REGISTER_VOICE_FN(name)
#define MAKE_VOICE_STRUCTURE(voice_name)

Functions

 AVFILTER_DEFINE_CLASS (flite)
 DECLARE_REGISTER_VOICE_FN (awb)
 DECLARE_REGISTER_VOICE_FN (kal)
 DECLARE_REGISTER_VOICE_FN (kal16)
 DECLARE_REGISTER_VOICE_FN (rms)
 DECLARE_REGISTER_VOICE_FN (slt)
static void list_voices (void *log_ctx, const char *sep)
static int select_voice (struct voice_entry **entry_ret, const char *voice_name, void *log_ctx)
static av_cold int init (AVFilterContext *ctx, const char *args)
static av_cold void uninit (AVFilterContext *ctx)
static int query_formats (AVFilterContext *ctx)
static int config_props (AVFilterLink *outlink)
static int request_frame (AVFilterLink *outlink)

Variables

static const AVOption flite_options []
static volatile int flite_inited = 0
static struct voice_entry voice_entries []
AVFilter avfilter_asrc_flite


Detailed Description

flite voice synth source

Definition in file asrc_flite.c.


Define Documentation

#define DECLARE_REGISTER_VOICE_FN ( name   ) 

Value:

cst_voice *register_cmu_us_## name(const char *); \
    void     unregister_cmu_us_## name(cst_voice *);

Definition at line 69 of file asrc_flite.c.

#define FLAGS   AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM

Definition at line 51 of file asrc_flite.c.

#define MAKE_VOICE_STRUCTURE ( voice_name   ) 

Value:

{             \
    .name          =                      #voice_name, \
    .register_fn   =   register_cmu_us_ ## voice_name, \
    .unregister_fn = unregister_cmu_us_ ## voice_name, \
}

Definition at line 86 of file asrc_flite.c.

#define OFFSET (  )     offsetof(FliteContext, x)

Definition at line 50 of file asrc_flite.c.


Function Documentation

AVFILTER_DEFINE_CLASS ( flite   ) 

static int config_props ( AVFilterLink outlink  )  [static]

Definition at line 232 of file asrc_flite.c.

DECLARE_REGISTER_VOICE_FN ( slt   ) 

DECLARE_REGISTER_VOICE_FN ( rms   ) 

DECLARE_REGISTER_VOICE_FN ( kal16   ) 

DECLARE_REGISTER_VOICE_FN ( kal   ) 

DECLARE_REGISTER_VOICE_FN ( awb   ) 

static av_cold int init ( AVFilterContext ctx,
const char *  args 
) [static]

Definition at line 134 of file asrc_flite.c.

static void list_voices ( void *  log_ctx,
const char *  sep 
) [static]

Definition at line 99 of file asrc_flite.c.

Referenced by init(), and select_voice().

static int query_formats ( AVFilterContext ctx  )  [static]

Definition at line 213 of file asrc_flite.c.

static int request_frame ( AVFilterLink outlink  )  [static]

Definition at line 246 of file asrc_flite.c.

static int select_voice ( struct voice_entry **  entry_ret,
const char *  voice_name,
void *  log_ctx 
) [static]

Definition at line 107 of file asrc_flite.c.

Referenced by init().

static av_cold void uninit ( AVFilterContext ctx  )  [static]

Definition at line 199 of file asrc_flite.c.


Variable Documentation

Initial value:

 {
    .name        = "flite",
    .description = NULL_IF_CONFIG_SMALL("Synthesize voice from text using libflite."),
    .query_formats = query_formats,
    .init        = init,
    .uninit      = uninit,
    .priv_size   = sizeof(FliteContext),

    .inputs = (const AVFilterPad[]) {{ .name = NULL}},

    .outputs = (const AVFilterPad[]) {
        {
            .name = "default",
            .type = AVMEDIA_TYPE_AUDIO,
            .config_props = config_props,
            .request_frame = request_frame,
        },
        { .name = NULL }
    },

    .priv_class = &flite_class,
}

Definition at line 271 of file asrc_flite.c.

volatile int flite_inited = 0 [static]

Definition at line 66 of file asrc_flite.c.

Referenced by init().

const AVOption flite_options[] [static]

Initial value:

 {
    { "list_voices", "list voices and exit",              OFFSET(list_voices), AV_OPT_TYPE_INT, {.i64=0}, 0, 1, FLAGS },
    { "nb_samples",  "set number of samples per frame",   OFFSET(frame_nb_samples), AV_OPT_TYPE_INT, {.i64=512}, 0, INT_MAX, FLAGS },
    { "n",           "set number of samples per frame",   OFFSET(frame_nb_samples), AV_OPT_TYPE_INT, {.i64=512}, 0, INT_MAX, FLAGS },
    { "text",        "set text to speak",                 OFFSET(text),      AV_OPT_TYPE_STRING, {.str=NULL}, CHAR_MIN, CHAR_MAX, FLAGS },
    { "textfile",    "set filename of the text to speak", OFFSET(textfile),  AV_OPT_TYPE_STRING, {.str=NULL}, CHAR_MIN, CHAR_MAX, FLAGS },
    { "v",           "set voice",                         OFFSET(voice_str), AV_OPT_TYPE_STRING, {.str="kal"}, CHAR_MIN, CHAR_MAX, FLAGS },
    { "voice",       "set voice",                         OFFSET(voice_str), AV_OPT_TYPE_STRING, {.str="kal"}, CHAR_MIN, CHAR_MAX, FLAGS },
    { NULL }
}

Definition at line 53 of file asrc_flite.c.

struct voice_entry voice_entries[] [static]

Initial value:

Definition at line 91 of file asrc_flite.c.


Generated on Fri Oct 26 02:50:09 2012 for FFmpeg by  doxygen 1.5.8