返回顶部
s

senseaudio-audio-quality-checker音频质量检测

Analyze audio quality, detect noise types, and provide improvement recommendations. Use when users need to check audio quality, validate recordings, or identify audio problems.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.2
安全检测
已通过
254
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

senseaudio-audio-quality-checker

SenseAudio 音频质量检测器

分析音频文件以检测质量问题,识别噪音类型,并提供改进建议。

该技能的功能

  • - 检测音频文件中的噪音和质量问题
  • 识别特定噪音类型(背景噪音、嗡嗡声、静电噪音等)
  • 提供噪音严重程度评级
  • 生成质量评估报告
  • 推荐音频质量改进方案

前置条件

安装所需的 Python 包:

bash
pip install requests

实施指南

步骤 1:分析音频文件

python
import os
import requests

APIKEY = os.environ[SENSEAUDIOAPI_KEY]

def checkaudioquality(audio_file):
url = https://api.senseaudio.cn/v1/audio/analysis

headers = {Authorization: fBearer {API_KEY}}
files = {file: open(audio_file, rb)}
data = {model: sense-asr-check}

response = requests.post(url, headers=headers, files=files, data=data)
return response.json()

示例响应:

{

audio_info: {

duration: 5230,

format: wav

},

result: {

has_noise: true,

noise_score: 0.65,

severity: moderate,

noisetypes: [backgroundnoise, hum],

analysis: Audio contains moderate background noise and electrical hum

}

}

步骤 2:解析质量报告

python
def parsequalityreport(analysis_result):
audioinfo = analysisresult.get(audio_info, {})
result = analysis_result.get(result, {})

report = {
durationms: audioinfo.get(duration),
format: audio_info.get(format),
hasissues: result.get(hasnoise, False),
noisescore: result.get(noisescore, 0),
severity: result.get(severity, none),
noisetypes: result.get(noisetypes, []),
analysis: result.get(analysis, ),
recommendations: generate_recommendations(result)
}

return report

步骤 3:生成建议

python
def generaterecommendations(qualityresult):
recommendations = []

noisescore = qualityresult.get(noise_score, 0)
noisetypes = qualityresult.get(noise_types, [])
severity = quality_result.get(severity, none)

# 基于严重程度的通用建议
if severity == severe:
recommendations.append(在更安静的环境中重新录制音频)
recommendations.append(使用专业音频设备)
elif severity == moderate:
recommendations.append(在后处理中应用降噪)
recommendations.append(考虑使用更好的麦克风)
elif severity == mild:
recommendations.append(轻微降噪可改善质量)

# 基于噪音类型的特定建议
if backgroundnoise in noisetypes:
recommendations.append(在更安静的位置录制)
recommendations.append(使用声学处理(泡沫板、窗帘))

if hum in noise_types:
recommendations.append(检查电气干扰)
recommendations.append(使用平衡音频线缆)
recommendations.append(确保设备正确接地)

if static in noise_types:
recommendations.append(检查线缆连接)
recommendations.append(更换故障线缆或设备)

if windnoise in noisetypes:
recommendations.append(使用防风罩或防喷罩)
recommendations.append(在室内或有遮挡的位置录制)

if echo in noise_types:
recommendations.append(添加声学处理以减少反射)
recommendations.append(靠近麦克风录制)

return recommendations

步骤 4:批量质量检查

python
def batchqualitycheck(audio_files):
results = []

for audiofile in audiofiles:
try:
analysis = checkaudioquality(audio_file)
report = parsequalityreport(analysis)

results.append({
file: audio_file,
status: analyzed,
report: report
})
except Exception as e:
results.append({
file: audio_file,
status: error,
error: str(e)
})

return results

高级功能

质量评分系统

python
def calculatequalityscore(analysis_result):
计算整体质量评分(0-100)
noisescore = analysisresult.get(noise_score, 0)
severity = analysis_result.get(severity, none)

# 基础分数
base_score = 100

# 基于噪音分数的扣分
noisepenalty = noisescore * 50 # 最高扣50分

# 严重程度的额外扣分
severity_penalties = {
none: 0,
mild: 10,
moderate: 25,
severe: 40
}
severitypenalty = severitypenalties.get(severity, 0)

finalscore = max(0, basescore - noisepenalty - severitypenalty)

return {
score: round(final_score, 1),
grade: getqualitygrade(final_score)
}

def getqualitygrade(score):
if score >= 90:
return 优秀
elif score >= 75:
return 良好
elif score >= 60:
return 一般
elif score >= 40:
return 较差
else:
return 不可接受

对比分析

python
def compareaudioquality(originalfile, processedfile):
比较处理前后的质量

originalanalysis = checkaudioquality(originalfile)
processedanalysis = checkaudioquality(processedfile)

originalscore = calculatequalityscore(originalanalysis[result])
processedscore = calculatequalityscore(processedanalysis[result])

comparison = {
original: {
file: original_file,
score: original_score,
noisescore: originalanalysis[result][noise_score]
},
processed: {
file: processed_file,
score: processed_score,
noisescore: processedanalysis[result][noise_score]
},
improvement: {
scoredelta: processedscore[score] - original_score[score],
noisereduction: originalanalysis[result][noisescore] - processedanalysis[result][noise_score]
}
}

return comparison

自动质量门控

python
def qualitygatecheck(audiofile, minscore=70):
检查音频是否达到最低质量阈值

analysis = checkaudioquality(audio_file)
quality = calculatequalityscore(analysis[result])

passed = quality[score] >= min_score

return {
passed: passed,
score: quality[score],
grade: quality[grade],
threshold: min_score,
analysis: analysis
}

详细报告生成

python
def generatedetailedreport(audio_file):
生成综合质量报告

analysis = checkaudioquality(audio_file)
report = parsequalityreport(analysis)
quality = calculatequalityscore(analysis[result])

detailed_report = f

音频质量报告

文件信息

  • - 文件: {audiofile}
  • 时长: {report[durationms]/1000:.2f} 秒
  • 格式: {report[format]}

质量评估

  • - 总体评分: {quality[score]}/100
  • 等级: {quality[grade]}
  • 噪音分数: {report[noise_score]:.2f}
  • 严重程度: {report[severity]}

检测到的问题

{- + \\n- .join(report[noisetypes]) if report[noisetypes] else 未检测到问题}

分析

{report[analysis]}

建议

{- + \\n- .join(report[recommendations]) if report[recommendations] else 无建议}

return detailed_report

使用场景

录制前验证

python
def validaterecordingenvironment():
在实际录制前测试录制环境

# recordtestaudio() 是一个占位符——使用您偏好的音频捕获库(如 sounddevice、pyaudio)录制短片段。
testfile = recordtest_audio(duration=5)

# 检查质量
gateresult = qualitygatecheck(testfile, min_score=75)

if gate_result[passed]:
return {
ready: True,
message: 环境适合录制
}
else:
return {
ready: False,
message: 环境需要改进,
recommendations: gate_result[analysis

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 audio-quality-checker-1776107522 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 audio-quality-checker-1776107522 技能

通过命令行安装

skillhub install audio-quality-checker-1776107522

下载

⬇ 下载 senseaudio-audio-quality-checker v1.0.2(免费)

文件大小: 3.94 KB | 发布时间: 2026-4-15 11:45

v1.0.2 最新 2026-4-15 11:45
- Updated required credentials environment variable to SENSEAUDIO_API_KEY for consistency.
- Added Openclaw-compatible metadata for improved integration.
- Specified prerequisite Python package installation instructions.
- No functional logic changes; documentation and metadata improvements only.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部