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
+49
View File
@@ -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.
+49
View File
@@ -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.
+48
View File
@@ -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.
+47
View File
@@ -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.
+51
View File
@@ -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.
+48
View File
@@ -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.
+48
View File
@@ -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).
+46
View File
@@ -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.
+44
View File
@@ -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.
+46
View File
@@ -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.
+61
View File
@@ -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).
+44
View File
@@ -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.
+55
View File
@@ -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.
+50
View File
@@ -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.
+51
View File
@@ -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.
+49
View File
@@ -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.
+49
View File
@@ -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.
+51
View File
@@ -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.