服务器操作系统
ubuntu系统
语音合成和测试及语音文件目录
语音合成测试的打包目录放到服务器的一个目录内,举例:
/home/usr/yinpin/
里面包含测试程序和语音源文件,以及生产文件
语音合成:wavTest
语音测试:aec,pesq
测试语音文件:aec.wav, voice.wav[源文件], ref.wav【对比文件】, mic.wav【合成文件】, or.wav
前端部署
把前端打包文件放到服务器上的apache或者nginx服务器所在的目录,一般ubuntu系统安装后自带apache2
把index.html放到:
/var/www/html/
把dist文件夹放到:
/var/www/html/
建立符号链接
在前端测试页面的静态目录里建立几个符号链接,指向测试目录的目标语音文件,具体如下:
符号链接的语法是
ln -s 源文件 目的文件
root@server:/home/usr/yinpin# ls /var/www/html/dist/static/assets/media/ -l
total 0
lrwxrwxrwx 1 root root 24 Jan 17 16:33 aec2.wav -> /home/usr/yinpin/aec.wav
lrwxrwxrwx 1 root root 24 Jan 17 16:33 aec.wav -> /home/usr/yinpin/aec.wav
lrwxrwxrwx 1 root root 24 Jan 17 16:27 mic2.wav -> /home/usr/yinpin/mic.wav
lrwxrwxrwx 1 root root 24 Jan 17 16:27 mic.wav -> /home/usr/yinpin/mic.wav
lrwxrwxrwx 1 root root 24 Jan 17 16:32 ref2.wav -> /home/usr/yinpin/ref.wav
lrwxrwxrwx 1 root root 24 Jan 17 16:32 ref.wav -> /home/usr/yinpin/ref.wav
lrwxrwxrwx 1 root root 26 Jan 17 16:21 voice2.wav -> /home/usr/yinpin/voice.wav
lrwxrwxrwx 1 root root 26 Jan 17 16:21 voice.wav -> /home/usr/yinpin/voice.wav
问题
解决apache2 遇到F5导致404的问题
参照/etc/apche2/httpd.conf apache2.conf 的配置
httpd.conf配置
LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so
LoadModule headers_module /usr/lib/apache2/modules/mod_headers.so
<Directory /var/www/html>
Order Allow,Deny
Allow from all
AllowOverride All
</Directory>
<FilesMatch “\.(css|js|swf|php|htm|html|wav)$”>
Header set Cache-Control "private, no-cache, no-store, proxy-revalidate, no-transform"
Header set Pragma "no-cache"
</FilesMatch>
apache2.conf 配置
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride all
Require all granted
</Directory>
AccessFileName .htaccess
Include httpd.conf
在index.html 根目录增加 .htaccess
后端部署
安装.net core SDK 3.1
使用 APT 进行安装可通过几个命令来完成。 安装 .NET 之前,请运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加包存储库。
打开终端并运行以下命令:
wget https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
安装 SDK
.NET Core SDK 使你可以通过 .NET Core 开发应用。 如果安装 .NET Core SDK,则无需安装相应的运行时。 若要安装 .NET Core SDK,请运行以下命令:
sudo apt-get update; \
sudo apt-get install -y apt-transport-https && \
sudo apt-get update && \
sudo apt-get install -y dotnet-sdk-3.1
然后shell下查看 dotnet命令有了说明安装成功了。
发布后端
把后端打包文件放到服务器上一个目录,举例:
/var/www/html/api/
配置语音合成文件目录
修改文件cat /var/www/html/api/appsettings.json
FilePath": "/home/usr/yinpin/",
这个参数值,修改成语音合成文件所在目录。
配置启动服务
参考
root@server:/home/usr/yinpin# cat /etc/systemd/system/kestrel-mywebsite.service
[Unit]
Description=MyWebSite a .NET Core Web App running on Ubuntu
[Service]
WorkingDirectory=/var/www/html/api/
ExecStart=/usr/bin/dotnet /var/www/html/api/PlaycubeApi.dll
Restart=always
RestartSec=10
SyslogIdentifier=dotnet-mywebsite
User=root
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false
[Install]
WantedBy=multi-user.target
启用服务
#开机启动.NET服务
systemctl enable kestrel-mywebsite.service
#启动.NET服务
systemctl start kestrel-mywebsite.service
#检查服务是否正常运行
systemctl status kestrel-mywebsite.service
#检查网站是否正常访问,正常将会返回200
curl -I localhost:5000
#更新重新上传dll需重启服务
systemctl restart kestrel-mywebsite.service
#查看端口占用
lsof -i:80
使用
上传文件
点上传按钮可上传 aec,voice.wav, ref.wav 文件, 其中voice.wav, ref.wav这两个文件的名称需要固定。
合成
点合成音频进行合成测试,在合成之前需要输入系数α,范围【0,1】
评估测试
点评估按钮进行测试
播放测试
可以播放4个指定的音频
下载
可下载aec.wav