资源简介
本模块已经编译好了 可以直接使用 也有源码在里面 对freeswitch的空号识别有兴趣 已经想学习编写freeswitch模块的人 可以下载看看

代码片段和文件信息
/* asr mod. Copyright 2017 xuhuaiyi ALL RIGHTS RESERVED!
Author: cdevelop@qq.com(wwww.ddrj.com)
之前写了一个商业模块mod_vad,以及二次开发接口SmartIVR(RESTful API)详细看 http://www.dingdingtong.cn/smartivr/
很多用户只想测试一下ASR的效果以及希望自己掌握获取FreeSWITCH语音数据的原理和过程,所以特意写了这个开源项目供大家参考。
本项目的技术交流可以加群:340129771
如果需要商业服务和支持可以联系QQ:1280791187,或者微信:cdevelop
本项目是通过阿里云实时语音识别接口把通话中的语音流发送到阿里识别服务器,识别结果通过ESL事件通知业务程序。
*/
#include “switch.h“
#include “NlsClient.h“
SWITCH_MODULE_LOAD_FUNCTION(mod_asr_load);
SWITCH_MODULE_SHUTDOWN_FUNCTION(mod_asr_shutdown);
extern “C“ {
SWITCH_MODULE_DEFINITION(mod_asr mod_asr_load mod_asr_shutdown NULL);
};
// NlsClient nlc;
NlsSpeechCallback callback;
typedef struct {
switch_core_session_t *session;
switch_media_bug_t *bug;
NlsRequest *request;
char *id;
char *seceret;
int stop;
} switch_da_t;
void OnResultDataRecved(NlsEvent* str void* para)
{
switch_log_printf(SWITCH_CHANNEL_LOG SWITCH_LOG_NOTICE “ OnResultDataRecved %s %s\n“ str->getId() str->getResponse());
/*
{“finish“:1“request_id“:“13d5daad670947a5a7a12c581f5dc8b7““status_code“:200“version“:“2.0“}
{“finish“:0“request_id“:“13d5daad670947a5a7a12c581f5dc8b7““result“:{“sentence_id“:10“begin_time“:50960“end_time“:52915“status_code“:0“text“:“电话挂掉吧拜拜“}“status_code“:200“version“:“2.0“}
{“finish“:0“request_id“:“13d5daad670947a5a7a12c581f5dc8b7““result“:{“sentence_id“:10“begin_time“:50960“end_time“:-1“status_code“:1“text“:“电话挂“}“status_code“:200“version“:“2.0“}
{“finish“:0“request_id“:“76a6e062ec9b4db68f5f6016c7f700aa““result“:{“sentence_id“:1“begin_time“:1100“end_time“:3505“status_code“:0“text“:“哎,好的一订单大概多少钱啊“}“status_code“:200“version“:“2.0“}
{“finish“:0“request_id“:“76a6e062ec9b4db68f5f6016c7f700aa““result“:{“sentence_id“:1“begin_time“:1100“end_time“:-1“status_code“:1“text“:“哎,好的一订单大概多少钱“}“status_code“:200“version“:“2.0“}
*/
switch_event_t *event = NULL;
if (switch_event_create(&event SWITCH_EVENT_CUSTOM) == SWITCH_STATUS_SUCCESS) {
event->subclass_name = strdup(“asr“);
switch_event_add_header_string(event SWITCH_STACK_BOTTOM “Event-Subclass“ event->subclass_name);
switch_event_add_header_string(event SWITCH_STACK_BOTTOM “ASR-Response“ str->getResponse());
switch_event_add_header_string(event SWITCH_STACK_BOTTOM “Channel“ str->getId());
// switch_event_add_header_string(event SWITCH_STACK_BOTTOM,“uuid“ uuid)
switch_event_fire(&event);
}
}
void OnOperationFailed(NlsEvent* str void* para)
{
switch_log_printf(SWITCH_CHANNEL_LOG SWITCH_LOG_WARNING “ OnOperationFailed %s %s\n“ str->getId() str->getErrorMessage());
switch_event_t *event = NULL;
if (switch_event_create(&event SWITCH_EVENT_CUSTOM) == SWITCH_STATUS_SUCCESS) {
event->subclass_name = strdup(“asr“);
switch_event_add_hea
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 309 2018-09-11 17:27 asr64\.git\config
文件 73 2018-09-11 17:27 asr64\.git\desc
文件 23 2018-09-11 17:27 asr64\.git\HEAD
文件 478 2018-09-11 17:27 asr64\.git\hooks\applypatch-msg.sample
文件 896 2018-09-11 17:27 asr64\.git\hooks\commit-msg.sample
文件 3327 2018-09-11 17:27 asr64\.git\hooks\fsmonitor-watchman.sample
文件 189 2018-09-11 17:27 asr64\.git\hooks\post-update.sample
文件 424 2018-09-11 17:27 asr64\.git\hooks\pre-applypatch.sample
文件 1642 2018-09-11 17:27 asr64\.git\hooks\pre-commit.sample
文件 1348 2018-09-11 17:27 asr64\.git\hooks\pre-push.sample
文件 4898 2018-09-11 17:27 asr64\.git\hooks\pre-reba
文件 544 2018-09-11 17:27 asr64\.git\hooks\pre-receive.sample
文件 1492 2018-09-11 17:27 asr64\.git\hooks\prepare-commit-msg.sample
文件 3610 2018-09-11 17:27 asr64\.git\hooks\update.sample
文件 918 2018-09-11 17:27 asr64\.git\index
文件 240 2018-09-11 17:27 asr64\.git\info\exclude
文件 211 2018-09-11 17:27 asr64\.git\logs\HEAD
文件 211 2018-09-11 17:27 asr64\.git\logs\refs\heads\master
文件 211 2018-09-11 17:27 asr64\.git\logs\refs\remotes\origin\HEAD
文件 174 2018-09-11 17:27 asr64\.git\ob
文件 195687 2018-09-11 17:27 asr64\.git\ob
文件 3136 2018-09-11 17:27 asr64\.git\ob
文件 2608 2018-09-11 17:27 asr64\.git\ob
文件 215 2018-09-11 17:27 asr64\.git\ob
文件 685 2018-09-11 17:27 asr64\.git\ob
文件 215 2018-09-11 17:27 asr64\.git\ob
文件 159 2018-09-11 17:27 asr64\.git\ob
文件 88 2018-09-11 17:27 asr64\.git\ob
文件 169 2018-09-11 17:27 asr64\.git\ob
文件 167 2018-09-11 17:27 asr64\.git\ob
............此处省略272个文件信息
- 上一篇:Horner算法小程序
- 下一篇:词法分析语法分析实验报告及源码
相关资源
- DSP 语音识别程序 DTW MFCC
- 特定人语音识别技术在汽车控制上的
- labview语音识别程序
- 红枫叶号码魔方
- DTW语音识别算法
- 龙邱SYN7318非特定语音识别模块程序
- WFST-decoder
- 基于GEC210的语音识别控制
- 自动语音识别
- 语音识别系统源程序
- hbr640语音识别播放模块驱动
- VS2017环境集成百度语音识别API工程
- Spoken_Language_Processing微软黄学东
- 百度语音识别node服务器版demo
- CMU汉语普通话语音识别发音词典含多
- opensmile官方文档及对应语音特征的计
- Labview语音识别
- unity语音识别Word Detection
- 语音识别_STC_SNR6812 / SNR3512_UART.rar
- FUNDAMENTALS OF SPEECH RECOGNITION(语音识别
- kaldi入门资料整理
- 孤立词0-9的语音识别代码+报告
- LD3320语音识别
- kaldi中文资料_v0.4和thch30学习笔记.zi
- HTKbook-3.5版本,增加DNN识别
- 语音识别算法
- 语音识别代码
- kaldi的全部资料第二版
- 基于DSP的语音识别技术研究及实现
- 百度语音识别与语音合成官方demo
评论
共有 条评论