mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
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:
@@ -0,0 +1,49 @@
|
||||
---
|
||||
description: "Hedef bir en boy oranına sığdırmak için düz renkli çubuklar ekleyin."
|
||||
i18n_source_hash: b8e17dffc341
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: a260f6057473
|
||||
---
|
||||
|
||||
# En Boy Dolgusu {#aspect-pad}
|
||||
|
||||
Bir videoyu kırpmadan hedef bir en boy oranına sığdırmak için düz renkli letterbox veya pillarbox çubukları ekleyin.
|
||||
|
||||
## API Uç Noktası {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/aspect-pad`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form verisini kabul eder.
|
||||
|
||||
## Parametreler {#parameters}
|
||||
|
||||
| Parametre | Tür | Zorunlu | Varsayılan | Açıklama |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| target | string | Hayır | `"9:16"` | Hedef en boy oranı: `16:9`, `9:16`, `1:1`, `4:3`, `3:4` |
|
||||
| color | string | Hayır | `"#000000"` | Dolgu çubukları için onaltılık renk (örn. siyah için `"#000000"`) |
|
||||
|
||||
## Örnek İstek {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/aspect-pad \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"target": "1:1", "color": "#ffffff"}'
|
||||
```
|
||||
|
||||
## Örnek Yanıt {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 13200000
|
||||
}
|
||||
```
|
||||
|
||||
## Notlar {#notes}
|
||||
|
||||
- Video zaten hedef en boy oranıyla eşleşiyorsa, dosya değiştirilmeden döndürülür.
|
||||
- Dikey/portre sosyal medya biçimleri (TikTok, Reels, Shorts) için `9:16` kullanın.
|
||||
- Düz renk yerine bulanık dolgu için Bulanık Dolgu aracını kullanın.
|
||||
@@ -0,0 +1,48 @@
|
||||
---
|
||||
description: "Yapay zeka kullanarak video ses parçalarından altyazı dosyaları oluşturun."
|
||||
i18n_source_hash: 35b1e78501ad
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 2f7dadee58ad
|
||||
---
|
||||
|
||||
# Otomatik Altyazılar {#auto-subtitles}
|
||||
|
||||
Yapay zeka destekli konuşma tanıma (faster-whisper) kullanarak bir videonun ses parçasından altyazı dosyaları oluşturun. Otomatik algılamayı ve 10 açık dili destekler.
|
||||
|
||||
## API Uç Noktası {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/auto-subtitles`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form verisini kabul eder. Bu, eşzamansız bir uç noktadır - hemen `202 Accepted` döndürür ve ilerleme `GET /api/v1/jobs/{jobId}/progress` adresinde SSE üzerinden akışla iletilir.
|
||||
|
||||
## Parametreler {#parameters}
|
||||
|
||||
| Parametre | Tür | Zorunlu | Varsayılan | Açıklama |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| language | string | Hayır | `"auto"` | Konuşma dili: `auto`, `en`, `de`, `fr`, `es`, `zh`, `ja`, `ko`, `id`, `th`, `vi` |
|
||||
| format | string | Hayır | `"srt"` | Çıktı altyazı biçimi: `srt`, `vtt` |
|
||||
|
||||
## Örnek İstek {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/auto-subtitles \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"language": "en", "format": "srt"}'
|
||||
```
|
||||
|
||||
## Örnek Yanıt {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## Notlar {#notes}
|
||||
|
||||
- Bu, **transkripsiyon** özellik paketinin kurulu olmasını gerektiren bir yapay zeka aracıdır. Paket kurulu değilse API, yönetici arayüzü üzerinden nasıl kurulacağına dair talimatlarla birlikte `501 Feature Not Installed` döndürür.
|
||||
- `auto` dil seçeneği whisper'ın yerleşik dil algılamasını kullanır. Dili açıkça belirtmek doğruluğu ve hızı artırır.
|
||||
- SRT en yaygın desteklenen altyazı biçimidir. VTT (WebVTT) web video oynatıcıları için standarttır.
|
||||
- İş tamamlanana kadar ilerleme güncellemeleri `GET /api/v1/jobs/{jobId}/progress` adresinde SSE üzerinden alınabilir.
|
||||
@@ -0,0 +1,49 @@
|
||||
---
|
||||
description: "Çubukları videonun bulanık bir kopyasıyla doldurun."
|
||||
i18n_source_hash: 0c72aaefc6de
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 9f0db7aa1246
|
||||
---
|
||||
|
||||
# Bulanık Dolgu {#blur-pad}
|
||||
|
||||
Dolgu alanını düz renkli çubuklar yerine videonun bulanık, ölçeklenmiş bir kopyasıyla doldurarak bir videoyu hedef bir en boy oranına sığdırın.
|
||||
|
||||
## API Uç Noktası {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/blur-pad`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form verisini kabul eder.
|
||||
|
||||
## Parametreler {#parameters}
|
||||
|
||||
| Parametre | Tür | Zorunlu | Varsayılan | Açıklama |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| target | string | Hayır | `"16:9"` | Hedef en boy oranı: `16:9`, `9:16`, `1:1`, `4:3`, `3:4` |
|
||||
| blur | number | Hayır | `20` | Arka plan için Gauss bulanıklık sigması (2-50) |
|
||||
|
||||
## Örnek İstek {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/blur-pad \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"target": "16:9", "blur": 30}'
|
||||
```
|
||||
|
||||
## Örnek Yanıt {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 14100000
|
||||
}
|
||||
```
|
||||
|
||||
## Notlar {#notes}
|
||||
|
||||
- Daha yüksek bulanıklık değerleri daha yumuşak, daha soyut bir arka plan üretir. Daha düşük değerler daha fazla ayrıntıyı görünür tutar.
|
||||
- Video zaten hedef en boy oranıyla eşleşiyorsa, dosya değiştirilmeden döndürülür.
|
||||
- Düz renkli dolgu için bunun yerine En Boy Dolgusu aracını kullanın.
|
||||
@@ -0,0 +1,47 @@
|
||||
---
|
||||
description: "Altyazıları kalıcı olarak video karelerine işleyin."
|
||||
i18n_source_hash: 2d3111589db0
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 464f472fb718
|
||||
---
|
||||
|
||||
# Burn Subtitles {#burn-subtitles}
|
||||
|
||||
Bir SRT, VTT veya ASS dosyasındaki altyazıları bir videonun her karesine kalıcı olarak işleyin (sabit kodlayın).
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/burn-subtitles`
|
||||
|
||||
Bir video dosyası ve bir altyazı dosyası içeren multipart form data kabul eder. Bu asenkron bir uç noktadır; hemen `202 Accepted` döndürür ve ilerleme `GET /api/v1/jobs/{jobId}/progress` adresinde SSE ile aktarılır.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| fontSize | integer | No | `24` | Piksel cinsinden altyazı yazı tipi boyutu (8-72) |
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/burn-subtitles \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F "file=@subtitles.srt" \
|
||||
-F 'settings={"fontSize": 28}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- İki dosya yükleyin: ilki bir video, ikincisi bir altyazı dosyası (.srt, .vtt veya .ass) olmalıdır.
|
||||
- İşlenen altyazılar videonun kalıcı bir parçasıdır ve izleyici tarafından kapatılamaz. Açılıp kapatılabilen altyazılar için bunun yerine Embed Subtitles aracını kullanın.
|
||||
- İş tamamlanana kadar ilerleme güncellemeleri `GET /api/v1/jobs/{jobId}/progress` adresinde SSE ile sunulur.
|
||||
@@ -0,0 +1,48 @@
|
||||
---
|
||||
description: "Bir videonun kare hızını değiştirin."
|
||||
i18n_source_hash: 2bffbd04a1cb
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 7c8f64ebc7f6
|
||||
---
|
||||
|
||||
# Change FPS {#change-fps}
|
||||
|
||||
Bir videonun kare hızını 1 ile 120 fps arasında bir hedef değere değiştirin.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/change-fps`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| fps | number | No | `30` | Hedef kare hızı (1-120) |
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/change-fps \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"fps": 24}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 10200000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- Kare hızını düşürmek kareleri atar ve dosya boyutunu azaltır. Artırmak, boşluğu doldurmak için kareleri çoğaltır ancak gerçek hareket ayrıntısı eklemez.
|
||||
- Yaygın hedef değerler: 24 (sinema), 30 (web/yayın), 60 (akıcı oynatma).
|
||||
- Ses parçası orijinal örnekleme hızında korunur.
|
||||
@@ -0,0 +1,47 @@
|
||||
---
|
||||
description: "Kalite kontrolüyle video dosya boyutunu küçültün."
|
||||
i18n_source_hash: 9cc1f1acf74e
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 3f6d8c1890cc
|
||||
---
|
||||
|
||||
# Compress Video {#compress-video}
|
||||
|
||||
Yapılandırılabilir sıkıştırma gücü ve isteğe bağlı çözünürlük küçültmesi kullanarak video dosya boyutunu küçültün.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/compress-video`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder. Bu asenkron bir uç noktadır; hemen `202 Accepted` döndürür ve ilerleme `GET /api/v1/jobs/{jobId}/progress` adresinde SSE ile aktarılır.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| quality | string | No | `"balanced"` | Sıkıştırma gücü: `light`, `balanced`, `strong` |
|
||||
| resolution | string | No | `"original"` | Çıktı çözünürlüğü: `original`, `1080p`, `720p`, `480p` |
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/compress-video \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"quality": "strong", "resolution": "720p"}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- `light` ön ayarı neredeyse orijinal kaliteyi korur. `strong` ön ayarı ise görsel doğruluk pahasına dosya boyutunu agresif şekilde azaltır.
|
||||
- Çözünürlüğü küçültmek (örneğin 4K'dan 720p'ye) sıkıştırmayla birleşerek belirgin bir boyut azalması sağlar.
|
||||
- İş tamamlanana kadar ilerleme güncellemeleri `GET /api/v1/jobs/{jobId}/progress` adresinde SSE ile sunulur.
|
||||
@@ -0,0 +1,47 @@
|
||||
---
|
||||
description: "Videoları MP4, MOV, WebM, AVI ve MKV arasında dönüştürün."
|
||||
i18n_source_hash: 8f9e6418b1c6
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 9f5e24a957ce
|
||||
---
|
||||
|
||||
# Convert Video {#convert-video}
|
||||
|
||||
Videoları yapılandırılabilir kalite ön ayarlarıyla MP4, MOV, WebM, AVI ve MKV formatları arasında dönüştürün.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/convert-video`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder. Bu asenkron bir uç noktadır; hemen `202 Accepted` döndürür ve ilerleme `GET /api/v1/jobs/{jobId}/progress` adresinde SSE ile aktarılır.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| format | string | No | `"mp4"` | Çıktı formatı: `mp4`, `mov`, `webm`, `avi`, `mkv` |
|
||||
| quality | string | No | `"balanced"` | Kalite ön ayarı: `high`, `balanced`, `small` |
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/convert-video \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"format": "webm", "quality": "balanced"}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- `high` kalite ön ayarı en iyi görsel doğruluğu üretir ancak daha büyük dosyalar oluşturur. `small` ön ayarı ise en küçük dosya boyutu için agresif şekilde sıkıştırır.
|
||||
- WebM çıktısı VP9 kodlaması kullanır. MP4 ve MOV, H.264 kullanır. AVI ve MKV, eski veya arşivleme iş akışları için mevcuttur.
|
||||
- İş tamamlanana kadar ilerleme güncellemeleri `GET /api/v1/jobs/{jobId}/progress` adresinde SSE ile sunulur.
|
||||
@@ -0,0 +1,51 @@
|
||||
---
|
||||
description: "Bir videodan bir bölge kırpın."
|
||||
i18n_source_hash: fab11f71a202
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 380de9cf71d3
|
||||
---
|
||||
|
||||
# Crop Video {#crop-video}
|
||||
|
||||
Bölgenin boyutunu ve konumunu belirterek bir videodan dikdörtgen bir bölge kırpın.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/crop-video`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| width | integer | Yes | - | Piksel cinsinden kırpma bölgesi genişliği (en az 16) |
|
||||
| height | integer | Yes | - | Piksel cinsinden kırpma bölgesi yüksekliği (en az 16) |
|
||||
| x | integer | No | `0` | Sol üst köşeden yatay ofset |
|
||||
| y | integer | No | `0` | Sol üst köşeden dikey ofset |
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/crop-video \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"width": 640, "height": 480, "x": 100, "y": 50}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 5200000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- Kırpma bölgesi video boyutlarına sığmalıdır. `x + width` veya `y + height` kaynak boyutunu aşarsa, istek 400 hatası döndürür.
|
||||
- Minimum kırpma boyutu 16x16 pikseldir.
|
||||
- Boyutlar, çoğu video codec'inin gerektirdiği gibi çift sayılara yuvarlanır.
|
||||
@@ -0,0 +1,49 @@
|
||||
---
|
||||
description: "Bir altyazı parçasını video konteynerine ekleyin."
|
||||
i18n_source_hash: be272730fff5
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: fbe7f931880d
|
||||
---
|
||||
|
||||
# Embed Subtitles {#embed-subtitles}
|
||||
|
||||
Bir altyazı dosyasını, izleyicilerin açıp kapatabileceği yumuşak bir altyazı parçası olarak video konteynerine ekleyin.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/embed-subtitles`
|
||||
|
||||
Bir video dosyası ve bir altyazı dosyası ile birlikte bir JSON `settings` alanı içeren multipart form data kabul eder.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| language | string | No | `"eng"` | ISO 639-2/B dil kodu (3 küçük harf, örneğin `"eng"`, `"fra"`, `"deu"`) |
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/embed-subtitles \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F "file=@subtitles.srt" \
|
||||
-F 'settings={"language": "fra"}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 12520000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- İki dosya yükleyin: ilki bir video, ikincisi bir altyazı dosyası (.srt, .vtt veya .ass) olmalıdır.
|
||||
- Gömülü (yumuşak) altyazılar, izleyici tarafından medya oynatıcısında açılıp kapatılabilir. Kalıcı olarak görünür altyazılar için bunun yerine Burn Subtitles aracını kullanın.
|
||||
- Dil kodu konteynerde meta veri olarak saklanır ve medya oynatıcıların altyazı parçasını etiketlemesine yardımcı olur.
|
||||
@@ -0,0 +1,48 @@
|
||||
---
|
||||
description: "Ses parçasını bir videodan çıkarın."
|
||||
i18n_source_hash: f5b8330a5f89
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 9e44015eddef
|
||||
---
|
||||
|
||||
# Extract Audio {#extract-audio}
|
||||
|
||||
Bir video dosyasından ses parçasını çıkarın ve MP3, WAV, M4A veya OGG olarak kaydedin.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/extract-audio`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| format | string | No | `"mp3"` | Çıktı ses formatı: `mp3`, `wav`, `m4a`, `ogg` |
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/extract-audio \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"format": "mp3"}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp3",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 3200000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- Videoda ses parçası yoksa, istek 400 hatası döndürür.
|
||||
- MP3 kayıplıdır ancak yaygın olarak uyumludur. WAV kayıpsızdır ancak büyüktür. M4A (AAC) kalite ile boyut arasında iyi bir denge sunar. OGG, açık codec iş akışları için mevcuttur.
|
||||
- Kaynak ses zaten AAC olduğunda ve çıktı formatı M4A olduğunda, ses akışı yeniden kodlanmadan kopyalanır.
|
||||
@@ -0,0 +1,45 @@
|
||||
---
|
||||
description: "Altyazı parçasını bir videodan SRT dosyası olarak çıkarın."
|
||||
i18n_source_hash: 48db860f6676
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 7ea979b25a45
|
||||
---
|
||||
|
||||
# Extract Subtitles {#extract-subtitles}
|
||||
|
||||
Gömülü altyazı parçasını bir video konteynerinden çıkarın ve SRT dosyası olarak indirin.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/extract-subtitles`
|
||||
|
||||
Bir video dosyası içeren multipart form data kabul eder. Bu aracın yapılandırılabilir ayarı yoktur.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
Bu aracın parametresi yoktur. Video konteynerinde bulunan ilk altyazı parçasını çıkarır.
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/extract-subtitles \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4"
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.srt",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 4500
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- Video, gömülü bir altyazı parçası içermelidir. Altyazı parçası bulunamazsa, istek 400 hatası döndürür.
|
||||
- Videoda birden fazla altyazı parçası varsa, ilki çıkarılır.
|
||||
- Konteynerdeki orijinal altyazı formatından bağımsız olarak çıktı formatı SRT'dir.
|
||||
@@ -0,0 +1,48 @@
|
||||
---
|
||||
description: "Animasyonlu bir GIF'i MP4, WebM veya MOV videoya dönüştürün."
|
||||
i18n_source_hash: c3737b31146d
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 2febef4aae12
|
||||
---
|
||||
|
||||
# GIF to Video {#gif-to-video}
|
||||
|
||||
Animasyonlu bir GIF'i kompakt bir MP4, WebM veya MOV video dosyasına dönüştürün.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/gif-to-video`
|
||||
|
||||
Bir GIF dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| format | string | No | `"mp4"` | Çıktı formatı: `mp4`, `webm`, `mov` |
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/gif-to-video \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@animation.gif" \
|
||||
-F 'settings={"format": "mp4"}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/animation.mp4",
|
||||
"originalSize": 8500000,
|
||||
"processedSize": 950000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- GIF'i videoya dönüştürmek, aynı görsel kaliteyi korurken dosya boyutunu genellikle %80-90 azaltır.
|
||||
- Yalnızca animasyonlu GIF dosyaları kabul edilir. Statik görüntüler image Convert aracını kullanmalıdır.
|
||||
- MP4 ve MOV, H.264 kodlaması kullanır; WebM, VP9 kullanır.
|
||||
@@ -0,0 +1,54 @@
|
||||
---
|
||||
description: "Bir dizi görüntüyü slayt gösterisi videosuna dönüştürün."
|
||||
i18n_source_hash: 2c6f183feb6d
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 0fb201ecee85
|
||||
---
|
||||
|
||||
# Images to Video {#images-to-video}
|
||||
|
||||
Bir dizi görüntüyü, görüntü başına yapılandırılabilir süre, çözünürlük ve kare hızıyla bir slayt gösterisi videosuna dönüştürün.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/images-to-video`
|
||||
|
||||
İki veya daha fazla görüntü dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| secondsPerImage | number | No | `2` | Saniye cinsinden görüntü başına görüntüleme süresi (0.5-10) |
|
||||
| resolution | string | No | `"720p"` | Çıktı çözünürlüğü: `1080p`, `720p`, `square` |
|
||||
| fps | integer | No | `30` | Çıktı kare hızı (10-60) |
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/images-to-video \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@slide1.jpg" \
|
||||
-F "file=@slide2.jpg" \
|
||||
-F "file=@slide3.jpg" \
|
||||
-F "file=@slide4.jpg" \
|
||||
-F 'settings={"secondsPerImage": 3, "resolution": "1080p"}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/slideshow.mp4",
|
||||
"originalSize": 3500000,
|
||||
"processedSize": 1200000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- İstek başına 2-60 görüntü dosyası kabul eder. Görüntüler videoda yükleme sırasına göre görünür.
|
||||
- Görüntüler, en boy oranı korunarak hedef çözünürlüğe sığdırmak için yeniden boyutlandırılır ve doldurulur.
|
||||
- `square` çözünürlük seçeneği, sosyal medya için kullanışlı bir 1080x1080 video üretir.
|
||||
- Çıktı formatı her zaman MP4'tür (H.264).
|
||||
@@ -0,0 +1,46 @@
|
||||
---
|
||||
description: "Birden fazla video klibini tek bir dosyada birleştirin."
|
||||
i18n_source_hash: 90463dfbb580
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: d352ffd30d9b
|
||||
---
|
||||
|
||||
# Merge Videos {#merge-videos}
|
||||
|
||||
Birden fazla video klibini tek bir MP4 dosyasında birleştirin. Tüm girdiler, ilk videonun çözünürlüğüne ve 30 fps'ye normalize edilir.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/merge-videos`
|
||||
|
||||
İki veya daha fazla video dosyası içeren multipart form data kabul eder. Bu asenkron bir uç noktadır; hemen `202 Accepted` döndürür ve ilerleme `GET /api/v1/jobs/{jobId}/progress` adresinde SSE ile aktarılır.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
Bu aracın ayar parametresi yoktur. 2-10 video dosyasını birden fazla `file` parçası olarak yükleyin.
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/merge-videos \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@intro.mp4" \
|
||||
-F "file=@main.mp4" \
|
||||
-F "file=@outro.mp4"
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- Klipler yüklendikleri sıraya göre birleştirilir.
|
||||
- Tüm klipler, ilk klibin çözünürlüğüne, kare hızına (30 fps) ve codec'ine (H.264) uyacak şekilde yeniden kodlanır. Uyumsuz girdiler otomatik olarak normalize edilir.
|
||||
- İstek başına 2-10 video dosyası kabul eder.
|
||||
- İş tamamlanana kadar ilerleme güncellemeleri `GET /api/v1/jobs/{jobId}/progress` adresinde SSE ile sunulur.
|
||||
@@ -0,0 +1,44 @@
|
||||
---
|
||||
description: "Ses parçasını bir videodan kaldırın."
|
||||
i18n_source_hash: 9a0c60bbcaa3
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 58452a1cca33
|
||||
---
|
||||
|
||||
# Mute Video {#mute-video}
|
||||
|
||||
Ses parçasını bir videodan kaldırarak yalnızca görsel akışı bırakın.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/mute-video`
|
||||
|
||||
Bir video dosyası içeren multipart form data kabul eder. Bu aracın yapılandırılabilir ayarı yoktur.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
Bu aracın parametresi yoktur. Yüklenen videodan ses parçasını çıkarır.
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/mute-video \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4"
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 8900000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- Video akışı yeniden kodlanmadan kopyalanır, bu yüzden kalite kaybı olmaz.
|
||||
- Girdi videosunda ses parçası yoksa, dosya değiştirilmeden döndürülür.
|
||||
@@ -0,0 +1,46 @@
|
||||
---
|
||||
description: "Bir videonun ses parçasını başka bir dosyayla değiştirin."
|
||||
i18n_source_hash: fabc2a953103
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: d263697b05b2
|
||||
---
|
||||
|
||||
# Replace Audio {#replace-audio}
|
||||
|
||||
Bir videonun ses parçasını bir ses dosyasıyla değiştirin. Hem bir video hem de bir ses dosyası yükleyin.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/replace-audio`
|
||||
|
||||
Tam olarak iki dosya içeren multipart form data kabul eder: bir video dosyasını ardından bir ses dosyası.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
Bu aracın ayar parametresi yoktur. Bir video dosyasını ve bir ses dosyasını iki `file` parçası olarak yükleyin.
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/replace-audio \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F "file=@voiceover.mp3"
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 13100000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- Tam olarak iki dosya yüklenmelidir: ilki bir video, ikincisi bir ses dosyası olmalıdır.
|
||||
- Ses dosyası videodan uzunsa, video süresine uyacak şekilde kısaltılır. Daha kısaysa, kalan video sessizce oynatılır.
|
||||
- Video akışı yeniden kodlanmadan kopyalanır, bu yüzden video kalite kaybı olmaz.
|
||||
@@ -0,0 +1,61 @@
|
||||
---
|
||||
description: "Bir videoyu yeni bir çözünürlüğe veya ön ayar boyutuna ölçekleyin."
|
||||
i18n_source_hash: bb1f67871fea
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: e12f5786b02b
|
||||
---
|
||||
|
||||
# Resize Video {#resize-video}
|
||||
|
||||
Bir videoyu özel piksel boyutları veya standart bir ön ayar kullanarak yeni bir çözünürlüğe ölçekleyin.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/resize-video`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| width | integer | No | - | Piksel cinsinden hedef genişlik (16-7680) |
|
||||
| height | integer | No | - | Piksel cinsinden hedef yükseklik (16-4320) |
|
||||
| preset | string | No | `"custom"` | Çözünürlük ön ayarı: `custom`, `2160p`, `1440p`, `1080p`, `720p`, `480p`, `360p` |
|
||||
|
||||
`preset` değeri `"custom"` olduğunda, `width` veya `height` değerlerinden en az biri sağlanmalıdır. Diğer boyut orantılı olarak ölçeklenir.
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/resize-video \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"preset": "720p"}'
|
||||
```
|
||||
|
||||
Özel boyutlara yeniden boyutlandırma:
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/resize-video \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"width": 1280, "height": 720}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
|
||||
"originalSize": 25000000,
|
||||
"processedSize": 8500000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- Ön ayar değerleri standart yüksekliklere eşlenir (örneğin `720p` = 1280x720, `1080p` = 1920x1080). Genişlik, kaynak en boy oranından orantılı olarak ölçeklenir.
|
||||
- Boyutlar, çoğu video codec'inin gerektirdiği gibi çift sayılara yuvarlanır.
|
||||
- Desteklenen maksimum çözünürlük 7680x4320'dir (8K UHD).
|
||||
@@ -0,0 +1,44 @@
|
||||
---
|
||||
description: "Bir video klibini geri sarın."
|
||||
i18n_source_hash: 98226f4e092d
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 717183aae703
|
||||
---
|
||||
|
||||
# Reverse Video {#reverse-video}
|
||||
|
||||
Bir video klibini geri sarın. Ses parçası da tersine çevrilir.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/reverse-video`
|
||||
|
||||
Bir video dosyası içeren multipart form data kabul eder. Bu aracın yapılandırılabilir ayarı yoktur.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
Bu aracın parametresi yoktur. Videonun tamamını tersine çevirir.
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/reverse-video \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4"
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 12600000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- 5 dakikaya kadar olan kliplerle sınırlıdır. Daha uzun videolar 400 hatasıyla reddedilir.
|
||||
- Hem video hem de ses parçaları tersine çevrilir. Videoyu sessiz olarak tersine çevirmek için önce sesini kapatın.
|
||||
@@ -0,0 +1,55 @@
|
||||
---
|
||||
description: "Bir videoyu döndürün veya çevirin."
|
||||
i18n_source_hash: cf9620ca62c7
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: f43adf749503
|
||||
---
|
||||
|
||||
# Rotate Video {#rotate-video}
|
||||
|
||||
Bir videoyu 90, 180 veya 270 derece döndürün ya da yatay veya dikey olarak çevirin.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/rotate-video`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| transform | string | Yes | - | Uygulanacak dönüşüm: `cw90`, `ccw90`, `180`, `hflip`, `vflip` |
|
||||
|
||||
### Transform Values {#transform-values}
|
||||
|
||||
- **cw90** - 90 derece saat yönünde döndür
|
||||
- **ccw90** - 90 derece saat yönünün tersine döndür
|
||||
- **180** - 180 derece döndür
|
||||
- **hflip** - Yatay olarak çevir (ayna)
|
||||
- **vflip** - Dikey olarak çevir
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/rotate-video \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"transform": "cw90"}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 12400000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- 90 veya 270 derecelik döndürmeler videonun genişliğini ve yüksekliğini yer değiştirir.
|
||||
- Çevirme işlemleri (hflip, vflip) video boyutlarını değiştirmez.
|
||||
@@ -0,0 +1,46 @@
|
||||
---
|
||||
description: "İki geçişli sabitleme ile kamera sarsıntısını azaltın."
|
||||
i18n_source_hash: ec908e91a752
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: e02fb70adf8b
|
||||
---
|
||||
|
||||
# Stabilize Video {#stabilize-video}
|
||||
|
||||
FFmpeg'in iki geçişli vidstab sabitlemesini kullanarak elde çekilmiş görüntülerdeki kamera sarsıntısını azaltın.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/stabilize-video`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder. Bu asenkron bir uç noktadır; hemen `202 Accepted` döndürür ve ilerleme `GET /api/v1/jobs/{jobId}/progress` adresinde SSE ile aktarılır.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| smoothing | integer | No | `15` | Kare cinsinden yumuşatma penceresi boyutu (5-60). Daha yüksek değerler daha yumuşak hareket üretir |
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/stabilize-video \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"smoothing": 30}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- Sabitleme iki geçişli bir süreçtir: ilk geçiş kamera hareketini analiz eder, ikinci geçiş düzeltmeyi uygular. Bu, tek geçişli araçlara göre kabaca iki kat daha uzun sürer.
|
||||
- Daha yüksek yumuşatma değerleri daha fazla sarsıntı giderir ancak kenarlarda hafif bir yakınlaştırma kırpması getirebilir.
|
||||
- İş tamamlanana kadar ilerleme güncellemeleri `GET /api/v1/jobs/{jobId}/progress` adresinde SSE ile sunulur.
|
||||
@@ -0,0 +1,50 @@
|
||||
---
|
||||
description: "Başlangıç ve bitiş zamanlarını belirterek bir videodan bir klip kesin."
|
||||
i18n_source_hash: c84481641979
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 322514bad655
|
||||
---
|
||||
|
||||
# Trim Video {#trim-video}
|
||||
|
||||
Başlangıç ve bitiş zamanlarını saniye cinsinden belirterek, kare hassasiyetli kesimler seçeneğiyle bir videodan bir klip kesin.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/trim-video`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| startS | number | No | `0` | Saniye cinsinden başlangıç zamanı (>= 0 olmalıdır) |
|
||||
| endS | number | Yes | - | Saniye cinsinden bitiş zamanı (startS'den sonra olmalıdır) |
|
||||
| precise | boolean | No | `false` | Anahtar kare arama yerine kare hassasiyetli kesimler için yeniden kodla |
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/trim-video \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"startS": 5, "endS": 30, "precise": true}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 4200000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- `precise` değeri `false` olduğunda (varsayılan), araç anahtar kare aramayı kullanır; bu hızlıdır ancak istenen zamandan birkaç kare önce başlayabilir.
|
||||
- `precise` değerini `true` olarak ayarlamak, segmenti tam kare sınırları için yeniden kodlar ancak daha uzun sürer.
|
||||
- `endS` değeri `startS` değerinden büyük olmalıdır.
|
||||
@@ -0,0 +1,51 @@
|
||||
---
|
||||
description: "Bir videonun parlaklığını, kontrastını, doygunluğunu ve gama değerini ayarlayın."
|
||||
i18n_source_hash: 40483b79d44b
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 64d5e9c516a7
|
||||
---
|
||||
|
||||
# Video Color {#video-color}
|
||||
|
||||
Bir videonun parlaklığını, kontrastını, doygunluğunu ve gama düzeltmesini ayarlayın.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/video-color`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| brightness | number | No | `0` | Parlaklık ayarı (-1 ile 1 arası) |
|
||||
| contrast | number | No | `1` | Kontrast çarpanı (0-4) |
|
||||
| saturation | number | No | `1` | Doygunluk çarpanı (0-3). Gri tonlama için 0'a ayarlayın |
|
||||
| gamma | number | No | `1` | Gama düzeltmesi (0.1-10) |
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/video-color \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"brightness": 0.1, "contrast": 1.2, "saturation": 1.5}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 12300000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- Tüm değerler varsayılanlarında (parlaklık 0, kontrast 1, doygunluk 1, gama 1) hiçbir değişiklik üretmez.
|
||||
- Doygunluğu `0` değerine ayarlamak videoyu gri tonlamaya dönüştürür.
|
||||
- 1'in altındaki gama değerleri gölgeleri aydınlatır, 1'in üstündeki değerler ise onları koyulaştırır.
|
||||
@@ -0,0 +1,45 @@
|
||||
---
|
||||
description: "Video ses seviyesini yayın standardına normalize edin."
|
||||
i18n_source_hash: 078f1e819c9a
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: c00465d6a4f0
|
||||
---
|
||||
|
||||
# Normalize Audio {#normalize-audio}
|
||||
|
||||
Video ses seviyesini EBU R128 yayın ses yüksekliği standardına normalize edin.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/video-loudnorm`
|
||||
|
||||
Bir video dosyası içeren multipart form data kabul eder. Bu aracın yapılandırılabilir ayarı yoktur.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
Bu aracın parametresi yoktur. Ses parçasına EBU R128 ses yüksekliği normalizasyonu uygular.
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/video-loudnorm \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4"
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 12500000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- FFmpeg'in `loudnorm` filtresini kullanır; -16 LUFS entegre ses yüksekliği, -1.5 dBTP gerçek tepe ve 11 LU ses yüksekliği aralığını (EBU R128 yayın standardı) hedefler.
|
||||
- Kaynak ses örnekleme hızı çıktıda korunur.
|
||||
- Videoda ses parçası yoksa, istek 400 hatası döndürür.
|
||||
@@ -0,0 +1,54 @@
|
||||
---
|
||||
description: "Bir videodan meta verileri temizleyin ve neler bulunduğunu raporlayın."
|
||||
i18n_source_hash: 69621bfb98ca
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 2fb96b378c62
|
||||
---
|
||||
|
||||
# Clean Video Metadata {#clean-video-metadata}
|
||||
|
||||
Bir videodan meta verileri (oluşturma tarihi, GPS koordinatları, kamera modeli, yazılım etiketleri vb.) temizleyin ve nelerin kaldırıldığını raporlayın.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/video-metadata`
|
||||
|
||||
Bir video dosyası içeren multipart form data kabul eder. Bu aracın yapılandırılabilir ayarı yoktur.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
Bu aracın parametresi yoktur. Video konteynerinden tüm meta verileri temizler.
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/video-metadata \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4"
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip_clean.mp4",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 12480000,
|
||||
"metadata": {
|
||||
"container": "mov,mp4,m4a,3gp,3g2,mj2",
|
||||
"durationS": 42.5,
|
||||
"bitrateKbps": 2350,
|
||||
"streams": [
|
||||
{ "type": "video", "codec": "h264", "width": 1920, "height": 1080 },
|
||||
{ "type": "audio", "codec": "aac", "sampleRate": 48000 }
|
||||
]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- Temizlenen meta veriler; oluşturma zaman damgalarını, GPS/konum verilerini, kamera/cihaz bilgilerini ve yazılım etiketlerini içerir.
|
||||
- Video ve ses akışları yeniden kodlanmadan kopyalanır, bu yüzden kalite kaybı olmaz.
|
||||
- Videoları herkese açık paylaşmadan önce gizlilik için kullanışlıdır.
|
||||
@@ -0,0 +1,49 @@
|
||||
---
|
||||
description: "Bir videoyu hızlandırın veya yavaşlatın."
|
||||
i18n_source_hash: 98dfc75c0507
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: d3dc5ff985a9
|
||||
---
|
||||
|
||||
# Video Speed {#video-speed}
|
||||
|
||||
Ses perdesini koruma seçeneğiyle bir videoyu hızlandırın veya yavaşlatın.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/video-speed`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| factor | number | No | `2` | Hız çarpanı (0.25-4). 1'in üstündeki değerler hızlandırır, altındakiler yavaşlatır |
|
||||
| keepPitch | boolean | No | `true` | Hız değişirken ses perdesini koru |
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/video-speed \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"factor": 0.5, "keepPitch": true}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 24800000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- `2` değerinde bir çarpan oynatma hızını iki katına çıkarır (süreyi yarıya indirir). `0.5` değerinde bir çarpan oynatma hızını yarıya indirir (süreyi iki katına çıkarır).
|
||||
- `keepPitch` değeri `true` olduğunda, ses zamanda gerilir, böylece sesler doğal duyulur. `false` olduğunda, perde hızla orantılı olarak kayar.
|
||||
- Geçerli aralık 0.25x ile 4x arasıdır.
|
||||
@@ -0,0 +1,62 @@
|
||||
---
|
||||
description: "Bir videodan kareleri görüntülerden oluşan bir ZIP olarak çıkarın."
|
||||
i18n_source_hash: b06f038dafb3
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: a622be5da8ce
|
||||
---
|
||||
|
||||
# Video to Frames {#video-to-frames}
|
||||
|
||||
Bir videodan tek tek kareleri çıkarın ve bunları PNG veya JPG görüntülerinden oluşan bir ZIP arşivi olarak indirin.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/video-to-frames`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| mode | string | No | `"all"` | Çıkarma modu: `all`, `nth`, `timestamps` |
|
||||
| n | integer | No | `10` | Her N'inci kareyi çıkar (2-1000). Yalnızca mode `"nth"` olduğunda kullanılır |
|
||||
| timestamps | string | No | `""` | Saniye cinsinden virgülle ayrılmış zaman damgaları. mode `"timestamps"` olduğunda gereklidir |
|
||||
| format | string | No | `"png"` | Çıkarılan kareler için görüntü formatı: `png`, `jpg` |
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
Her 30. kareyi JPG olarak çıkar:
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/video-to-frames \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"mode": "nth", "n": 30, "format": "jpg"}'
|
||||
```
|
||||
|
||||
Belirli zaman damgalarında kareleri çıkar:
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/video-to-frames \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"mode": "timestamps", "timestamps": "1.5,5,12.3"}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip-frames.zip",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 45000000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- `all` modu her kareyi çıkarır ve uzun videolar için çok büyük ZIP dosyaları üretebilir. Seçici çıkarma için `nth` veya `timestamps` modunu kullanın.
|
||||
- PNG tam kaliteyi korur ancak daha büyük dosyalar üretir. JPG daha küçüktür ancak kayıplıdır.
|
||||
- Yanıt, sıralı olarak numaralandırılmış görüntü dosyaları içeren bir ZIP arşivi olarak indirilir.
|
||||
@@ -0,0 +1,49 @@
|
||||
---
|
||||
description: "Bir video klibini animasyonlu bir GIF'e dönüştürün."
|
||||
i18n_source_hash: f729dde8cd55
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: f55d64a10f0f
|
||||
---
|
||||
|
||||
# Video to GIF {#video-to-gif}
|
||||
|
||||
Bir video klibini yapılandırılabilir kare hızı, genişlik, başlangıç zamanı ve süreyle animasyonlu bir GIF'e dönüştürün.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/video-to-gif`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder. Bu asenkron bir uç noktadır; hemen `202 Accepted` döndürür ve ilerleme `GET /api/v1/jobs/{jobId}/progress` adresinde SSE ile aktarılır.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| fps | integer | No | `12` | Çıktı kare hızı (1-30) |
|
||||
| width | integer | No | `480` | Piksel cinsinden çıktı genişliği (64-1280). Yükseklik orantılı olarak ölçeklenir |
|
||||
| startS | number | No | `0` | Saniye cinsinden başlangıç zamanı (>= 0 olmalıdır) |
|
||||
| durationS | number | No | `5` | Saniye cinsinden süre (0'ın üstünde, en fazla 60) |
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/video-to-gif \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"fps": 15, "width": 320, "startS": 2, "durationS": 8}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- Daha düşük `fps` ve `width` değerleri daha küçük GIF dosyaları üretir. 12 fps'de 480px genişliğinde bir GIF genellikle iyi bir dengedir.
|
||||
- Maksimum süre 60 saniyedir. Daha uzun klipler çok büyük dosyalar üretir.
|
||||
- İş tamamlanana kadar ilerleme güncellemeleri `GET /api/v1/jobs/{jobId}/progress` adresinde SSE ile sunulur.
|
||||
@@ -0,0 +1,51 @@
|
||||
---
|
||||
description: "Bir video klibini animasyonlu bir WebP görüntüsüne dönüştürün."
|
||||
i18n_source_hash: 7b1a22459bd1
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: e858c06e8dcb
|
||||
---
|
||||
|
||||
# Video to WebP {#video-to-webp}
|
||||
|
||||
Bir video klibini yapılandırılabilir kare hızı, genişlik ve kaliteyle animasyonlu bir WebP görüntüsüne dönüştürün.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/video-to-webp`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| fps | integer | No | `12` | Çıktı kare hızı (1-30) |
|
||||
| width | integer | No | `480` | Piksel cinsinden çıktı genişliği (16-1920). Yükseklik orantılı olarak ölçeklenir |
|
||||
| quality | integer | No | `75` | WebP sıkıştırma kalitesi (1-100) |
|
||||
| loop | boolean | No | `true` | Animasyonu döngüye al |
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/video-to-webp \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"fps": 15, "width": 640, "quality": 80}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.webp",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 2800000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- Animasyonlu WebP, GIF'ten daha küçük dosyalar üretir ve daha iyi renk desteği sunar (24 bit'e karşı 8 bit palet).
|
||||
- Daha düşük `quality` değerleri görsel doğruluk pahasına daha küçük dosyalar üretir.
|
||||
- Bir kez oynatılıp durması gereken animasyonlar için `loop` değerini `false` olarak ayarlayın.
|
||||
@@ -0,0 +1,58 @@
|
||||
---
|
||||
description: "Video karelerine bir metin filigranı işleyin."
|
||||
i18n_source_hash: 937bb075b894
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 6fcc828495a7
|
||||
---
|
||||
|
||||
# Watermark Video {#watermark-video}
|
||||
|
||||
Bir videonun her karesine yapılandırılabilir konum, boyut, saydamlık ve renkle bir metin filigranı işleyin.
|
||||
|
||||
## API Endpoint {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/video/watermark-video`
|
||||
|
||||
Bir video dosyası ve bir JSON `settings` alanı içeren multipart form data kabul eder.
|
||||
|
||||
## Parameters {#parameters}
|
||||
|
||||
| Parameter | Type | Required | Default | Description |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| text | string | Yes | - | Filigran metni (1-200 karakter) |
|
||||
| position | string | No | `"br"` | Karedeki konum: `tl`, `tc`, `tr`, `l`, `c`, `r`, `bl`, `bc`, `br` |
|
||||
| fontSize | integer | No | `36` | Piksel cinsinden yazı tipi boyutu (8-120) |
|
||||
| opacity | number | No | `0.5` | Filigran saydamlığı (0.05-1) |
|
||||
| color | string | No | `"#ffffff"` | Metin için hex renk (örneğin `"#ffffff"`) |
|
||||
|
||||
### Position Values {#position-values}
|
||||
|
||||
- **tl** - Sol üst, **tc** - Üst orta, **tr** - Sağ üst
|
||||
- **l** - Orta sol, **c** - Orta, **r** - Orta sağ
|
||||
- **bl** - Sol alt, **bc** - Alt orta, **br** - Sağ alt
|
||||
|
||||
## Example Request {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/video/watermark-video \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@clip.mp4" \
|
||||
-F 'settings={"text": "PREVIEW", "position": "c", "fontSize": 48, "opacity": 0.3}'
|
||||
```
|
||||
|
||||
## Example Response {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
|
||||
"originalSize": 12500000,
|
||||
"processedSize": 12400000
|
||||
}
|
||||
```
|
||||
|
||||
## Notes {#notes}
|
||||
|
||||
- Filigran, video karelerine kalıcı olarak işlenir ve işlemden sonra kaldırılamaz.
|
||||
- Filigran, FFmpeg'e yerleşik bir sans-serif yazı tipi kullanır.
|
||||
- Görüntü filigranları için bunun yerine image Watermark aracını kullanın.
|
||||
Reference in New Issue
Block a user