Ubuntu下使用科大讯飞SDK:配置共享库

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/seTaire/article/details/85163924

操作系统:Ubuntu16.04LTS

最近公司的项目需要用到科大讯飞的离线语音合成,使用SDK时遇到了两个问题。

1.编译c文件

2.导入动态链接库 .so文件

接下来详细说明一下流程。

1.科大讯飞下载SDK

         添加离线语音合成服务,并点亮图标

        SDK下载下来是这样的

 

        解压

2.导入动态链接库

        打开 /etc/ld.so.conf

sudo gedit /etc/ld.so.conf

 
 

       在 libs/x64 有libmsc.so 文件,将它的路径(不包含文件名)添加到  ld.so.conf

include /home/tuweifeng/Desktop/textToSpeech/libs/x64
 
 

       接着刷新一下 ldconfig 缓存

sudo ldconfig -v
 
 

 

3.编译

        进入目录samples/tts_offline_sample,有4个文件,如下

         打开命令行敲入  sh  64bit_make.sh,执行结果如下


 
 
  1. tuweifeng@tuweifeng-Vostro- 3668 :~/Desktop/textToSpeech/samples/tts_offline_sample$ sh 64bit_make.sh
  2. gcc -c -g -Wall -I../../ include tts_offline_sample.c -o tts_offline_sample.o
  3. tts_offline_sample. c: In function ‘text_to_speech’:
  4. tts_offline_sample. c: 83 : 55: warning: implicit declaration of function ‘strlen’ [-Wimplicit-function-declaration]
  5. ret = QTTSTextPut(sessionID, src_text, (unsigned int)strlen(src_text), NULL);
  6. ^
  7. tts_offline_sample. c: 83 : 55: warning: incompatible implicit declaration of built- in function ‘strlen’
  8. tts_offline_sample. c: 83 : 55: note: include ‘<string.h>’ or provide a declaration of ‘strlen’
  9. gcc -g -Wall -I../../ include tts_offline_sample.o -o ../../bin/tts_offline_sample -L../../libs/x64 -lmsc -lrt -ldl -lpthread -lstdc++
  10. tuweifeng@tuweifeng-Vostro- 3668 :~/Desktop/textToSpeech/samples/tts_offline_sample$

       如果编译成功会在 samples/tts_offline_sample 和 bin 分别出现 tts_offline_sample.o 和 可执行文件tts_offline_sample。

       samples/tts_offline_sample生成了 tts_offline_sample.o 文件

        bin 生成了 tts_offline_sample 可执行文件

        接着我们进入 bin 目录,双击 tts_offline_sample 或者在命令行敲入 ./tts_offline_sample 回车


 
 
  1. tuweifeng@tuweifeng-Vostro- 3668 :~/Desktop/textToSpeech/bin$ ./tts_offline_sample
  2. ###########################################################################
  3. ## 语音合成(Text To Speech,TTS)技术能够自动将任意文字实时转换为连续的 ##
  4. ## 自然语音,是一种能够在任何时间、任何地点,向任何人提供语音信息服务的 ##
  5. ## 高效便捷手段,非常符合信息时代海量数据、动态更新和个性化查询的需求。 ##
  6. ###########################################################################
  7. 开始合成 ...
  8. 正在合成 ...
  9. 合成完毕
  10. 按任意键退出 ...

        此时我们再看 bin 目录,我们合成了一个示例音频。

 虽然免费的离线语音合成的声音很粗糙,但已经能够满足我们的需求,接下来我会用 Python 导入动态链接库来进行离线的语音合成。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值