mirror of
https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI.git
synced 2026-08-29 10:09:32 +02:00
47 lines
1.2 KiB
Python
47 lines
1.2 KiB
Python
import math
|
||
|
||
from i18n.i18n import I18nAuto
|
||
|
||
|
||
i18n = I18nAuto()
|
||
|
||
|
||
def should_report(index, total, max_updates=12):
|
||
if total <= 0:
|
||
return False
|
||
if total <= max_updates:
|
||
return True
|
||
interval = max(1, math.ceil(total / max_updates))
|
||
return index == 0 or index + 1 == total or (index + 1) % interval == 0
|
||
|
||
|
||
def batch_status(title, current, total, success, failed, latest="", failures=None):
|
||
if total <= 0:
|
||
state = i18n("等待输入")
|
||
elif current >= total:
|
||
state = i18n("已完成")
|
||
else:
|
||
state = i18n("处理中")
|
||
lines = [
|
||
"【%s】" % title,
|
||
"%s:%s" % (i18n("状态"), state),
|
||
"%s:%s/%s | %s:%s | %s:%s"
|
||
% (
|
||
i18n("进度"),
|
||
current,
|
||
total,
|
||
i18n("成功"),
|
||
success,
|
||
i18n("失败"),
|
||
failed,
|
||
),
|
||
]
|
||
if latest:
|
||
lines.append("%s:%s" % (i18n("当前"), latest))
|
||
if failures:
|
||
lines.append("%s:" % i18n("失败记录"))
|
||
lines.extend(failures[-10:])
|
||
if len(failures) > 10:
|
||
lines.append(i18n("……仅显示最近10条失败记录"))
|
||
return "\n".join(lines)
|