media.trfx.de

Dynamischer Media Server — Bilder, Audio & Video on-the-fly verarbeiten

Nutzung

Dateien werden über die URL abgerufen. Mit Query-Parametern können Medien dynamisch verarbeitet werden.

https://media.trfx.de/{dateiname}?{parameter}

Ohne Parameter wird die Originaldatei direkt ausgeliefert.

Bildverarbeitung

Unterstützte Formate: PNG, JPG/JPEG, GIF, BMP, TIFF

Animierte GIFs verlieren bei der Verarbeitung ihre Animation (nur erstes Frame).

Parameter Typ Beschreibung Beispiel
wintBreite in Pixel (1–10000)?w=500
hintHöhe in Pixel (1–10000)?h=300
qintJPEG-Qualität 1–100 (Standard: 85)?q=90
fitstringResize-Modus (cover, contain, fill)?fit=cover
fstringAusgabeformat (png, jpg, gif, bmp, tiff)?f=png
blurfloatWeichzeichner-Stärke (0–100)?blur=5.0
sharpfloatSchärfen-Stärke (0–100)?sharp=3.0
grayboolGraustufen (1 oder true)?gray=1
rotintRotation (90, 180, 270)?rot=90
flipstringSpiegeln (h, v, hv)?flip=h

Resize-Modi (fit)

Audioverarbeitung

Unterstützte Formate: MP3, OGG, FLAC, WAV, AAC, M4A, WMA

Erfordert FFmpeg auf dem Server. Verarbeitung erfolgt on-the-fly.

Parameter Typ Beschreibung Beispiel
volfloatLautstärke-Multiplikator (0.0–10.0)?vol=2.0
speedfloatGeschwindigkeit (0.5–4.0)?speed=1.5
trimstringZuschnitt in Sekunden (start,ende)?trim=5,30
fadefloatFade-in/out Dauer in Sekunden?fade=2
afstringAusgabeformat (mp3, ogg, wav, flac, aac)?af=mp3

Videoverarbeitung

Unterstützte Formate: MP4, WebM, MKV, MOV, AVI, WMV

Erfordert FFmpeg auf dem Server. Verarbeitung erfolgt on-the-fly.

Parameter Typ Beschreibung Beispiel
wintBreite in Pixel?w=1280
hintHöhe in Pixel?h=720
volfloatLautstärke-Multiplikator (0.0–10.0)?vol=0.5
speedfloatGeschwindigkeit (0.5–4.0)?speed=2.0
trimstringZuschnitt in Sekunden (start,ende)?trim=0,10
muteboolAudio entfernen (1 oder true)?mute=1
fpsintFramerate ändern?fps=30
framefloatEinzelbild bei Sekunde extrahieren → gibt JPEG zurück?frame=5.0
vfstringAusgabeformat (mp4, webm, mkv, gif)?vf=gif

Beispiele

Bilder

media.trfx.de/bild.png?w=800 — Breite auf 800px skalieren
media.trfx.de/foto.jpg?w=400&h=400&fit=cover — 400×400 Quadrat, zugeschnitten
media.trfx.de/bild.png?gray=1&blur=3 — Graustufen mit Weichzeichner
media.trfx.de/foto.jpg?rot=90&f=png — 90° drehen, als PNG ausgeben
media.trfx.de/banner.png?w=1200&q=95&sharp=2 — 1200px breit, hohe Qualität, geschärft

Audio

media.trfx.de/song.mp3?vol=2.0 — Lautstärke verdoppeln
media.trfx.de/podcast.mp3?speed=1.5&trim=60,300 — 1.5× Geschwindigkeit, Minute 1 bis 5
media.trfx.de/track.wav?af=mp3&fade=3 — Zu MP3 konvertieren mit 3s Fade

Video

media.trfx.de/clip.mp4?w=1280&h=720 — Auf 720p skalieren
media.trfx.de/video.mp4?frame=5.0 — Einzelbild bei Sekunde 5 als JPEG
media.trfx.de/clip.mp4?trim=0,10&mute=1&vf=gif — Erste 10 Sek. als stummes GIF
media.trfx.de/video.mov?speed=2.0&vf=mp4 — Doppelte Geschwindigkeit, als MP4

Weitere Dateitypen

Alle anderen Dateitypen werden direkt ohne Verarbeitung ausgeliefert — mit korrektem Content-Type:

Upload API

Dateien können über die Upload-API hochgeladen werden (z.B. via ShareX). Authentifizierung erfolgt über einen geheimen Header.

Datei hochladen

POST /upload
Header: X-Upload-Secret: <secret>
Body: multipart/form-data, Feld: "file"

Erfolgreiche Antwort:

{
  "success": true,
  "url": "https://media.trfx.de/a1b2c3d4e5f6.png",
  "filename": "a1b2c3d4e5f6.png",
  "original_name": "screenshot.png",
  "size": 123456,
  "delete_url": "https://media.trfx.de/delete/a1b2c3d4e5f6.png"
}

Datei löschen

DELETE /delete/{dateiname}
Header: X-Upload-Secret: <secret>

Limits