-
Notifications
You must be signed in to change notification settings - Fork 3.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUG] 软件缓存导致的语音朗读停止 #2251
Comments
发一下日志 |
崩溃日志 无 书架日志,见截图,截图时间 18:12 分,但是日志上显示的错误的是18:04 分,我录屏的时间是18:10 1.mp4视频请开声音听,因为涉及到朗读效果。 解释下录屏的操作,就是那一段一旦被跳过了,那么只要不清理缓存,无论你重试多少次,那一段都不会读,只要清理了缓存,那么就可以正常读,我是由此排除完全是TTS问题的。 最近的版本的不知道是阅读还是tts原因,经常跳过某一段不读,一章有2段以上,非常影响听书效果。 当然了,TTS也有问题,用EDGE接口比较稳定版本可以稳定读几小时,但是Azure本本就是可以换语音语调的版本就不稳定,问题就很容易复现。以前是经常读到某一章开头就停下,那时候如果手动继续朗读,就会跳过标题继续读,症状和我现在录屏一样的。 |
你点一下日志里面的一条记录然后截图给我看看 |
TTS 服务在转换语音时是有一定概率出错的(和Azure的API有关)。我修改了下代码让其在失败后进行重试。 可以重新部署一下最新的版本,看看能不能缓解跳段的状况。 |
收到,已经重新部署并测试。 不过朗读这玩意一般要连续听好久才复现,下次反馈可能明天。 |
这个问题似乎还是没解决,我是在朗读引擎里直接设置的 Azure 的 API,发现的问题是朗读一段时间后就卡住了,参考 #2251 (comment) 提到的问题,我做了一些测试。 我代理了Azure 的 API,以下是代码: # web.py
# Usage:
# pip install aiohttp
# python web.py
import logging
from aiohttp import web, ClientSession
routes = web.RouteTableDef()
logger = logging.getLogger('proxy')
logging.basicConfig(level=logging.INFO)
@routes.post('/')
async def api(request: web.Request):
sess: ClientSession = request.app["sess"]
data = await request.text()
logger.info(f'req {data}')
async with sess.post(
"https://eastasia.tts.speech.microsoft.com/cognitiveservices/v1",
data=data,
headers=request.headers,
) as res:
body = await res.read()
content_type = res.headers.get('Content-Type', 'application/octet-stream')
logger.info(f'res {res.status} {content_type} {len(body)}')
headers = {
'Content-Type': content_type,
}
# return web.Response(body=body, headers=headers, status=404)
return web.Response(body=body, headers=headers, status=res.status)
async def init_session(app: web.Application):
client = ClientSession(loop=app.loop)
app['sess'] = client
yield
await client.close()
app = web.Application()
app.cleanup_ctx.append(init_session)
app.add_routes(routes)
web.run_app(app) 复现步骤:
|
@YogiLiu |
@821938089 写了的,特意打印了日志确认 content-type 有值,是 不过需要注意的是,由于我并不知道 Azure API 到底是出什么问题,所以我的这个模拟和我真正遇到的问题又有些不同,我遇到的真实问题是朗读进度一直在某句话停住(红色字体一直不动),而模拟的情况是没有红色字体显示,所以不确定是否真的在朗读。 |
@YogiLiu 你用的是最新测试版吗 |
@821938089 这是我的配置 |
@YogiLiu 用最新测试版 |
@821938089 emmm...最新测试版在那里下载呢,抱歉我确实找不到 :(,README 里没写,官网的下载页面 3.0 链接也都失效了 |
@821938089 谢谢,已经安装了,先尝试一段时间,没注意到使用了工作流构建,抱歉 |
浏览器版本(web端反馈,先勾选浏览器,然后填版本号)
机型(如Redmi K30 Pro)
安卓版本(如Android 7.1.1)
阅读Legdao版本(我的-关于-版本,如3.20.112220)
网络环境(移动,联通,电信,移动宽带,联通宽带,电信宽带,等等..)
问题描述(简要描述发生的问题)
相关截图
复现步骤(详细描述导致问题产生的操作步骤,如果能稳定复现)
使用书源(填写URL或者JSON)
The text was updated successfully, but these errors were encountered: