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: "Lägg till enfärgade fält för att passa ett målformat."
i18n_source_hash: b8e17dffc341
i18n_provenance: human
i18n_output_hash: ef782639c63a
---
# Aspect Pad {#aspect-pad}
Lägg till enfärgade letterbox- eller pillarbox-fält för att få en video att passa in i ett målbildförhållande utan att beskära.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/video/aspect-pad`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| target | string | Nej | `"9:16"` | Målbildförhållande: `16:9`, `9:16`, `1:1`, `4:3`, `3:4` |
| color | string | Nej | `"#000000"` | Hex-färg för utfyllnadsfälten (t.ex. `"#000000"` för svart) |
## Example Request {#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"}'
```
## 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": 13200000
}
```
## Notes {#notes}
- Om videon redan matchar målbildförhållandet returneras filen oförändrad.
- Använd `9:16` för vertikala/porträttformat för sociala medier (TikTok, Reels, Shorts).
- För suddig utfyllnad istället för enfärgad, använd verktyget Blur Pad.
@@ -0,0 +1,48 @@
---
description: "Generera undertextfiler från videons ljudspår med AI."
i18n_source_hash: 35b1e78501ad
i18n_provenance: human
i18n_output_hash: e073c48141c0
---
# Auto Subtitles {#auto-subtitles}
Generera undertextfiler från en videos ljudspår med AI-driven taligenkänning (faster-whisper). Stöder automatisk igenkänning och 10 uttryckliga språk.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/video/auto-subtitles`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`. Detta är en asynkron slutpunkt - den returnerar `202 Accepted` omedelbart och förloppet strömmas via SSE på `GET /api/v1/jobs/{jobId}/progress`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| language | string | Nej | `"auto"` | Talat språk: `auto`, `en`, `de`, `fr`, `es`, `zh`, `ja`, `ko`, `id`, `th`, `vi` |
| format | string | Nej | `"srt"` | Utdataformat för undertext: `srt`, `vtt` |
## Example Request {#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"}'
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
```
## Notes {#notes}
- Detta är ett AI-verktyg som kräver att funktionspaketet **transcription** är installerat. Om paketet inte är installerat returnerar API:et `501 Feature Not Installed` med instruktioner om hur du installerar det via administratörsgränssnittet.
- Språkalternativet `auto` använder whispers inbyggda språkigenkänning. Att ange språket uttryckligen förbättrar träffsäkerheten och hastigheten.
- SRT är det bredast stödda undertextformatet. VTT (WebVTT) är standarden för webbvideospelare.
- Förloppsuppdateringar finns tillgängliga via SSE på `GET /api/v1/jobs/{jobId}/progress` tills jobbet är klart.
+49
View File
@@ -0,0 +1,49 @@
---
description: "Fyll fälten med en suddig kopia av videon."
i18n_source_hash: 0c72aaefc6de
i18n_provenance: human
i18n_output_hash: 5e6753613e73
---
# Blur Pad {#blur-pad}
Få en video att passa in i ett målbildförhållande genom att fylla utfyllnadsområdet med en suddig, skalad kopia av videon istället för enfärgade fält.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/video/blur-pad`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| target | string | Nej | `"16:9"` | Målbildförhållande: `16:9`, `9:16`, `1:1`, `4:3`, `3:4` |
| blur | number | Nej | `20` | Gaussisk oskärpa-sigma för bakgrunden (2-50) |
## Example Request {#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}'
```
## 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": 14100000
}
```
## Notes {#notes}
- Högre oskärpevärden ger en mjukare, mer abstrakt bakgrund. Lägre värden behåller mer synliga detaljer.
- Om videon redan matchar målbildförhållandet returneras filen oförändrad.
- För enfärgad utfyllnad, använd verktyget Aspect Pad istället.
@@ -0,0 +1,47 @@
---
description: "Rendrera undertexter permanent på videobildrutor."
i18n_source_hash: 2d3111589db0
i18n_provenance: human
i18n_output_hash: abeaacc1d1fc
---
# Bränn in undertexter {#burn-subtitles}
Rendrera (hårdkoda) permanent undertexter från en SRT-, VTT- eller ASS-fil på varje bildruta i en video.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/burn-subtitles`
Tar emot multipart-formulärdata med en videofil och en undertextfil. Detta är en asynkron slutpunkt - den returnerar `202 Accepted` omedelbart och förloppet strömmas via SSE på `GET /api/v1/jobs/{jobId}/progress`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| fontSize | integer | Nej | `24` | Teckenstorlek för undertext i pixlar (8-72) |
## Exempelbegäran {#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}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
```
## Anteckningar {#notes}
- Ladda upp två filer: den första måste vara en video, den andra måste vara en undertextfil (.srt, .vtt eller .ass).
- Inbrända undertexter är permanent en del av videon och kan inte stängas av av tittaren. För undertexter som kan slås av och på, använd verktyget Bädda in undertexter i stället.
- Förloppsuppdateringar finns tillgängliga via SSE på `GET /api/v1/jobs/{jobId}/progress` tills jobbet är klart.
+48
View File
@@ -0,0 +1,48 @@
---
description: "Ändra bildhastigheten för en video."
i18n_source_hash: 2bffbd04a1cb
i18n_provenance: human
i18n_output_hash: bc8c2f68fdfb
---
# Ändra FPS {#change-fps}
Ändra bildhastigheten för en video till ett målvärde mellan 1 och 120 fps.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/change-fps`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| fps | number | Nej | `30` | Målbildhastighet (1-120) |
## Exempelbegäran {#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}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
"originalSize": 12500000,
"processedSize": 10200000
}
```
## Anteckningar {#notes}
- Att sänka bildhastigheten släpper bildrutor och minskar filstorleken. Att öka den duplicerar bildrutor för att fylla luckan men tillför ingen verklig rörelsedetalj.
- Vanliga målvärden: 24 (bio), 30 (webb/broadcast), 60 (jämn uppspelning).
- Ljudspåret bevaras med sin ursprungliga samplingsfrekvens.
@@ -0,0 +1,47 @@
---
description: "Krymp videofilstorleken med kvalitetskontroll."
i18n_source_hash: 9cc1f1acf74e
i18n_provenance: human
i18n_output_hash: c8050cf2ea62
---
# Komprimera video {#compress-video}
Krymp videofilstorleken med konfigurerbar komprimeringsstyrka och valfri nedskalning av upplösning.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/compress-video`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`. Detta är en asynkron slutpunkt - den returnerar `202 Accepted` omedelbart och förloppet strömmas via SSE på `GET /api/v1/jobs/{jobId}/progress`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| quality | string | Nej | `"balanced"` | Komprimeringsstyrka: `light`, `balanced`, `strong` |
| resolution | string | Nej | `"original"` | Utdataupplösning: `original`, `1080p`, `720p`, `480p` |
## Exempelbegäran {#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"}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
```
## Anteckningar {#notes}
- Förinställningen `light` bevarar nära originalkvalitet. Förinställningen `strong` minskar filstorleken aggressivt på bekostnad av visuell trohet.
- Nedskalning av upplösning (t.ex. från 4K till 720p) kombineras med komprimering för betydande storleksminskning.
- Förloppsuppdateringar finns tillgängliga via SSE på `GET /api/v1/jobs/{jobId}/progress` tills jobbet är klart.
+47
View File
@@ -0,0 +1,47 @@
---
description: "Konvertera videor mellan MP4, MOV, WebM, AVI och MKV."
i18n_source_hash: 8f9e6418b1c6
i18n_provenance: human
i18n_output_hash: b7978a51a1ab
---
# Konvertera video {#convert-video}
Konvertera videor mellan formaten MP4, MOV, WebM, AVI och MKV med konfigurerbara kvalitetsförinställningar.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/convert-video`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`. Detta är en asynkron slutpunkt - den returnerar `202 Accepted` omedelbart och förloppet strömmas via SSE på `GET /api/v1/jobs/{jobId}/progress`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| format | string | Nej | `"mp4"` | Utdataformat: `mp4`, `mov`, `webm`, `avi`, `mkv` |
| quality | string | Nej | `"balanced"` | Kvalitetsförinställning: `high`, `balanced`, `small` |
## Exempelbegäran {#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"}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
```
## Anteckningar {#notes}
- Kvalitetsförinställningen `high` ger bäst visuell trohet men större filer. Förinställningen `small` komprimerar aggressivt för minsta möjliga filstorlek.
- WebM-utdata använder VP9-kodning. MP4 och MOV använder H.264. AVI och MKV finns tillgängliga för äldre eller arkivbaserade arbetsflöden.
- Förloppsuppdateringar finns tillgängliga via SSE på `GET /api/v1/jobs/{jobId}/progress` tills jobbet är klart.
+51
View File
@@ -0,0 +1,51 @@
---
description: "Beskär en region ur en video."
i18n_source_hash: fab11f71a202
i18n_provenance: human
i18n_output_hash: d51cf160a512
---
# Beskär video {#crop-video}
Beskär en rektangulär region ur en video genom att ange regionens storlek och position.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/crop-video`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| width | integer | Ja | - | Bredd på beskärningsregionen i pixlar (minimum 16) |
| height | integer | Ja | - | Höjd på beskärningsregionen i pixlar (minimum 16) |
| x | integer | Nej | `0` | Horisontell förskjutning från övre vänstra hörnet |
| y | integer | Nej | `0` | Vertikal förskjutning från övre vänstra hörnet |
## Exempelbegäran {#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}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
"originalSize": 12500000,
"processedSize": 5200000
}
```
## Anteckningar {#notes}
- Beskärningsregionen måste rymmas inom videons dimensioner. Om `x + width` eller `y + height` överskrider källstorleken returnerar begäran ett 400-fel.
- Minsta beskärningsstorlek är 16x16 pixlar.
- Dimensioner avrundas till jämna tal enligt kraven hos de flesta videocodecs.
@@ -0,0 +1,49 @@
---
description: "Muxa ett undertextspår in i videocontainern."
i18n_source_hash: be272730fff5
i18n_provenance: human
i18n_output_hash: b8292b149752
---
# Bädda in undertexter {#embed-subtitles}
Muxa en undertextfil in i videocontainern som ett mjukt undertextspår som tittarna kan slå av och på.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/embed-subtitles`
Tar emot multipart-formulärdata med en videofil och en undertextfil, plus ett JSON-fält `settings`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| language | string | Nej | `"eng"` | Språkkod enligt ISO 639-2/B (3 gemena bokstäver, t.ex. `"eng"`, `"fra"`, `"deu"`) |
## Exempelbegäran {#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"}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
"originalSize": 12500000,
"processedSize": 12520000
}
```
## Anteckningar {#notes}
- Ladda upp två filer: den första måste vara en video, den andra måste vara en undertextfil (.srt, .vtt eller .ass).
- Inbäddade (mjuka) undertexter kan slås av och på av tittaren i deras mediaspelare. För permanent synliga undertexter, använd verktyget Bränn in undertexter i stället.
- Språkkoden lagras som metadata i containern och hjälper mediaspelare att märka undertextspåret.
+48
View File
@@ -0,0 +1,48 @@
---
description: "Dra ut ljudspåret ur en video."
i18n_source_hash: f5b8330a5f89
i18n_provenance: human
i18n_output_hash: cb41c39b0224
---
# Extrahera ljud {#extract-audio}
Extrahera ljudspåret från en videofil och spara det som MP3, WAV, M4A eller OGG.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/extract-audio`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| format | string | Nej | `"mp3"` | Utdataljudformat: `mp3`, `wav`, `m4a`, `ogg` |
## Exempelbegäran {#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"}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp3",
"originalSize": 12500000,
"processedSize": 3200000
}
```
## Anteckningar {#notes}
- Om videon inte har något ljudspår returnerar begäran ett 400-fel.
- MP3 är förstörande men brett kompatibelt. WAV är förlustfritt men stort. M4A (AAC) erbjuder en bra balans mellan kvalitet och storlek. OGG finns tillgängligt för arbetsflöden med öppna codecs.
- När källjudet redan är AAC och utdataformatet är M4A kopieras ljudströmmen utan omkodning.
@@ -0,0 +1,45 @@
---
description: "Dra ut undertextspåret ur en video som en SRT-fil."
i18n_source_hash: 48db860f6676
i18n_provenance: human
i18n_output_hash: e59d5b391e74
---
# Extrahera undertexter {#extract-subtitles}
Extrahera det inbäddade undertextspåret från en videocontainer och ladda ner det som en SRT-fil.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/extract-subtitles`
Tar emot multipart-formulärdata med en videofil. Detta verktyg har inga konfigurerbara inställningar.
## Parametrar {#parameters}
Detta verktyg har inga parametrar. Det extraherar det första undertextspåret som hittas i videocontainern.
## Exempelbegäran {#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"
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.srt",
"originalSize": 12500000,
"processedSize": 4500
}
```
## Anteckningar {#notes}
- Videon måste innehålla ett inbäddat undertextspår. Om inget undertextspår hittas returnerar begäran ett 400-fel.
- Om videon har flera undertextspår extraheras det första.
- Utdataformatet är SRT oavsett det ursprungliga undertextformatet i containern.
+48
View File
@@ -0,0 +1,48 @@
---
description: "Konvertera en animerad GIF till en MP4-, WebM- eller MOV-video."
i18n_source_hash: c3737b31146d
i18n_provenance: human
i18n_output_hash: af290662a4c7
---
# GIF till video {#gif-to-video}
Konvertera en animerad GIF till en kompakt MP4-, WebM- eller MOV-videofil.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/gif-to-video`
Tar emot multipart-formulärdata med en GIF-fil och ett JSON-fält `settings`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| format | string | Nej | `"mp4"` | Utdataformat: `mp4`, `webm`, `mov` |
## Exempelbegäran {#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"}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/animation.mp4",
"originalSize": 8500000,
"processedSize": 950000
}
```
## Anteckningar {#notes}
- Att konvertera GIF till video minskar vanligtvis filstorleken med 80-90 % samtidigt som samma visuella kvalitet bibehålls.
- Endast animerade GIF-filer accepteras. Statiska bilder bör använda bildverktyget Konvertera.
- MP4 och MOV använder H.264-kodning, WebM använder VP9.
@@ -0,0 +1,54 @@
---
description: "Gör en uppsättning bilder till en bildspelsvideo."
i18n_source_hash: 2c6f183feb6d
i18n_provenance: human
i18n_output_hash: b3230a3196e4
---
# Bilder till video {#images-to-video}
Gör en uppsättning bilder till en bildspelsvideo med konfigurerbar visningstid per bild, upplösning och bildhastighet.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/images-to-video`
Tar emot multipart-formulärdata med två eller fler bildfiler och ett JSON-fält `settings`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| secondsPerImage | number | Nej | `2` | Visningstid per bild i sekunder (0.5-10) |
| resolution | string | Nej | `"720p"` | Utdataupplösning: `1080p`, `720p`, `square` |
| fps | integer | Nej | `30` | Utdatabildhastighet (10-60) |
## Exempelbegäran {#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"}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/slideshow.mp4",
"originalSize": 3500000,
"processedSize": 1200000
}
```
## Anteckningar {#notes}
- Tar emot 2-60 bildfiler per begäran. Bilderna visas i videon i uppladdningsordning.
- Bilder storleksändras och fylls ut för att passa målupplösningen samtidigt som bildförhållandet bevaras.
- Upplösningsalternativet `square` ger en video på 1080x1080, användbart för sociala medier.
- Utdataformatet är alltid MP4 (H.264).
+46
View File
@@ -0,0 +1,46 @@
---
description: "Foga samman flera videoklipp till en fil."
i18n_source_hash: 90463dfbb580
i18n_provenance: human
i18n_output_hash: 9b8587705ebe
---
# Slå samman videor {#merge-videos}
Foga samman flera videoklipp till en enda MP4-fil. Alla indata normaliseras till den första videons upplösning och 30 fps.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/merge-videos`
Tar emot multipart-formulärdata med två eller fler videofiler. Detta är en asynkron slutpunkt - den returnerar `202 Accepted` omedelbart och förloppet strömmas via SSE på `GET /api/v1/jobs/{jobId}/progress`.
## Parametrar {#parameters}
Detta verktyg har inga inställningsparametrar. Ladda upp 2-10 videofiler som flera `file`-delar.
## Exempelbegäran {#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"
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
```
## Anteckningar {#notes}
- Klipp sammanfogas i den ordning de laddas upp.
- Alla klipp omkodas för att matcha det första klippets upplösning, bildhastighet (30 fps) och codec (H.264). Indata som inte matchar normaliseras automatiskt.
- Tar emot 2-10 videofiler per begäran.
- Förloppsuppdateringar finns tillgängliga via SSE på `GET /api/v1/jobs/{jobId}/progress` tills jobbet är klart.
+44
View File
@@ -0,0 +1,44 @@
---
description: "Ta bort ljudspåret från en video."
i18n_source_hash: 9a0c60bbcaa3
i18n_provenance: human
i18n_output_hash: c673ebcec580
---
# Tysta video {#mute-video}
Ta bort ljudspåret från en video och lämna endast den visuella strömmen.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/mute-video`
Tar emot multipart-formulärdata med en videofil. Detta verktyg har inga konfigurerbara inställningar.
## Parametrar {#parameters}
Detta verktyg har inga parametrar. Det tar bort ljudspåret från den uppladdade videon.
## Exempelbegäran {#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"
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
"originalSize": 12500000,
"processedSize": 8900000
}
```
## Anteckningar {#notes}
- Videoströmmen kopieras utan omkodning, så det finns ingen kvalitetsförlust.
- Om indatavideon inte har något ljudspår returneras filen oförändrad.
+46
View File
@@ -0,0 +1,46 @@
---
description: "Byt ut ljudspåret i en video mot en annan fil."
i18n_source_hash: fabc2a953103
i18n_provenance: human
i18n_output_hash: b866c4eaac24
---
# Ersätt ljud {#replace-audio}
Byt ut ljudspåret i en video mot en ljudfil. Ladda upp både en video och en ljudfil.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/replace-audio`
Tar emot multipart-formulärdata med exakt två filer: en videofil följd av en ljudfil.
## Parametrar {#parameters}
Detta verktyg har inga inställningsparametrar. Ladda upp en videofil och en ljudfil som två `file`-delar.
## Exempelbegäran {#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"
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
"originalSize": 12500000,
"processedSize": 13100000
}
```
## Anteckningar {#notes}
- Exakt två filer måste laddas upp: den första måste vara en video, den andra måste vara en ljudfil.
- Om ljudfilen är längre än videon trimmas den för att matcha videons längd. Om den är kortare spelas den återstående videon upp i tystnad.
- Videoströmmen kopieras utan omkodning, så det finns ingen förlust av videokvalitet.
+61
View File
@@ -0,0 +1,61 @@
---
description: "Skala en video till en ny upplösning eller förinställd storlek."
i18n_source_hash: bb1f67871fea
i18n_provenance: human
i18n_output_hash: 7d997faec991
---
# Ändra storlek på video {#resize-video}
Skala en video till en ny upplösning med anpassade pixeldimensioner eller en standardförinställning.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/resize-video`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| width | integer | Nej | - | Målbredd i pixlar (16-7680) |
| height | integer | Nej | - | Målhöjd i pixlar (16-4320) |
| preset | string | Nej | `"custom"` | Upplösningsförinställning: `custom`, `2160p`, `1440p`, `1080p`, `720p`, `480p`, `360p` |
När `preset` är `"custom"` måste minst en av `width` eller `height` anges. Den andra dimensionen skalas proportionellt.
## Exempelbegäran {#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"}'
```
Ändra storlek till anpassade dimensioner:
```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}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
"originalSize": 25000000,
"processedSize": 8500000
}
```
## Anteckningar {#notes}
- Förinställningsvärden mappar till standardhöjder (t.ex. `720p` = 1280x720, `1080p` = 1920x1080). Bredden skalas proportionellt från källans bildförhållande.
- Dimensioner avrundas till jämna tal enligt kraven hos de flesta videocodecs.
- Maximalt stödd upplösning är 7680x4320 (8K UHD).
+44
View File
@@ -0,0 +1,44 @@
---
description: "Spela upp ett videoklipp baklänges."
i18n_source_hash: 98226f4e092d
i18n_provenance: human
i18n_output_hash: 367036902c1f
---
# Vänd video {#reverse-video}
Spela upp ett videoklipp baklänges. Ljudspåret vänds också.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/reverse-video`
Tar emot multipart-formulärdata med en videofil. Detta verktyg har inga konfigurerbara inställningar.
## Parametrar {#parameters}
Detta verktyg har inga parametrar. Det vänder hela videon.
## Exempelbegäran {#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"
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
"originalSize": 12500000,
"processedSize": 12600000
}
```
## Anteckningar {#notes}
- Begränsat till klipp på upp till 5 minuters längd. Längre videor avvisas med ett 400-fel.
- Både video- och ljudspår vänds. För att vända video utan ljud, tysta den först.
+55
View File
@@ -0,0 +1,55 @@
---
description: "Rotera eller vänd en video."
i18n_source_hash: cf9620ca62c7
i18n_provenance: human
i18n_output_hash: ecc00615c658
---
# Rotera video {#rotate-video}
Rotera en video med 90, 180 eller 270 grader, eller vänd den horisontellt eller vertikalt.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/rotate-video`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| transform | string | Ja | - | Transformation att tillämpa: `cw90`, `ccw90`, `180`, `hflip`, `vflip` |
### Transformvärden {#transform-values}
- **cw90** - Rotera 90 grader medurs
- **ccw90** - Rotera 90 grader moturs
- **180** - Rotera 180 grader
- **hflip** - Vänd horisontellt (spegla)
- **vflip** - Vänd vertikalt
## Exempelbegäran {#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"}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
"originalSize": 12500000,
"processedSize": 12400000
}
```
## Anteckningar {#notes}
- Rotationer med 90 eller 270 grader byter plats på videons bredd och höjd.
- Vändoperationer (hflip, vflip) ändrar inte videons dimensioner.
@@ -0,0 +1,46 @@
---
description: "Minska kameraskakningar med tvåpassstabilisering."
i18n_source_hash: ec908e91a752
i18n_provenance: human
i18n_output_hash: 1af0454b1d97
---
# Stabilisera video {#stabilize-video}
Minska kameraskakningar i handhållet material med FFmpegs tvåpass-vidstab-stabilisering.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/stabilize-video`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`. Detta är en asynkron slutpunkt - den returnerar `202 Accepted` omedelbart och förloppet strömmas via SSE på `GET /api/v1/jobs/{jobId}/progress`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| smoothing | integer | Nej | `15` | Storlek på utjämningsfönstret i bildrutor (5-60). Högre värden ger jämnare rörelse |
## Exempelbegäran {#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}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
```
## Anteckningar {#notes}
- Stabilisering är en tvåpassprocess: det första passet analyserar kamerarörelsen och det andra passet tillämpar korrigeringen. Detta tar ungefär dubbelt så lång tid som enpassverktyg.
- Högre utjämningsvärden tar bort mer skakning men kan introducera en lätt zoom-beskärning vid kanterna.
- Förloppsuppdateringar finns tillgängliga via SSE på `GET /api/v1/jobs/{jobId}/progress` tills jobbet är klart.
+50
View File
@@ -0,0 +1,50 @@
---
description: "Klipp ut ett klipp ur en video genom att ange start- och sluttider."
i18n_source_hash: c84481641979
i18n_provenance: human
i18n_output_hash: 973e0e6bfe50
---
# Trimma video {#trim-video}
Klipp ut ett klipp ur en video genom att ange start- och sluttider i sekunder, med ett alternativ för bildruteexakta klipp.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/trim-video`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| startS | number | Nej | `0` | Starttid i sekunder (måste vara >= 0) |
| endS | number | Ja | - | Sluttid i sekunder (måste vara efter startS) |
| precise | boolean | Nej | `false` | Omkoda för bildruteexakta klipp i stället för nyckelbildsökning |
## Exempelbegäran {#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}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
"originalSize": 12500000,
"processedSize": 4200000
}
```
## Anteckningar {#notes}
- När `precise` är `false` (standardvärdet) använder verktyget nyckelbildsökning, vilket är snabbt men kan börja några bildrutor före den begärda tiden.
- Att sätta `precise` till `true` omkodar segmentet för exakta bildrutegränser, men tar längre tid.
- Värdet `endS` måste vara större än `startS`.
+51
View File
@@ -0,0 +1,51 @@
---
description: "Justera ljusstyrka, kontrast, mättnad och gamma för en video."
i18n_source_hash: 40483b79d44b
i18n_provenance: human
i18n_output_hash: 8dc388c08e2d
---
# Videofärg {#video-color}
Justera ljusstyrka, kontrast, mättnad och gammakorrigering på en video.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/video-color`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| brightness | number | Nej | `0` | Ljusstyrkejustering (-1 till 1) |
| contrast | number | Nej | `1` | Kontrastmultiplikator (0-4) |
| saturation | number | Nej | `1` | Mättnadsmultiplikator (0-3). Sätt till 0 för gråskala |
| gamma | number | Nej | `1` | Gammakorrigering (0.1-10) |
## Exempelbegäran {#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}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
"originalSize": 12500000,
"processedSize": 12300000
}
```
## Anteckningar {#notes}
- Alla värden vid sina standardvärden (ljusstyrka 0, kontrast 1, mättnad 1, gamma 1) ger ingen förändring.
- Att sätta mättnad till `0` konverterar videon till gråskala.
- Gammavärden under 1 ljusar upp skuggor, medan värden över 1 mörkar dem.
@@ -0,0 +1,45 @@
---
description: "Normalisera videons ljudvolym till broadcast-standard."
i18n_source_hash: 078f1e819c9a
i18n_provenance: human
i18n_output_hash: e9c221d506ca
---
# Normalisera ljud {#normalize-audio}
Normalisera videons ljudvolym till broadcast-standarden EBU R128 för ljudstyrka.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/video-loudnorm`
Tar emot multipart-formulärdata med en videofil. Detta verktyg har inga konfigurerbara inställningar.
## Parametrar {#parameters}
Detta verktyg har inga parametrar. Det tillämpar ljudstyrkenormalisering enligt EBU R128 på ljudspåret.
## Exempelbegäran {#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"
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
"originalSize": 12500000,
"processedSize": 12500000
}
```
## Anteckningar {#notes}
- Använder FFmpegs filter `loudnorm` som riktar in sig på -16 LUFS integrerad ljudstyrka med -1.5 dBTP true peak och 11 LU ljudstyrkeområde (broadcast-standarden EBU R128).
- Källjudets samplingsfrekvens bevaras i utdata.
- Om videon inte har något ljudspår returnerar begäran ett 400-fel.
@@ -0,0 +1,54 @@
---
description: "Ta bort metadata från en video och rapportera vad som hittades."
i18n_source_hash: 69621bfb98ca
i18n_provenance: human
i18n_output_hash: 3810cb71b19c
---
# Rensa videometadata {#clean-video-metadata}
Ta bort metadata (skapelsedatum, GPS-koordinater, kameramodell, programvarutaggar osv.) från en video och rapportera vad som togs bort.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/video-metadata`
Tar emot multipart-formulärdata med en videofil. Detta verktyg har inga konfigurerbara inställningar.
## Parametrar {#parameters}
Detta verktyg har inga parametrar. Det tar bort all metadata från videocontainern.
## Exempelbegäran {#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"
```
## Exempelsvar {#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 }
]
}
}
```
## Anteckningar {#notes}
- Borttagen metadata inkluderar skapelsetidsstämplar, GPS-/platsdata, kamera-/enhetsinformation och programvarutaggar.
- Video- och ljudströmmarna kopieras utan omkodning, så det finns ingen kvalitetsförlust.
- Användbart för integritet innan videor delas offentligt.
+49
View File
@@ -0,0 +1,49 @@
---
description: "Snabba upp eller sakta ner en video."
i18n_source_hash: 98dfc75c0507
i18n_provenance: human
i18n_output_hash: a23308e3c43e
---
# Videohastighet {#video-speed}
Snabba upp eller sakta ner en video med ett alternativ för att bevara ljudets tonhöjd.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/video-speed`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| factor | number | Nej | `2` | Hastighetsmultiplikator (0.25-4). Värden över 1 snabbar upp, under 1 saktar ner |
| keepPitch | boolean | Nej | `true` | Bevara ljudets tonhöjd vid hastighetsändring |
## Exempelbegäran {#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}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
"originalSize": 12500000,
"processedSize": 24800000
}
```
## Anteckningar {#notes}
- En faktor på `2` fördubblar uppspelningshastigheten (halverar längden). En faktor på `0.5` halverar uppspelningshastigheten (fördubblar längden).
- När `keepPitch` är `true` tidssträcks ljudet så att röster låter naturliga. När `false` förskjuts tonhöjden proportionellt med hastigheten.
- Det giltiga intervallet är 0.25x till 4x.
@@ -0,0 +1,62 @@
---
description: "Extrahera bildrutor från en video som en ZIP med bilder."
i18n_source_hash: b06f038dafb3
i18n_provenance: human
i18n_output_hash: c9993f561039
---
# Video till bildrutor {#video-to-frames}
Extrahera enskilda bildrutor från en video och ladda ner dem som ett ZIP-arkiv med PNG- eller JPG-bilder.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/video-to-frames`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| mode | string | Nej | `"all"` | Extraheringsläge: `all`, `nth`, `timestamps` |
| n | integer | Nej | `10` | Extrahera var N:e bildruta (2-1000). Används endast när mode är `"nth"` |
| timestamps | string | Nej | `""` | Kommaseparerade tidsstämplar i sekunder. Obligatorisk när mode är `"timestamps"` |
| format | string | Nej | `"png"` | Bildformat för extraherade bildrutor: `png`, `jpg` |
## Exempelbegäran {#example-request}
Extrahera var 30:e bildruta som JPG:
```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"}'
```
Extrahera bildrutor vid specifika tidsstämplar:
```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"}'
```
## Exempelsvar {#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
}
```
## Anteckningar {#notes}
- Läget `all` extraherar varje bildruta och kan producera mycket stora ZIP-filer för långa videor. Använd läget `nth` eller `timestamps` för selektiv extrahering.
- PNG bevarar full kvalitet men producerar större filer. JPG är mindre men förstörande.
- Svaret laddas ner som ett ZIP-arkiv som innehåller sekventiellt numrerade bildfiler.
+49
View File
@@ -0,0 +1,49 @@
---
description: "Gör ett videoklipp till en animerad GIF."
i18n_source_hash: f729dde8cd55
i18n_provenance: human
i18n_output_hash: 1a1bf6da84ca
---
# Video till GIF {#video-to-gif}
Gör ett videoklipp till en animerad GIF med konfigurerbar bildhastighet, bredd, starttid och längd.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/video-to-gif`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`. Detta är en asynkron slutpunkt - den returnerar `202 Accepted` omedelbart och förloppet strömmas via SSE på `GET /api/v1/jobs/{jobId}/progress`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| fps | integer | Nej | `12` | Utdatabildhastighet (1-30) |
| width | integer | Nej | `480` | Utdatabredd i pixlar (64-1280). Höjden skalas proportionellt |
| startS | number | Nej | `0` | Starttid i sekunder (måste vara >= 0) |
| durationS | number | Nej | `5` | Längd i sekunder (över 0, max 60) |
## Exempelbegäran {#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}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
```
## Anteckningar {#notes}
- Lägre värden på `fps` och `width` producerar mindre GIF-filer. En 480px bred GIF vid 12 fps är oftast en bra balans.
- Maximal längd är 60 sekunder. Längre klipp producerar mycket stora filer.
- Förloppsuppdateringar finns tillgängliga via SSE på `GET /api/v1/jobs/{jobId}/progress` tills jobbet är klart.
+51
View File
@@ -0,0 +1,51 @@
---
description: "Konvertera ett videoklipp till en animerad WebP-bild."
i18n_source_hash: 7b1a22459bd1
i18n_provenance: human
i18n_output_hash: f8fdfe79ddeb
---
# Video till WebP {#video-to-webp}
Konvertera ett videoklipp till en animerad WebP-bild med konfigurerbar bildhastighet, bredd och kvalitet.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/video-to-webp`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| fps | integer | Nej | `12` | Utdatabildhastighet (1-30) |
| width | integer | Nej | `480` | Utdatabredd i pixlar (16-1920). Höjden skalas proportionellt |
| quality | integer | Nej | `75` | WebP-komprimeringskvalitet (1-100) |
| loop | boolean | Nej | `true` | Loopa animationen |
## Exempelbegäran {#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}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.webp",
"originalSize": 12500000,
"processedSize": 2800000
}
```
## Anteckningar {#notes}
- Animerad WebP producerar mindre filer än GIF med bättre färgstöd (24-bitars mot 8-bitars palett).
- Lägre värden på `quality` producerar mindre filer på bekostnad av visuell trohet.
- Sätt `loop` till `false` för animationer som ska spelas upp en gång och sedan stanna.
@@ -0,0 +1,58 @@
---
description: "Bränn in en textvattenstämpel på videobildrutor."
i18n_source_hash: 937bb075b894
i18n_provenance: human
i18n_output_hash: fc5dfe90b136
---
# Vattenmärk video {#watermark-video}
Bränn in en textvattenstämpel på varje bildruta i en video med konfigurerbar position, storlek, opacitet och färg.
## API-slutpunkt {#api-endpoint}
`POST /api/v1/tools/video/watermark-video`
Tar emot multipart-formulärdata med en videofil och ett JSON-fält `settings`.
## Parametrar {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| text | string | Ja | - | Vattenstämpeltext (1-200 tecken) |
| position | string | Nej | `"br"` | Position på bildrutan: `tl`, `tc`, `tr`, `l`, `c`, `r`, `bl`, `bc`, `br` |
| fontSize | integer | Nej | `36` | Teckenstorlek i pixlar (8-120) |
| opacity | number | Nej | `0.5` | Vattenstämpelns opacitet (0.05-1) |
| color | string | Nej | `"#ffffff"` | Hex-färg för texten (t.ex. `"#ffffff"`) |
### Positionsvärden {#position-values}
- **tl** - Uppe till vänster, **tc** - Uppe i mitten, **tr** - Uppe till höger
- **l** - Mitten till vänster, **c** - Mitten, **r** - Mitten till höger
- **bl** - Nere till vänster, **bc** - Nere i mitten, **br** - Nere till höger
## Exempelbegäran {#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}'
```
## Exempelsvar {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/clip.mp4",
"originalSize": 12500000,
"processedSize": 12400000
}
```
## Anteckningar {#notes}
- Vattenstämpeln rendreras permanent in i videobildrutorna och kan inte tas bort efter bearbetning.
- Vattenstämpeln använder ett sans-serif-typsnitt inbyggt i FFmpeg.
- För bildvattenstämplar, använd bildverktyget Vattenmärke i stället.