/** Create demo verification engine */ MRCP_PLUGIN_DECLARE(mrcp_engine_t*) mrcp_plugin_create(apr_pool_t *pool) { demo_verifier_engine_t *demo_engine = apr_palloc(pool,sizeof(demo_verifier_engine_t)); apt_task_t *task; apt_task_vtable_t *vtable; apt_task_msg_pool_t *msg_pool; msg_pool = apt_task_msg_pool_create_dynamic(sizeof(demo_verifier_msg_t),pool); demo_engine->task = apt_consumer_task_create(demo_engine,msg_pool,pool); if(!demo_engine->task) { return NULL; } task = apt_consumer_task_base_get(demo_engine->task); apt_task_name_set(task,VERIFIER_ENGINE_TASK_NAME); vtable = apt_task_vtable_get(task); if(vtable) { vtable->process_msg = demo_verifier_msg_process; } /* create engine base */ return mrcp_engine_create( MRCP_VERIFIER_RESOURCE, /* MRCP resource identifier */ demo_engine, /* object to associate */ &engine_vtable, /* virtual methods table of engine */ pool); /* pool to allocate memory from */ }
/** Create recorder engine */ MRCP_PLUGIN_DECLARE(mrcp_engine_t*) mrcp_plugin_create(apr_pool_t *pool) { /* create engine base */ return mrcp_engine_create( MRCP_RECORDER_RESOURCE, /* MRCP resource identifier */ NULL, /* object to associate */ &engine_vtable, /* virtual methods table of engine */ pool); /* pool to allocate memory from */ }
/** Create Swift synthesizer engine */ MRCP_PLUGIN_DECLARE(mrcp_engine_t*) mrcp_plugin_create(apr_pool_t *pool) { mrcp_swift_engine_t *synth_engine = apr_palloc(pool,sizeof(mrcp_swift_engine_t)); synth_engine->swift = NULL; synth_engine->language_table = mrcp_swift_language_table_create(pool); synth_engine->sample_rates = MPF_SAMPLE_RATE_NONE; /* create engine base */ return mrcp_engine_create( MRCP_SYNTHESIZER_RESOURCE, /* MRCP resource identifier */ synth_engine, /* object to associate */ &engine_vtable, /* virtual methods table of engine */ pool); /* pool to allocate memory from */ }