Video Metadata (ffprobe)

action_video_metadata · action · Utility · Available · v1.1.0

Description

Estrattore enterprise di metadata da file video — basato su ffprobe (il tool companion di ffmpeg, l'industry standard de-facto per video processing usato da YouTube, Netflix, Twitch, broadcaster TV mondiali per probe del media payload). Analizza qualsiasi file video supportato dal vasto codec library di ffmpeg (300+ formati incluso MP4, MKV, MOV, AVI, FLV, WMV, MTS, M2TS, MXF per broadcast professional, WebM per web modern) e ne estrae l'inventario completo dei metadata tecnici essenziali per QA pre-publish, indicizzazione media library, compliance broadcast: codec video (H.264/AVC più diffuso, HEVC/H.265 per high-efficiency, VP9 per WebM YouTube, AV1 royalty-free per next-gen streaming, ProRes per editing professional), bitrate avg/max in Mbps, fps frame rate (24 standard cinematografico, 25 PAL europeo, 30 NTSC americano, 50 PAL slow-mo, 60 NTSC slow-mo), risoluzione width×height (480p, 720p HD, 1080p Full HD, 2160p 4K UHD, 4320p 8K), traccia audio multipla con codec (AAC più comune, AC3 Dolby Digital broadcast, EAC3 Dolby Digital Plus streaming, DTS Blu-ray, MP3 legacy), language tag per ogni traccia (it, en, fr, de... BCP-47), bit depth (8-bit standard, 10-bit HDR), channel layout (mono, stereo, 5.1 surround, 7.1), sample rate (44.1/48/96 kHz); traccia sottotitoli con codec (subrip, WebVTT, ASS) + language; durata totale (secondi + human-readable HH:MM:SS); container format (mp4, mkv, mov, mts), metadata fields generici (title, artist, creation_time, encoder usato per generation). Pattern deployment specifico enterprise: ffprobe binary + dipendenze codec (libx264, libx265, libvpx, libav1) pesano ~50-100MB totale → NON viene bundlato nel container runtime FlowForge per evitare bloat inutile alla maggior parte dei tenant che non usano video. Pattern microservice: il tenant deploya un wrapper HTTP separato (immagine docker pre-pronta `jrottenberg/ffmpeg` + Express HTTP, oppure Cloud Run/Lambda con custom container, oppure self-hosted dedicated server) e configura l'endpoint qui o via env FLOWFORGE_FFPROBE_ENDPOINT condivisa. Pattern SSRF-safe sempre: quando l'URL del video da analizzare proviene da config user-driven o input esterno, il request passa per @flowforge/safe-fetch che blocca URL privati 192.168/127.* per security. Use case: indicizzazione media library di una piattaforma streaming/VOD con catalogazione automatic di tutti i file caricati dal content team in metadata schema searchable; QA pre-publish per verifica compliance dei requirements editoriali (es. broadcaster italiano richiede 1080p min + traccia audio italiana obbligatoria + subtitle stereo per accessibilità); check size pre-CDN upload con cap budget (se file > 10GB → reject prima di consumare bandwidth/storage); compliance broadcast FCC USA/AGCOM Italia che richiede metadata standardizzati nel container per ingest nei sistemi broadcast.

⚙️ Configuration parameters

Fields shown in the editor when configuring the node. Generated directly from the NodeDefconfigFields.

FieldTypeRequiredDefaultDescription
endpoint
ffprobe endpoint HTTP
stringno
http://ffprobe.internal:8080
URL del wrapper ffprobe HTTP. Lascia VUOTO per usare la env `FLOWFORGE_FFPROBE_ENDPOINT` (consigliato in produzione: 1 wrapper condiviso). Esempio container locale: `docker run -d -p 8080:8080 jrottenberg/ffmpeg-http`. Deve esporre `POST /probe` con body `{ url|data }` e ritornare JSON ffprobe standard.
apiKey
API Key wrapper (opzionale)
string (encrypted)no
{{secrets.FFPROBE_API_KEY}}
Bearer token se il wrapper richiede autenticazione. Lascia vuoto per wrapper interno senza auth. NON inserire mai una chiave in plain — usa il riferimento a Credentials.
inputType
Sorgente video
enum
urlinputbase64
nourlurl = URL HTTP pubblico che il wrapper scaricherà. input = legge `url` o `dataBase64` dall'output del nodo precedente (es. download da S3, file_read). base64 = dati video inline (max 10MB consigliato, oltre usa URL).
url
URL video
stringno
https://cdn.miosito.com/video.mp4 / {{$node.s3_download.json.url}}
URL completo HTTP/HTTPS del file video. Supporta MP4, MOV, MKV, WebM, AVI, HLS .m3u8, DASH .mpd. Per HLS/DASH ffprobe estrae metadata del playlist (variant streams). SSRF-block automatic: IP interni e localhost bloccati.
dataBase64
Video base64
string (multiline)no
AAAAIGZ0eXBpc29tAAACAGlzb21pc28y…
Contenuto video encoded base64 SENZA il prefisso "data:video/mp4;base64,". Limite raccomandato 10MB (oltre ffprobe HTTP timeout). Per file più grandi preferire `url` o `input`.

⬆️ Node output

Fields available to downstream nodes via $node.<alias>.json.<field>:

  • duration
  • bitRate
  • formatName
  • size
  • videoCodec
  • videoWidth
  • videoHeight
  • videoFps
  • audioTracks
  • audioCodecs
  • audioLanguages
  • subtitleTracks
  • subtitleLanguages
  • raw

💡 Configuration example

JSON snippet of the node as it appears in the workflow. Values are derived fromdefaultValue and from required parameters.

{
  "id": "node-action_video_metadata-1",
  "defId": "action_video_metadata",
  "label": "Video Metadata (ffprobe)",
  "config": {
    "inputType": "url"
  }
}

🔗 Related nodes in the same category

Ready to use Video Metadata (ffprobe)?

Available now on all FlowForge plans. Try it free without a credit card.

Start freeBrowse all nodes