Files
xiaoxia-saas/tests/render_compare/__init__.py
T
CI Bot e7f9121381 test(render-compare): 灰度对比工具包 + 5个P1修复
新增灰度对比测试工具包 tests/render_compare/,包含:
- video_diff.py: SSIM + PSNR 像素对比
- audio_diff.py: 音频差值对比
- scenarios.py: 10个对比场景
- runner.py: 批量执行器 + StagingAPI + HTML报告
- README.md: 使用文档

5个P1修复:
P1-1 音频差值系统性偏低6dB:amix自动缩放音量导致相似度虚高
  → amix后加volume=2补偿
P1-2 Feature Flag污染线上配置:测试跑完不恢复原值
  → run_all用try/finally保证恢复原始配置,保存失败直接中止
P1-3 SSIM min值计算错误:混入汇总行掩盖最严重差异帧
  → 改为从stats_file(stdout)解析逐帧数据,avg/min都来自真实逐帧
P1-4 probe_has_audio语义反了:探测失败返回True
  → 探测失败返回False,保守认为无音频
P1-5 三套入口阈值不统一:函数默认/Runner默认/CLI默认各不一样
  → 统一到CompareRunner类常量:SSIM=0.95, PSNR=28dB, 音频=0.90
2026-07-13 07:03:42 +08:00

27 lines
807 B
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
"""灰度对比测试工具包.
用于新旧渲染引擎的批量对比测试,包含:
- video_diff: 视频像素对比(SSIM + PSNR
- audio_diff: 音频对比(差值 RMS
- scenarios: 预定义对比场景
- runner: 批量对比执行器 + HTML 报告
"""
from .video_diff import VideoDiffResult, compute_video_diff, save_diff_frame
from .audio_diff import AudioDiffResult, compute_audio_diff, extract_audio, probe_has_audio, probe_duration
from .scenarios import SCENARIOS, CompareScenario, get_scenarios_by_priority
__all__ = [
"VideoDiffResult",
"compute_video_diff",
"save_diff_frame",
"AudioDiffResult",
"compute_audio_diff",
"extract_audio",
"probe_has_audio",
"probe_duration",
"SCENARIOS",
"CompareScenario",
"get_scenarios_by_priority",
]