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: "Konversi antara mono dan stereo atau tukar saluran kiri dan kanan."
i18n_source_hash: 4f5cd6b38c83
i18n_provenance: human
i18n_output_hash: 4ecd476154c8
---
# Audio Channels {#audio-channels}
Konversi audio antara tata letak mono dan stereo, atau tukar saluran kiri dan kanan dari file stereo.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/audio-channels`
Menerima data formulir multipart dengan file audio dan bidang JSON `settings`.
## Parameter {#parameters}
| Parameter | Tipe | Wajib | Bawaan | Deskripsi |
|-----------|------|----------|---------|-------------|
| mode | string | Ya | - | Operasi saluran: `stereo-to-mono`, `mono-to-stereo`, `swap` |
## Contoh Permintaan {#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"}'
```
## Contoh Respons {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 2300000
}
```
## Catatan {#notes}
- `stereo-to-mono` mencampur kedua saluran menjadi satu trek mono.
- `mono-to-stereo` menduplikasi saluran mono ke kiri dan kanan.
- `swap` menukar saluran kiri dan kanan dari file stereo.
- Output biasanya mempertahankan kontainer input. Input AAC ditulis sebagai M4A, dan input decode-only yang tidak didukung beralih ke MP3.
@@ -0,0 +1,73 @@
---
description: "Lihat, edit, atau hapus tag metadata audio (ID3)."
i18n_source_hash: 0717018e11cb
i18n_provenance: human
i18n_output_hash: 4421b188dcfe
---
# Audio Metadata {#audio-metadata}
Lihat, edit, atau hapus tag metadata audio seperti judul, artis, dan album (ID3 dan format tag serupa).
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/audio-metadata`
Menerima data formulir multipart dengan file audio dan bidang JSON `settings`.
## Parameter {#parameters}
| Parameter | Tipe | Wajib | Bawaan | Deskripsi |
|-----------|------|----------|---------|-------------|
| strip | boolean | Tidak | `false` | Menghapus semua tag metadata yang ada |
| title | string | Tidak | - | Setel tag judul (maks 500 karakter) |
| artist | string | Tidak | - | Setel tag artis (maks 500 karakter) |
| album | string | Tidak | - | Setel tag album (maks 500 karakter) |
## Contoh Permintaan {#example-request}
Edit tag metadata:
```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"}'
```
Hapus semua metadata:
```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}'
```
## Contoh Respons {#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"
}
}
}
```
## Catatan {#notes}
- Respons menyertakan objek `metadata` dengan format kontainer, durasi, bitrate, dan tag saat ini.
- Saat `strip` bernilai `true`, semua bidang tag diabaikan dan setiap tag yang ada dihapus.
- Hanya tag yang Anda berikan yang diperbarui; tag yang tidak ditentukan tetap tidak berubah.
- Format output cocok dengan format input.
+48
View File
@@ -0,0 +1,48 @@
---
description: "Percepat atau perlambat pemutaran audio dengan pengali."
i18n_source_hash: e39ba662e594
i18n_provenance: human
i18n_output_hash: d1fcb8585155
---
# Audio Speed {#audio-speed}
Percepat atau perlambat pemutaran audio dengan menerapkan pengali kecepatan.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/audio-speed`
Menerima data formulir multipart dengan file audio dan bidang JSON `settings`.
## Parameter {#parameters}
| Parameter | Tipe | Wajib | Bawaan | Deskripsi |
|-----------|------|----------|---------|-------------|
| factor | number | Tidak | `1.5` | Pengali kecepatan (0.25 hingga 4). Nilai di bawah 1 memperlambat; di atas 1 mempercepat. |
## Contoh Permintaan {#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}'
```
## Contoh Respons {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 2250000
}
```
## Catatan {#notes}
- Faktor `0.25` memutar pada seperempat kecepatan (4x lebih panjang). Faktor `4` memutar pada empat kali kecepatan (4x lebih pendek).
- Nada dipertahankan saat kecepatan berubah (time-stretch). Gunakan pitch-shift untuk menyesuaikan nada secara independen.
- Output biasanya mempertahankan kontainer input. Input AAC ditulis sebagai M4A, dan input decode-only yang tidak didukung beralih ke MP3.
+49
View File
@@ -0,0 +1,49 @@
---
description: "Konversi audio antara format MP3, WAV, OGG, FLAC, dan M4A."
i18n_source_hash: fd02c059e6a9
i18n_provenance: human
i18n_output_hash: 06454316167e
---
# Convert Audio {#convert-audio}
Konversi file audio antara format umum termasuk MP3, WAV, OGG, FLAC, dan M4A, dengan bitrate output yang dapat dikonfigurasi.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/convert-audio`
Menerima data formulir multipart dengan file audio dan bidang JSON `settings`.
## Parameter {#parameters}
| Parameter | Tipe | Wajib | Bawaan | Deskripsi |
|-----------|------|----------|---------|-------------|
| format | string | Tidak | `"mp3"` | Format output: `mp3`, `wav`, `ogg`, `flac`, `m4a` |
| bitrateKbps | integer | Tidak | `192` | Bitrate output dalam kbps (32 hingga 320) |
## Contoh Permintaan {#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}'
```
## Contoh Respons {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.flac",
"originalSize": 4500000,
"processedSize": 8200000
}
```
## Catatan {#notes}
- Format input yang didukung meliputi MP3, WAV, OGG, FLAC, AAC, M4A, WMA, AIFF, dan OPUS.
- Bitrate hanya berlaku untuk format lossy (MP3, OGG, M4A). Format lossless seperti WAV dan FLAC mengabaikan pengaturan ini.
- Nama file output mempertahankan nama asli dengan ekstensi baru.
+49
View File
@@ -0,0 +1,49 @@
---
description: "Tambahkan efek fade-in dan fade-out ke audio."
i18n_source_hash: 86856451ecb8
i18n_provenance: human
i18n_output_hash: 9aea5805437b
---
# Fade Audio {#fade-audio}
Tambahkan efek fade-in dan fade-out ke awal dan akhir file audio.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/fade-audio`
Menerima data formulir multipart dengan file audio dan bidang JSON `settings`.
## Parameter {#parameters}
| Parameter | Tipe | Wajib | Bawaan | Deskripsi |
|-----------|------|----------|---------|-------------|
| fadeInS | number | Tidak | `1` | Durasi fade-in dalam detik (0 hingga 30) |
| fadeOutS | number | Tidak | `1` | Durasi fade-out dalam detik (0 hingga 30) |
## Contoh Permintaan {#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}'
```
## Contoh Respons {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 4500000
}
```
## Catatan {#notes}
- Setel salah satu nilai ke `0` untuk melewati arah fade tersebut. Setidaknya satu harus lebih besar dari 0.
- Durasi fade dibatasi ke panjang audio jika melebihinya.
- Output biasanya mempertahankan kontainer input. Input AAC ditulis sebagai M4A, dan input decode-only yang tidak didukung beralih ke MP3.
+51
View File
@@ -0,0 +1,51 @@
---
description: "Gabungkan beberapa file audio menjadi satu trek sekuensial."
i18n_source_hash: defa993d3f87
i18n_provenance: human
i18n_output_hash: f63e6228a426
---
# Merge Audio {#merge-audio}
Gabungkan dua atau lebih file audio menjadi satu trek sekuensial, digabungkan sesuai urutan pengunggahan.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/merge-audio`
Menerima data formulir multipart dengan beberapa file audio dan bidang JSON `settings`.
## Parameter {#parameters}
| Parameter | Tipe | Wajib | Bawaan | Deskripsi |
|-----------|------|----------|---------|-------------|
| format | string | Tidak | `"mp3"` | Format output: `mp3`, `wav`, `flac`, `m4a` |
## Contoh Permintaan {#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"}'
```
## Contoh Respons {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/merged.mp3",
"originalSize": 9500000,
"processedSize": 9200000
}
```
## Catatan {#notes}
- Menerima 2 hingga 10 file audio per permintaan.
- File digabungkan sesuai urutan pengunggahan.
- Semua file input dienkode ulang ke format output dan sample rate yang dipilih untuk penggabungan yang mulus.
- Format input campuran didukung (mis. satu WAV dan satu MP3).
@@ -0,0 +1,48 @@
---
description: "Kurangi kebisingan latar dari audio dengan denoising berbasis FFT."
i18n_source_hash: 57cbdbd449aa
i18n_provenance: human
i18n_output_hash: 367959b9e163
---
# Noise Reduction {#noise-reduction}
Kurangi kebisingan latar dalam file audio menggunakan denoising berbasis FFT dengan kekuatan yang dapat dipilih.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/noise-reduction`
Menerima data formulir multipart dengan file audio dan bidang JSON `settings`.
## Parameter {#parameters}
| Parameter | Tipe | Wajib | Bawaan | Deskripsi |
|-----------|------|----------|---------|-------------|
| strength | string | Tidak | `"medium"` | Kekuatan denoising: `light`, `medium`, `strong` |
## Contoh Permintaan {#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"}'
```
## Contoh Respons {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 4500000
}
```
## Catatan {#notes}
- `light` mempertahankan lebih banyak detail tetapi menghilangkan lebih sedikit kebisingan. `strong` menghilangkan lebih banyak kebisingan tetapi dapat memunculkan artefak halus.
- Hasil terbaik pada rekaman dengan kebisingan latar yang konsisten (dengung kipas, AC, statis).
- Output biasanya mempertahankan kontainer input. Input AAC ditulis sebagai M4A, dan input decode-only yang tidak didukung beralih ke MP3.
@@ -0,0 +1,46 @@
---
description: "Ratakan kenyaringan ke tingkat standar siaran (EBU R128)."
i18n_source_hash: 794d8cfa5ad8
i18n_provenance: human
i18n_output_hash: f78038532996
---
# Normalize Audio {#normalize-audio}
Ratakan kenyaringan audio ke tingkat standar siaran menggunakan normalisasi EBU R128 (-16 LUFS).
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/normalize-audio`
Menerima data formulir multipart dengan file audio dan bidang JSON `settings`.
## Parameter {#parameters}
Alat ini tidak memiliki parameter yang dapat dikonfigurasi. Alat ini menerapkan normalisasi kenyaringan EBU R128 secara otomatis.
## Contoh Permintaan {#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"
```
## Contoh Respons {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 4500000
}
```
## Catatan {#notes}
- Menggunakan standar kenyaringan EBU R128, menargetkan -16 LUFS.
- Ideal untuk podcast, buku audio, dan konten siaran yang membutuhkan kenyaringan konsisten.
- Sample rate sumber dipertahankan pada output.
- Output biasanya mempertahankan kontainer input. Input AAC ditulis sebagai M4A, dan input decode-only yang tidak didukung beralih ke MP3.
+49
View File
@@ -0,0 +1,49 @@
---
description: "Naikkan atau turunkan nada audio dalam semiton tanpa mengubah kecepatan."
i18n_source_hash: 2804d0eeecc8
i18n_provenance: human
i18n_output_hash: eba91a099043
---
# Pitch Shift {#pitch-shift}
Naikkan atau turunkan nada file audio sebanyak sejumlah semiton tanpa mengubah kecepatan pemutarannya.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/pitch-shift`
Menerima data formulir multipart dengan file audio dan bidang JSON `settings`.
## Parameter {#parameters}
| Parameter | Tipe | Wajib | Bawaan | Deskripsi |
|-----------|------|----------|---------|-------------|
| semitones | integer | Tidak | `3` | Semiton untuk digeser (-12 hingga 12). Harus bukan nol. |
## Contoh Permintaan {#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}'
```
## Contoh Respons {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 4500000
}
```
## Catatan {#notes}
- Nilai positif menaikkan nada; nilai negatif menurunkannya.
- Pergeseran 12 semiton sama dengan satu oktaf ke atas; -12 sama dengan satu oktaf ke bawah.
- Durasi pemutaran tetap sama terlepas dari jumlah pergeseran.
- Output biasanya mempertahankan kontainer input. Input AAC ditulis sebagai M4A, dan input decode-only yang tidak didukung beralih ke MP3.
+44
View File
@@ -0,0 +1,44 @@
---
description: "Balikkan file audio sehingga diputar mundur."
i18n_source_hash: 5c2017661803
i18n_provenance: human
i18n_output_hash: e1a8be8429d5
---
# Reverse Audio {#reverse-audio}
Balikkan file audio sehingga diputar mundur.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/reverse-audio`
Menerima data formulir multipart dengan file audio dan bidang JSON `settings`.
## Parameter {#parameters}
Alat ini tidak memiliki parameter yang dapat dikonfigurasi. Seluruh file audio dibalik.
## Contoh Permintaan {#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"
```
## Contoh Respons {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"originalSize": 4500000,
"processedSize": 4500000
}
```
## Catatan {#notes}
- Seluruh trek audio dibalik dari akhir ke awal.
- Output biasanya mempertahankan kontainer input. Input AAC ditulis sebagai M4A, dan input decode-only yang tidak didukung beralih ke MP3.
@@ -0,0 +1,49 @@
---
description: "Buat klip nada dering dari file audio apa pun."
i18n_source_hash: 8fcdcc545fbc
i18n_provenance: human
i18n_output_hash: 25ba233eff25
---
# Ringtone Maker {#ringtone-maker}
Buat klip nada dering (.m4r) dari file audio apa pun dengan memilih waktu mulai dan durasi.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/ringtone-maker`
Menerima data formulir multipart dengan file audio dan bidang JSON `settings`.
## Parameter {#parameters}
| Parameter | Tipe | Wajib | Bawaan | Deskripsi |
|-----------|------|----------|---------|-------------|
| startS | number | Tidak | `0` | Waktu mulai dalam detik (minimum 0) |
| durationS | number | Tidak | `30` | Durasi klip dalam detik (1 hingga 30) |
## Contoh Permintaan {#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}'
```
## Contoh Respons {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.m4r",
"originalSize": 4500000,
"processedSize": 620000
}
```
## Catatan {#notes}
- Output selalu berformat M4R, kompatibel dengan nada dering iPhone.
- Durasi nada dering maksimum adalah 30 detik (batas Apple).
- Format audio apa pun dapat digunakan sebagai input.
@@ -0,0 +1,50 @@
---
description: "Hapus bagian hening dari file audio."
i18n_source_hash: a7624fc99b50
i18n_provenance: human
i18n_output_hash: 28bb8bd4b45a
---
# Silence Removal {#silence-removal}
Deteksi dan hapus bagian hening dari file audio berdasarkan ambang batas dan durasi minimum yang dapat dikonfigurasi.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/silence-removal`
Menerima multipart form data berisi file audio dan field JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| thresholdDb | number | No | `-50` | Ambang batas hening dalam dB (-80 hingga -20). Audio di bawah level ini dianggap hening. |
| minSilenceS | number | No | `0.5` | Durasi hening minimum dalam detik untuk dihapus (0.1 hingga 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}
- Ambang batas yang lebih tinggi (kurang negatif) lebih agresif dan menghapus bagian yang lebih pelan serta hening sesungguhnya.
- Naikkan `minSilenceS` agar hanya jeda yang lebih panjang yang dihapus sementara jeda alami yang singkat tetap dipertahankan.
- Berguna untuk membersihkan rekaman podcast, kuliah, dan memo suara.
- Output biasanya mempertahankan container input. Input AAC ditulis sebagai M4A, dan input decode-only yang tidak didukung dialihkan ke MP3.
+64
View File
@@ -0,0 +1,64 @@
---
description: "Bagi audio berdasarkan interval waktu, bagian yang sama besar, atau deteksi hening."
i18n_source_hash: c062a395dbac
i18n_provenance: human
i18n_output_hash: 58b5ae91712d
---
# Split Audio {#split-audio}
Bagi file audio menjadi segmen berdasarkan interval waktu tetap, bagian yang sama besar, atau deteksi hening otomatis. Mengembalikan arsip ZIP berisi segmen-segmen tersebut.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/split-audio`
Menerima multipart form data berisi file audio dan field JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| mode | string | No | `"time"` | Strategi pembagian: `time`, `parts`, `silence` |
| segmentS | number | No | `60` | Panjang segmen dalam detik, 1 hingga 3600 (digunakan saat mode adalah `time`) |
| parts | integer | No | `2` | Jumlah bagian yang sama besar, 2 hingga 20 (digunakan saat mode adalah `parts`) |
| thresholdDb | number | No | `-40` | Ambang batas hening dalam dB, -80 hingga -20 (digunakan saat mode adalah `silence`) |
| minSilenceS | number | No | `0.3` | Jeda hening minimum dalam detik, 0.1 hingga 10 (digunakan saat mode adalah `silence`) |
## Example Request {#example-request}
Bagi menjadi segmen 30 detik:
```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}'
```
Bagi berdasarkan deteksi hening:
```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` menunjuk ke arsip ZIP yang berisi semua segmen.
- Hanya parameter yang relevan dengan `mode` yang dipilih yang digunakan; parameter lainnya diabaikan.
- Nama file segmen diberi nomor secara berurutan (mis. `part-000.mp3`, `part-001.mp3`).
- Format output menyesuaikan dengan format input.
@@ -0,0 +1,53 @@
---
description: "Ubah ucapan menjadi teks dengan transkripsi bertenaga AI."
i18n_source_hash: ae98c4c0aed2
i18n_provenance: human
i18n_output_hash: ed0acb2b52f0
---
# Transcribe Audio {#transcribe-audio}
Ubah ucapan menjadi teks menggunakan transkripsi bertenaga AI (faster-whisper). Mendukung format output teks biasa, SRT, dan VTT dengan pemilihan bahasa otomatis atau manual.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/transcribe-audio`
Menerima multipart form data berisi file audio dan field JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| language | string | No | `"auto"` | Bahasa: `auto`, `en`, `de`, `fr`, `es`, `zh`, `ja`, `ko`, `id`, `th`, `vi` |
| outputFormat | string | No | `"txt"` | Format output: `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}
Ini adalah tool asinkron. API mengembalikan `202 Accepted` secara langsung:
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
```
Lacak progres melalui SSE di `GET /api/v1/jobs/{jobId}/progress`. Ketika pekerjaan selesai, aliran SSE mengirimkan hasil akhir dengan `downloadUrl`.
## Notes {#notes}
- Memerlukan feature bundle **transcription** untuk diinstal. Mengembalikan `501` dengan kode `FEATURE_NOT_INSTALLED`, `feature` yang hilang, `featureName`, dan `estimatedSize` jika bundle tidak tersedia.
- Menggunakan faster-whisper untuk transkripsi. Bahasa `auto` mendeteksi bahasa yang diucapkan secara otomatis.
- Format `srt` dan `vtt` menyertakan timestamp untuk setiap segmen, cocok untuk subtitle.
- Format `txt` mengembalikan teks biasa tanpa timestamp.
- Ini adalah tool AI yang berjalan lama; waktu pemrosesan bergantung pada panjang audio dan perangkat keras server.
+50
View File
@@ -0,0 +1,50 @@
---
description: "Potong sebuah bagian dari file audio dengan menentukan waktu mulai dan waktu akhir."
i18n_source_hash: 8b80c5c8a711
i18n_provenance: human
i18n_output_hash: fcfb8ae122c3
---
# Trim Audio {#trim-audio}
Potong sebuah bagian dari file audio dengan menentukan waktu mulai dan waktu akhir dalam detik.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/trim-audio`
Menerima multipart form data berisi file audio dan field JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| startS | number | No | `0` | Waktu mulai dalam detik (minimum 0) |
| endS | number | Yes | - | Waktu akhir dalam detik (harus setelah waktu mulai) |
## 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}
- Waktu ditentukan dalam detik dan dapat mencakup desimal (mis. `10.5`).
- Nilai `endS` harus lebih besar dari `startS`.
- Jika `endS` melebihi durasi audio, file dipangkas hingga akhir.
- Output biasanya mempertahankan container input. Input AAC ditulis sebagai M4A, dan input decode-only yang tidak didukung dialihkan ke MP3.
+48
View File
@@ -0,0 +1,48 @@
---
description: "Naikkan atau turunkan volume audio dengan gain tetap dalam desibel."
i18n_source_hash: b9bc1de2c9ef
i18n_provenance: human
i18n_output_hash: 866044e85428
---
# Volume Adjust {#volume-adjust}
Naikkan atau turunkan volume file audio dengan menerapkan gain tetap dalam desibel.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/volume-adjust`
Menerima multipart form data berisi file audio dan field JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| gainDb | number | No | `3` | Penyesuaian volume dalam desibel (-30 hingga 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}
- Nilai positif menaikkan volume; nilai negatif menurunkannya.
- Gain positif yang besar dapat menyebabkan clipping. Gunakan normalize-audio untuk penyetaraan kenyaringan yang aman.
- Output biasanya mempertahankan container input. Input AAC ditulis sebagai M4A, dan input decode-only yang tidak didukung dialihkan ke MP3.
@@ -0,0 +1,50 @@
---
description: "Hasilkan visualisasi bentuk gelombang sebagai gambar PNG dari file audio."
i18n_source_hash: 5480106dfe48
i18n_provenance: human
i18n_output_hash: 2ee074ff47df
---
# Waveform Image {#waveform-image}
Hasilkan visualisasi bentuk gelombang sebagai gambar PNG dari file audio, dengan dimensi dan warna yang dapat dikonfigurasi.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/audio/waveform-image`
Menerima multipart form data berisi file audio dan field JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| width | integer | No | `1024` | Lebar gambar dalam piksel (256 hingga 3840) |
| height | integer | No | `256` | Tinggi gambar dalam piksel (64 hingga 1080) |
| color | string | No | `"#4f46e5"` | Warna heksadesimal bentuk gelombang (mis. `"#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}
- Output selalu berupa gambar PNG, terlepas dari format audio input.
- Bentuk gelombang dirender pada latar belakang transparan.
- Berguna untuk thumbnail, pratinjau media sosial, atau penyematan di halaman web.