feat(docs-i18n): translate all documentation into 20 languages

All 181 docs markdown files translated into 20 languages (apps/docs/<locale>/**). Companion to the i18n code PR; admin-merged because the file count exceeds GitHub's per-PR CI trigger limit. Validated by pnpm i18n:check (all surfaces, 0 stale/missing) and a clean all-locale docs build.
This commit is contained in:
SnapOtter
2026-07-11 13:52:47 +08:00
committed by GitHub
parent 00b651c9f8
commit 4963ab3bbd
3620 changed files with 306134 additions and 0 deletions
@@ -0,0 +1,49 @@
---
description: "在單聲道與立體聲之間轉換,或交換左右聲道。"
i18n_source_hash: 4f5cd6b38c83
i18n_provenance: human
i18n_output_hash: fc0f08fae5fd
---
# 音訊聲道 {#audio-channels}
在單聲道與立體聲配置之間轉換音訊,或交換立體聲檔案的左右聲道。
## API 端點 {#api-endpoint}
`POST /api/v1/tools/audio/audio-channels`
接受包含一個音訊檔案與一個 JSON `settings` 欄位的 multipart form data。
## 參數 {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| mode | string | Yes | - | 聲道操作:`stereo-to-mono``mono-to-stereo``swap` |
## 範例請求 {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/audio-channels \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3" \
-F 'settings={"mode": "stereo-to-mono"}'
```
## 範例回應 {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 2300000
}
```
## 附註 {#notes}
- `stereo-to-mono` 會把兩個聲道混成單一單聲道音軌。
- `mono-to-stereo` 會把單聲道複製到左右兩個聲道。
- `swap` 會交換立體聲檔案的左右聲道。
- 輸出通常會保留輸入的容器格式。AAC 輸入會寫成 M4A,而僅能解碼但不受支援的輸入會退回 MP3。
@@ -0,0 +1,73 @@
---
description: "檢視、編輯或移除音訊中繼資料標籤(ID3)。"
i18n_source_hash: 0717018e11cb
i18n_provenance: human
i18n_output_hash: d6159db82b94
---
# 音訊中繼資料 {#audio-metadata}
檢視、編輯或移除音訊中繼資料標籤,例如標題、演出者與專輯(ID3 及類似的標籤格式)。
## API 端點 {#api-endpoint}
`POST /api/v1/tools/audio/audio-metadata`
接受包含一個音訊檔案與一個 JSON `settings` 欄位的 multipart form data。
## 參數 {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| strip | boolean | No | `false` | 移除所有現有的中繼資料標籤 |
| title | string | No | - | 設定標題標籤(最多 500 個字元) |
| artist | string | No | - | 設定演出者標籤(最多 500 個字元) |
| album | string | No | - | 設定專輯標籤(最多 500 個字元) |
## 範例請求 {#example-request}
編輯中繼資料標籤:
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/audio-metadata \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3" \
-F 'settings={"title": "My Song", "artist": "Artist Name", "album": "Album Name"}'
```
移除所有中繼資料:
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/audio-metadata \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3" \
-F 'settings={"strip": true}'
```
## 範例回應 {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 4480000,
"metadata": {
"container": "mp3",
"durationS": 245.3,
"bitrateKbps": 192,
"tags": {
"title": "My Song",
"artist": "Artist Name",
"album": "Album Name"
}
}
}
```
## 附註 {#notes}
- 回應包含一個 `metadata` 物件,內含容器格式、時長、位元率與目前的標籤。
-`strip``true` 時,所有標籤欄位都會被忽略,且每個現有標籤都會被移除。
- 只有你提供的標籤會被更新;未指定的標籤維持不變。
- 輸出格式與輸入格式相同。
@@ -0,0 +1,48 @@
---
description: "用倍率加速或放慢音訊播放。"
i18n_source_hash: e39ba662e594
i18n_provenance: human
i18n_output_hash: c02df349a775
---
# 音訊速度 {#audio-speed}
透過套用速度倍率來加速或放慢音訊播放。
## API 端點 {#api-endpoint}
`POST /api/v1/tools/audio/audio-speed`
接受包含一個音訊檔案與一個 JSON `settings` 欄位的 multipart form data。
## 參數 {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| factor | number | No | `1.5` | 速度倍率(0.25 至 4)。小於 1 會放慢;大於 1 會加速。 |
## 範例請求 {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/audio-speed \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3" \
-F 'settings={"factor": 2}'
```
## 範例回應 {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 2250000
}
```
## 附註 {#notes}
- 倍率為 `0.25` 時以四分之一速度播放(時長變 4 倍)。倍率為 `4` 時以四倍速度播放(時長變為 1/4)。
- 速度改變時音高會被保留(時間伸縮)。若要獨立調整音高,請使用 pitch-shift。
- 輸出通常會保留輸入的容器格式。AAC 輸入會寫成 M4A,而僅能解碼但不受支援的輸入會退回 MP3。
@@ -0,0 +1,49 @@
---
description: "在 MP3、WAV、OGG、FLAC 與 M4A 格式之間轉換音訊。"
i18n_source_hash: fd02c059e6a9
i18n_provenance: human
i18n_output_hash: b364a00de332
---
# 轉換音訊 {#convert-audio}
在常見格式之間轉換音訊檔案,包含 MP3、WAV、OGG、FLAC 與 M4A,並可設定輸出位元率。
## API 端點 {#api-endpoint}
`POST /api/v1/tools/audio/convert-audio`
接受包含一個音訊檔案與一個 JSON `settings` 欄位的 multipart form data。
## 參數 {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| format | string | No | `"mp3"` | 輸出格式:`mp3``wav``ogg``flac``m4a` |
| bitrateKbps | integer | No | `192` | 輸出位元率(kbps)(32 至 320 |
## 範例請求 {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/convert-audio \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3" \
-F 'settings={"format": "flac", "bitrateKbps": 256}'
```
## 範例回應 {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.flac",
"originalSize": 4500000,
"processedSize": 8200000
}
```
## 附註 {#notes}
- 支援的輸入格式包含 MP3、WAV、OGG、FLAC、AAC、M4A、WMA、AIFF 與 OPUS。
- 位元率只適用於有損格式(MP3、OGG、M4A)。像 WAV 與 FLAC 這類無損格式會忽略此設定。
- 輸出檔名會保留原始名稱並換上新的副檔名。
+49
View File
@@ -0,0 +1,49 @@
---
description: "為音訊加入淡入與淡出效果。"
i18n_source_hash: 86856451ecb8
i18n_provenance: human
i18n_output_hash: 5677aad0cd3d
---
# 淡化音訊 {#fade-audio}
在音訊檔案的開頭與結尾加入淡入與淡出效果。
## API 端點 {#api-endpoint}
`POST /api/v1/tools/audio/fade-audio`
接受包含一個音訊檔案與一個 JSON `settings` 欄位的 multipart form data。
## 參數 {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| fadeInS | number | No | `1` | 淡入時長(秒)(0 至 30) |
| fadeOutS | number | No | `1` | 淡出時長(秒)(0 至 30) |
## 範例請求 {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/fade-audio \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3" \
-F 'settings={"fadeInS": 2, "fadeOutS": 3}'
```
## 範例回應 {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 4500000
}
```
## 附註 {#notes}
- 將任一值設為 `0` 即可略過該淡化方向。至少要有一個大於 0。
- 若淡化時長超過音訊長度,會被夾限至音訊長度。
- 輸出通常會保留輸入的容器格式。AAC 輸入會寫成 M4A,而僅能解碼但不受支援的輸入會退回 MP3。
@@ -0,0 +1,51 @@
---
description: "將多個音訊檔案合併成一個連續音軌。"
i18n_source_hash: defa993d3f87
i18n_provenance: human
i18n_output_hash: 7bfd8bb1cd69
---
# 合併音訊 {#merge-audio}
將兩個以上的音訊檔案合併成單一連續音軌,依上傳順序串接。
## API 端點 {#api-endpoint}
`POST /api/v1/tools/audio/merge-audio`
接受包含多個音訊檔案與一個 JSON `settings` 欄位的 multipart form data。
## 參數 {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| format | string | No | `"mp3"` | 輸出格式:`mp3``wav``flac``m4a` |
## 範例請求 {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/merge-audio \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@intro.mp3" \
-F "file=@main.mp3" \
-F "file=@outro.mp3" \
-F 'settings={"format": "mp3"}'
```
## 範例回應 {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/merged.mp3",
"originalSize": 9500000,
"processedSize": 9200000
}
```
## 附註 {#notes}
- 每次請求接受 2 至 10 個音訊檔案。
- 檔案依上傳順序串接。
- 所有輸入檔案都會重新編碼為所選的輸出格式與取樣率,以達成無縫接合。
- 支援混用輸入格式(例如一個 WAV 加一個 MP3)。
@@ -0,0 +1,48 @@
---
description: "以 FFT 為基礎的降噪來減少音訊的背景雜訊。"
i18n_source_hash: 57cbdbd449aa
i18n_provenance: human
i18n_output_hash: b48fa6dd7ac4
---
# 降噪 {#noise-reduction}
以 FFT 為基礎的降噪、搭配可選強度來減少音訊檔案中的背景雜訊。
## API 端點 {#api-endpoint}
`POST /api/v1/tools/audio/noise-reduction`
接受包含一個音訊檔案與一個 JSON `settings` 欄位的 multipart form data。
## 參數 {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| strength | string | No | `"medium"` | 降噪強度:`light``medium``strong` |
## 範例請求 {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/noise-reduction \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3" \
-F 'settings={"strength": "strong"}'
```
## 範例回應 {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 4500000
}
```
## 附註 {#notes}
- `light` 保留較多細節但去除較少雜訊。`strong` 去除較多雜訊但可能引入細微的假影。
- 對背景雜訊一致的錄音(風扇嗡嗡聲、空調、靜電雜訊)效果最佳。
- 輸出通常會保留輸入的容器格式。AAC 輸入會寫成 M4A,而僅能解碼但不受支援的輸入會退回 MP3。
@@ -0,0 +1,46 @@
---
description: "將響度均化到廣播標準等級(EBU R128)。"
i18n_source_hash: 794d8cfa5ad8
i18n_provenance: human
i18n_output_hash: e0e9cb69d7f3
---
# 正規化音訊 {#normalize-audio}
使用 EBU R128 正規化(-16 LUFS)將音訊響度均化到廣播標準等級。
## API 端點 {#api-endpoint}
`POST /api/v1/tools/audio/normalize-audio`
接受包含一個音訊檔案與一個 JSON `settings` 欄位的 multipart form data。
## 參數 {#parameters}
此工具沒有可設定的參數。它會自動套用 EBU R128 響度正規化。
## 範例請求 {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/normalize-audio \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3"
```
## 範例回應 {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 4500000
}
```
## 附註 {#notes}
- 使用 EBU R128 響度標準,目標為 -16 LUFS。
- 非常適合 podcast、有聲書以及重視響度一致性的廣播內容。
- 來源取樣率會在輸出中保留。
- 輸出通常會保留輸入的容器格式。AAC 輸入會寫成 M4A,而僅能解碼但不受支援的輸入會退回 MP3。
@@ -0,0 +1,49 @@
---
description: "以半音為單位升高或降低音訊音高而不改變速度。"
i18n_source_hash: 2804d0eeecc8
i18n_provenance: human
i18n_output_hash: a5f38863f283
---
# 移調 {#pitch-shift}
以若干半音為單位升高或降低音訊檔案的音高,而不改變其播放速度。
## API 端點 {#api-endpoint}
`POST /api/v1/tools/audio/pitch-shift`
接受包含一個音訊檔案與一個 JSON `settings` 欄位的 multipart form data。
## 參數 {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| semitones | integer | No | `3` | 要移動的半音數(-12 至 12)。不可為零。 |
## 範例請求 {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/pitch-shift \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3" \
-F 'settings={"semitones": -5}'
```
## 範例回應 {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 4500000
}
```
## 附註 {#notes}
- 正值升高音高;負值降低音高。
- 移動 12 個半音等於升高一個八度;-12 等於降低一個八度。
- 不論移動量多少,播放時長維持不變。
- 輸出通常會保留輸入的容器格式。AAC 輸入會寫成 M4A,而僅能解碼但不受支援的輸入會退回 MP3。
@@ -0,0 +1,44 @@
---
description: "反轉音訊檔案使其倒著播放。"
i18n_source_hash: 5c2017661803
i18n_provenance: human
i18n_output_hash: 6b5eb416d48d
---
# 反轉音訊 {#reverse-audio}
反轉音訊檔案使其倒著播放。
## API 端點 {#api-endpoint}
`POST /api/v1/tools/audio/reverse-audio`
接受包含一個音訊檔案與一個 JSON `settings` 欄位的 multipart form data。
## 參數 {#parameters}
此工具沒有可設定的參數。整個音訊檔案都會被反轉。
## 範例請求 {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/reverse-audio \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3"
```
## 範例回應 {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 4500000
}
```
## 附註 {#notes}
- 完整的音軌會從尾端反轉到開頭。
- 輸出通常會保留輸入的容器格式。AAC 輸入會寫成 M4A,而僅能解碼但不受支援的輸入會退回 MP3。
@@ -0,0 +1,49 @@
---
description: "從任何音訊檔案製作鈴聲片段。"
i18n_source_hash: 8fcdcc545fbc
i18n_provenance: human
i18n_output_hash: ca2d92ccd760
---
# 鈴聲製作器 {#ringtone-maker}
透過選擇起始時間與時長,從任何音訊檔案製作鈴聲片段(.m4r)。
## API 端點 {#api-endpoint}
`POST /api/v1/tools/audio/ringtone-maker`
接受包含一個音訊檔案與一個 JSON `settings` 欄位的 multipart form data。
## 參數 {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| startS | number | No | `0` | 起始時間(秒)(最小為 0) |
| durationS | number | No | `30` | 片段時長(秒)(1 至 30) |
## 範例請求 {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/ringtone-maker \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3" \
-F 'settings={"startS": 15, "durationS": 20}'
```
## 範例回應 {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.m4r",
"originalSize": 4500000,
"processedSize": 620000
}
```
## 附註 {#notes}
- 輸出永遠是 M4R 格式,相容於 iPhone 鈴聲。
- 鈴聲時長上限為 30 秒(Apple 限制)。
- 任何音訊格式都可作為輸入。
@@ -0,0 +1,50 @@
---
description: "從音訊檔案中移除靜音區段。"
i18n_source_hash: a7624fc99b50
i18n_provenance: human
i18n_output_hash: e29f249c4708
---
# 靜音移除 {#silence-removal}
根據可設定的門檻值與最短持續時間,偵測並移除音訊檔案中的靜音區段。
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/silence-removal`
接受包含一個音訊檔案以及一個 JSON `settings` 欄位的 multipart form data。
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| thresholdDb | number | No | `-50` | 以 dB 為單位的靜音門檻值(-80 至 -20)。低於此音量的音訊會被視為靜音。 |
| minSilenceS | number | No | `0.5` | 要移除的最短靜音持續時間(秒),範圍 0.1 至 5 |
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/silence-removal \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3" \
-F 'settings={"thresholdDb": -45, "minSilenceS": 1}'
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 3200000
}
```
## Notes {#notes}
- 較高(較不負)的門檻值更為積極,會連同較安靜的段落一併移除,而不只是真正的靜音。
- 提高 `minSilenceS` 可只移除較長的停頓,同時保留較短的自然間隔。
- 適合用於清理 Podcast 錄音、講座與語音備忘錄。
- 輸出通常會保留輸入的容器格式。AAC 輸入會寫成 M4A,而不支援的僅可解碼輸入則會退回為 MP3。
@@ -0,0 +1,64 @@
---
description: "依時間區間、等份或靜音偵測分割音訊。"
i18n_source_hash: c062a395dbac
i18n_provenance: human
i18n_output_hash: d403cc905b48
---
# 分割音訊 {#split-audio}
依固定時間區間、等份或自動靜音偵測,將音訊檔案分割成多個片段。回傳一個包含所有片段的 ZIP 壓縮檔。
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/split-audio`
接受包含一個音訊檔案以及一個 JSON `settings` 欄位的 multipart form data。
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| mode | string | No | `"time"` | 分割策略:`time``parts``silence` |
| segmentS | number | No | `60` | 片段長度(秒),1 至 3600(當 mode 為 `time` 時使用) |
| parts | integer | No | `2` | 等份數量,2 至 20(當 mode 為 `parts` 時使用) |
| thresholdDb | number | No | `-40` | 以 dB 為單位的靜音門檻值,-80 至 -20(當 mode 為 `silence` 時使用) |
| minSilenceS | number | No | `0.3` | 最短靜音間隔(秒),0.1 至 10(當 mode 為 `silence` 時使用) |
## Example Request {#example-request}
分割成 30 秒的片段:
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/split-audio \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3" \
-F 'settings={"mode": "time", "segmentS": 30}'
```
以靜音偵測分割:
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/split-audio \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3" \
-F 'settings={"mode": "silence", "thresholdDb": -35, "minSilenceS": 0.5}'
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio_parts.zip",
"originalSize": 4500000,
"processedSize": 4600000
}
```
## Notes {#notes}
- `downloadUrl` 會指向一個包含所有片段的 ZIP 壓縮檔。
- 只會使用與所選 `mode` 相關的參數,其餘會被忽略。
- 片段檔名會依序編號(例如 `part-000.mp3``part-001.mp3`)。
- 輸出格式與輸入格式相同。
@@ -0,0 +1,53 @@
---
description: "以 AI 驅動的轉錄將語音轉換為文字。"
i18n_source_hash: ae98c4c0aed2
i18n_provenance: human
i18n_output_hash: 4fd436ff8a68
---
# 語音轉錄 {#transcribe-audio}
使用 AI 驅動的轉錄(faster-whisper)將語音轉換為文字。支援純文字、SRT 與 VTT 輸出格式,並可自動或手動選擇語言。
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/transcribe-audio`
接受包含一個音訊檔案以及一個 JSON `settings` 欄位的 multipart form data。
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| language | string | No | `"auto"` | 語言:`auto``en``de``fr``es``zh``ja``ko``id``th``vi` |
| outputFormat | string | No | `"txt"` | 輸出格式:`txt``srt``vtt` |
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/transcribe-audio \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3" \
-F 'settings={"language": "en", "outputFormat": "srt"}'
```
## Example Response {#example-response}
這是一個非同步工具。API 會立即回傳 `202 Accepted`
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
```
透過 `GET /api/v1/jobs/{jobId}/progress` 的 SSE 追蹤進度。當工作完成時,SSE 串流會傳遞包含 `downloadUrl` 的最終結果。
## Notes {#notes}
- 需要安裝 **transcription** 功能套件包。若套件包無法使用,會回傳 `501` 並帶有代碼 `FEATURE_NOT_INSTALLED`、缺少的 `feature``featureName` 以及 `estimatedSize`
- 使用 faster-whisper 進行轉錄。語言 `auto` 會自動偵測所說的語言。
- `srt``vtt` 格式會為每個片段包含時間戳記,適合作為字幕。
- `txt` 格式會回傳不含時間戳記的純文字。
- 這是一個長時間執行的 AI 工具;處理時間取決於音訊長度與伺服器硬體。
+50
View File
@@ -0,0 +1,50 @@
---
description: "透過指定開始與結束時間,從音訊檔案中裁切出一段。"
i18n_source_hash: 8b80c5c8a711
i18n_provenance: human
i18n_output_hash: aebd901f3133
---
# 裁切音訊 {#trim-audio}
透過以秒為單位指定開始與結束時間,從音訊檔案中裁切出一段。
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/trim-audio`
接受包含一個音訊檔案以及一個 JSON `settings` 欄位的 multipart form data。
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| startS | number | No | `0` | 開始時間(秒)(最小值 0) |
| endS | number | Yes | - | 結束時間(秒)(必須在開始時間之後) |
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/trim-audio \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3" \
-F 'settings={"startS": 10, "endS": 45}'
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 1575000
}
```
## Notes {#notes}
- 時間以秒為單位指定,並可包含小數(例如 `10.5`)。
- `endS` 值必須大於 `startS`
-`endS` 超過音訊長度,檔案會裁切至結尾。
- 輸出通常會保留輸入的容器格式。AAC 輸入會寫成 M4A,而不支援的僅可解碼輸入則會退回為 MP3。
@@ -0,0 +1,48 @@
---
description: "以固定的分貝增益增加或降低音訊音量。"
i18n_source_hash: b9bc1de2c9ef
i18n_provenance: human
i18n_output_hash: dcf6dce7f3b9
---
# 音量調整 {#volume-adjust}
透過套用固定的分貝增益,增加或降低音訊檔案的音量。
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/volume-adjust`
接受包含一個音訊檔案以及一個 JSON `settings` 欄位的 multipart form data。
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| gainDb | number | No | `3` | 以分貝為單位的音量調整(-30 至 30) |
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/volume-adjust \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3" \
-F 'settings={"gainDb": 6}'
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 4500000
}
```
## Notes {#notes}
- 正值會增加音量;負值會降低音量。
- 較大的正增益可能造成削波。請使用 normalize-audio 進行不損音量的響度平衡。
- 輸出通常會保留輸入的容器格式。AAC 輸入會寫成 M4A,而不支援的僅可解碼輸入則會退回為 MP3。
@@ -0,0 +1,50 @@
---
description: "從音訊檔案產生波形視覺化的 PNG 影像。"
i18n_source_hash: 5480106dfe48
i18n_provenance: human
i18n_output_hash: c3b9a8688acb
---
# 波形影像 {#waveform-image}
從音訊檔案產生波形視覺化的 PNG 影像,並可設定尺寸與顏色。
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/waveform-image`
接受包含一個音訊檔案以及一個 JSON `settings` 欄位的 multipart form data。
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| width | integer | No | `1024` | 影像寬度(像素)(256 至 3840) |
| height | integer | No | `256` | 影像高度(像素)(64 至 1080) |
| color | string | No | `"#4f46e5"` | 波形十六進位顏色(例如 `"#4f46e5"` |
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/audio/waveform-image \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@audio.mp3" \
-F 'settings={"width": 1920, "height": 400, "color": "#e07832"}'
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.png",
"originalSize": 4500000,
"processedSize": 45000
}
```
## Notes {#notes}
- 無論輸入音訊格式為何,輸出一律為 PNG 影像。
- 波形會繪製在透明背景上。
- 適合用於縮圖、社群媒體預覽,或嵌入網頁。