fix(audio): expose sample rate setting in Convert Audio (#561)

The Convert Audio tool promised configurable bitrate, sample rate, and channel count, but only format and bitrate were exposed. Adds an optional sampleRate setting (8000 to 96000 Hz, omitted = preserve source) wired through the Zod schema, the FFmpeg -ar flag, the standalone settings panel, and the pipeline builder controls.

Impossible combinations fail loudly instead of degrading silently: MP3 + 96000 Hz is rejected (libmp3lame caps at 48 kHz), and MP3 bitrates above the encoder ceiling at low rates (64 kbps at 8 kHz, 160 kbps at 16/22.05 kHz) are rejected rather than clamped. The UI offers only legal combinations and sanitizes stored pipeline settings on load.

Docs updated in English plus all 20 localized pages with refreshed i18n_source_hash stamps; two new UI strings added to all 21 locales.

Fixes #558
This commit is contained in:
SnapOtter
2026-07-18 10:14:50 +08:00
committed by GitHub
parent 6ecc598fc4
commit d4eaa655b2
47 changed files with 541 additions and 133 deletions
+8 -5
View File
@@ -1,13 +1,13 @@
---
description: "Sesi MP3, WAV, OGG, FLAC ve M4A formatları arasında dönüştürün."
i18n_source_hash: fd02c059e6a9
i18n_source_hash: 27fd2f49f472
i18n_provenance: human
i18n_output_hash: 90b93fea4b4c
---
# Convert Audio {#convert-audio}
Ses dosyalarını MP3, WAV, OGG, FLAC ve M4A dahil yaygın formatlar arasında, yapılandırılabilir çıktı bit hızıyla dönüştürün.
Ses dosyalarını MP3, WAV, OGG, FLAC ve M4A dahil yaygın formatlar arasında, yapılandırılabilir çıktı bit hızı ve örnekleme hızıyla dönüştürün.
## API Uç Noktası {#api-endpoint}
@@ -21,6 +21,7 @@ Bir ses dosyası ve bir JSON `settings` alanı içeren multipart form verisini k
|-----------|------|----------|---------|-------------|
| format | string | Hayır | `"mp3"` | Çıktı formatı: `mp3`, `wav`, `ogg`, `flac`, `m4a` |
| bitrateKbps | integer | Hayır | `192` | kbps cinsinden çıktı bit hızı (32 ile 320 arası) |
| sampleRate | integer | Hayır | kaynak hızı | Hz cinsinden çıktı örnekleme hızı: `8000`, `16000`, `22050`, `32000`, `44100`, `48000` veya `96000`. Kaynak hızını korumak için atlayın |
## Örnek İstek {#example-request}
@@ -28,7 +29,7 @@ Bir ses dosyası ve bir JSON `settings` alanı içeren multipart form verisini k
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}'
-F 'settings={"format": "mp3", "bitrateKbps": 192, "sampleRate": 44100}'
```
## Örnek Yanıt {#example-response}
@@ -36,9 +37,9 @@ curl -X POST http://localhost:1349/api/v1/tools/audio/convert-audio \
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.flac",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 8200000
"processedSize": 2800000
}
```
@@ -46,4 +47,6 @@ curl -X POST http://localhost:1349/api/v1/tools/audio/convert-audio \
- Desteklenen girdi formatları arasında MP3, WAV, OGG, FLAC, AAC, M4A, WMA, AIFF ve OPUS bulunur.
- Bit hızı yalnızca kayıplı formatlar (MP3, OGG, M4A) için geçerlidir. WAV ve FLAC gibi kayıpsız formatlar bu ayarı yok sayar.
- MP3 çıktısı 48000 Hz'e kadar örnekleme hızlarını destekler. 96000 Hz seçeneği yalnızca WAV, OGG, FLAC ve M4A için geçerlidir.
- MP3 bit hızı örnekleme hızına göre sınırlıdır: 8000 Hz'de en fazla 64 kbps, 16000 veya 22050 Hz'de ise en fazla 160 kbps. Sınırın üzerindeki istekler sessizce düşürülmek yerine reddedilir.
- Çıktı dosya adı, orijinal adı yeni uzantıyla korur.