音訊標註
通過波形視覺化分割音訊檔案併為時間區域分配標籤。
Potato 的音訊標註工具使標註者能夠通過基於波形的介面分割音訊檔案併為時間區域分配標籤。
功能
- 波形視覺化
- 基於時間的片段建立
- 為片段分配標籤
- 可變速度的播放控制
- 縮放和滾動導航
- 鍵盤快捷鍵
- 服務端波形快取
基本配置
yaml
annotation_schemes:
- name: "speakers"配置選項
| 欄位 | 類型 | 預設值 | 描述 |
|---|---|---|---|
name | string | 必填 | 標註的唯一識別符號 |
description | string | 必填 | 顯示給標註者的說明 |
annotation_type | string | 必填 | 必須為 "audio_annotation" |
mode | string | "label" | 標註模式:"label"、"questions" 或 "both" |
labels | list | 條件必填 | label 或 both 模式必填 |
segment_schemes | list | 條件必填 | questions 或 both 模式必填 |
min_segments | integer | 0 | 所需的最少片段數 |
max_segments | integer | null | 允許的最大片段數(null = 無限制) |
zoom_enabled | boolean | true | 啟用縮放控制 |
playback_rate_control | boolean | false | 顯示播放速度選擇器 |
標籤配置
yaml
labels:
- name: "speech"
color: "#3B82F6"
key_value: "1"
- name: "music"
color: "#10B981"
key_value: "2"
- name: "silence"
color: "#64748B"
key_value: "3"標註模式
標籤模式(預設)
片段接收分類標籤:
yaml
annotation_schemes:
- name: "emotion"問題模式
每個片段回答專門的問題:
yaml
annotation_schemes:
- name: "transcription"兩者兼用模式
將標籤與逐片段問卷結合:
yaml
annotation_schemes:
- name: "detailed_diarization"全域音訊配置
在配置檔案中配置波形處理:
yaml
audio_annotation:
waveform_cache_dir: "waveform_cache/"
waveform_look_ahead: 5
waveform_cache_max_size: 1000
client_fallback_max_duration: 1800| 欄位 | 描述 |
|---|---|
waveform_cache_dir | 快取波形資料的目錄 |
waveform_look_ahead | 預先計算的後續實例數量 |
waveform_cache_max_size | 快取波形檔案的最大數量 |
client_fallback_max_duration | 瀏覽器端波形生成的最大秒數(預設:1800) |
示例
說話人日誌
yaml
annotation_schemes:
- name: "diarization"聲音事件檢測
yaml
annotation_schemes:
- name: "sound_events"轉錄稽核
yaml
annotation_schemes:
- name: "transcription_review"鍵盤快捷鍵
| 按鍵 | 操作 |
|---|---|
Space | 播放/暫停 |
← / → | 後退/前進 |
[ | 標記片段起始 |
] | 標記片段結束 |
Enter | 建立片段 |
Delete | 刪除選中的片段 |
1-9 | 選擇標籤 |
+ / - | 放大/縮小 |
0 | 適應檢視 |
資料格式
輸入資料
您的資料檔案應包含音訊檔案路徑或 URL:
json
[
{
"id": "audio_001",
"audio_url": "https://example.com/audio/recording1.mp3"
},
{
"id": "audio_002",
"audio_url": "/data/audio/recording2.wav"
}
]配置音訊欄位:
yaml
item_properties:
id_key: id
text_key: audio_url輸出格式
json
{
"id": "audio_001",
"annotations": {
"diarization": [
{
"start": 0.0,
"end": 5.5,
"label": "Interviewer"
},
{
"start": 5.5,
"end": 12.3,
"label": "Guest"
},
{
"start": 12.3,
"end": 14.0,
"label": "Overlap"
}
]
}
}在問題模式下,片段包含巢狀的回覆:
json
{
"start": 0.0,
"end": 5.5,
"transcript": "Hello and welcome to the show.",
"quality": "Clear"
}支援的音訊格式
- MP3(推薦)
- WAV
- OGG
- M4A
最佳實踐
- 預快取波形 - 對大型資料集使用服務端快取
- 啟用播放控制 - 可變速度有助於精確分割
- 使用鍵盤快捷鍵 - 比點選快得多
- 定義清晰的邊界 - 明確什麼構成片段的起始/結束
- 選擇合適的模式 - 分類使用 "label",詳細標註使用 "questions"
- 設定片段限制 - 使用
min_segments確保覆蓋