Linux 下使用使用科大讯飞语音合成SDK笔记

  • Linux 下使用科大讯飞语音合成的功能
    首先我们需要先到科大讯飞注册并在控制台中选择创建响应的应用,我们开通语音合成并选择相应的SDK进行下载。下载之后可以得到一个Zip包,解压后可以看到有这些内容。

    Linux 下使用使用科大讯飞语音合成SDK笔记_第1张图片
    image

    查看README文件可以看到对应的目录结构介绍,我们需要用到的是sample目录下的在线语音合成功能。(tts_online_sample,在线语音测试用例)
    Linux 下使用使用科大讯飞语音合成SDK笔记_第2张图片
    image

    进入到 tts_online_sample 目录下,里面是编译的相关文件,根据你的系统,选择对应的操作文件执行编译,如果是64位的,则执行 source 64bit_make.sh ,如果你是32位,则执行 source 32bit_make.sh ,然后在 bin 目录下会生成一个tts_online_sample 的可执行文件,直接执行该文件,在当前目录下会生成一个 tts_sample.wav 的文件。测试用例完成。接下来我们要把它修改成在执行时直接接受参数的可执行文件。

  • 操作步骤:

  • 先将 tts_sample_online 文件删除

  • 选择 libs 目录与你使用的系统相对应的动态库,将 libmsc.so 放到 /usr/lib 目录下,并给予其他用户可读写的权限。

  • 进入到 tts_online_sample 目录下,1)修改对应的 bit_make.shexport LD_LIBRARY_PATH=$(pwd)/../../libs/x64/export LD_LIBRARY_PATH=/usr/lib/,2)修改MakeFile中 DIR_LIB = ../../libsDIR_LIB = /usr/lib,3)修改 tts_sample_online.c 中的接受参数部分。即将以下部分:

const char* session_begin_params = "voice_name = xiaoyan, text_encoding = utf8, sample_rate = 16000, speed = 50, volume = 50, pitch = 50, rdn = 2";
   const char* filename             = "tts_sample.wav"; //合成的语音文件名称
   const char* text                 = "亲爱的用户,您好,这是一个语音合成示例,感谢您对科大讯飞语音技术的支持!科大讯飞是亚太地区最大的语音上市公司,股票代码:002230"; //合成文本

修改为:

const char* session_begin_params = argv[1]; //参数设置
   const char* filename             = argv[2]; //合成的语音文件名称
   const char* text                 = argv[3]; //合成文本
  • 然后再次执行编译操作 source 64bit_make.shsource 32bit_make.sh,在bin目录下会再次生成一个可执行文件。
  • 测试语音合成可执行文件是否正常,进入bin目录下,执行 ./tts_online_sample "voice_name = xiaoyan, text_encoding = utf8, sample_rate = 16000, speed = 50, volume = 50, pitch = 50, rdn = 2" 'mytest.wav' ' 晚上好呀!',正常播放mytest.wav,编译成功。
    Linux 下使用使用科大讯飞语音合成SDK笔记_第3张图片
    image

    php 可以通过使用 system 等函数来实现调用科大讯飞语音合成功能。

传送门:

  • PHP使用科大讯飞语音合成WebApi
  • 科大讯飞在线语音合成体验
  • 科大讯飞在线语音合成开发文档

你可能感兴趣的:(Linux 下使用使用科大讯飞语音合成SDK笔记)