ubuntu16.04安装科大讯飞Linux SDK实现离线语音合成(TTS)

Song1896 次浏览0个评论2019年05月11日

一、新建工程文件夹 在当前目录建立一个新目录demo:

$ mkdir demo

然后前往科大讯飞SDK下载SDK

二、配置工程属性

  • SDKbin,include,libs文件夹复制到新建工程demo文件夹下
  • demo目录新建文件demo.c,详细源码请参考samples中对应的语音示例,修改一下文件路径如下:
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <errno.h>
#include "./include/qtts.h"
#include "./include/msp_cmn.h"
#include "./include/msp_errors.h"
  • 复制samples中的Makefiledemo目录下,修改路径和目标文件即可,如下:
#common makefile header

DIR_INC = ./include
DIR_BIN = ./bin
DIR_LIB = ./libs

TARGET  = demo
BIN_TARGET = $(DIR_BIN)/$(TARGET)

CROSS_COMPILE =
CFLAGS = -g -Wall -I$(DIR_INC)

ifdef LINUX64
LDFLAGS := -L$(DIR_LIB)/x64
else
LDFLAGS := -L$(DIR_LIB)/x86
endif
LDFLAGS += -lmsc -lrt -ldl -lpthread -lstdc++

OBJECTS := $(patsubst %.c,%.o,$(wildcard *.c))

$(BIN_TARGET) : $(OBJECTS)
        $(CROSS_COMPILE)gcc $(CFLAGS) $^ -o $@ $(LDFLAGS)

%.o : %.c
        $(CROSS_COMPILE)gcc -c $(CFLAGS) $< -o $@
clean:
        @rm -f *.o $(BIN_TARGET)

.PHONY:clean

#common makefile foot
  • 复制samples目录下的32bit_make.sh64bit_make.sh拷贝到demo目录下,修改libmsc.so库搜索路径如下:

    #编译64位可执行文件
    make clean;make LINUX64=1
    #设置libmsc.so库搜索路径
    export LD_LIBRARY_PATH=$(pwd)/libs/x64/
  • demo目录下,执行source 32bit_make.shsource 64bit_make.sh完成编译

  • cdbin目录下运行目标文件:

./demo

SDK启动后,bin/msc目录下会生成日志(注意:msc文件夹下需有msc.cfg文件)


root@ubuntu:~/demo/bin# ./demo 

###########################################################################
## 语音合成(Text To Speech,TTS)技术能够自动将任意文字实时转换为连续的 ##
## 自然语音,是一种能够在任何时间、任何地点,向任何人提供语音信息服务的  ##
## 高效便捷手段,非常符合信息时代海量数据、动态更新和个性化查询的需求。  ##
###########################################################################

开始合成 ...
正在合成 ...

合成完毕
按任意键退出 ...

常见错误

./tts_offline_sample: error while loading shared libraries: libmsc.so: cannot open shared object file: No such file or directory

这个问题你可以配置跟着上面重新配置一下啊。

参考:SDK导入

本文转自:ubuntu16.04安装科大讯飞Linux SDK实现离线语音合成(TTS)

提交评论

请登录后评论

用户评论

    当前暂无评价,快来发表您的观点吧...

更多相关好文

    当前暂无更多相关好文推荐...