Medien-Workflow-Plattform
Media2Flow
Bauen Sie genau den Transcoding-Workflow, den Sie meinen. Jeder Node sichtbar, jeder Job nachvollziehbar, in jeder Grössenordnung.
Media2Flow ist eine visuelle Medien-Workflow-Plattform für alle, die genau wissen wollen, was mit ihren Dateien geschieht. Ein Workflow ist ein Graph aus Nodes mit je einer Funktion (Download, Analyse, Mapping, Filter, Encoding, Packaging, Upload), auf einer Arbeitsfläche gezeichnet und Pin für Pin verbunden. Ein Job ist ein Input, der einen Workflow durchläuft. Was Sie gezeichnet haben, läuft auch so, und jeder Job zeigt die Laufzeit jedes Nodes.
Jobs kommen manuell, aus Watch-Foldern auf FTP, SMB oder lokalem Speicher oder per URL aus S3 und HTTPS. Dieselbe Plattform encodiert Live-Kanäle anhand von Vorlagen und stellt sie über Distributionen pro Zielgruppe bereit. Sie läuft in der Noisypeak Cloud, auf AWS, Google Cloud, Azure, Kubernetes oder Docker auf Ihren eigenen Servern und skaliert von zwei bis fünfhundert Transcodern.
Aus Bausteinen gebaut, jeder Schritt sichtbar
Jeder Workflow beginnt mit einem Input und endet mit einem Output. Dazwischen ziehen Sie Nodes aus der Palette und verbinden ihre Pins. Die Palette umfasst Input/Output, Logic, Audio Filter, Video Filter, Audio Encode, Video Encode, Package, Misc und wiederverwendbare Fragments. Node-Optionen können Workflow-Variablen wie $In und $Out referenzieren, sodass ein Graph viele Jobs bedient. Fragments sind Teilgraphen, einmal gespeichert und als einzelne Kachel in einen übergeordneten Workflow eingesetzt.
Der Editor zeigt den Live-Graphen eines produktiven Workflows: download → analyze → Entscheidung zwischen Software- und Hardware-Pfad → Filter für Skalierung, Bildrate, Letterbox und Seitenverhältnis → H.264-Encoding → HLS- und MP4-Packaging → upload, mit Python-Nodes für eigene Logik. Workflows sind in Ordnern gruppiert, werden importiert, exportiert und nach Namen versioniert.

Logik im Workflow
Workflows passen sich der Quelle an. Der Node analyze untersucht Codec, Raster, Bildrate, Dauer und Kanäle, und decide / mdecide verzweigen je nach Ergebnis. Interlaced-Quellen laufen durch deinterlace, ungewöhnliche Seitenverhältnisse durch letterbox, und alles über einer Grössenschwelle geht an den Hardware-Encoder. eval wertet Ausdrücke aus und setvar schreibt $variables, sodass ein Graph tausend unterschiedliche Inputs bedient und trotzdem dasselbe Deliverable erzeugt.
Braucht eine Kette etwas, das die Palette nicht bietet, führt ein Python-Node Ihren Code im Workflow aus, mit denselben Inputs und Outputs wie jeder andere Baustein. Sie sehen immer, was der Workflow tut, und nichts wird hinter Ihrem Rücken entschieden.
- analyze → decide / mdecide: Verzweigung nach Codec, Raster, fps, Seitenverhältnis, Grösse
- eval-Ausdrücke und $variables: ein Graph, viele Jobs
- Python-Nodes für eigene Logik, direkt im Graphen
- concat für bis zu 16 Quellen; copy zum Durchreichen ohne Neu-Encoding
Der Node-Katalog: 53 Nodes in 14 Familien
Jeder Node erledigt eine Aufgabe; Ketten erledigen den Rest. Stream-Mapping (map/video, map/audio, map/text, map/timecode) teilt ein Paket direkt nach der Quelle in Spuren auf. Videofilter decken scale, crop, dar, deinterlace, fieldorder, format, fps, hwupload, letterbox und overlay ab; Audiofilter aformat, aresample, join und stereo.
Video-Encoder: x264 und x265 in Software, qsv264 auf Intel Quick Sync und ni264 auf NetInt-Hardware, dazu Mezzanines in AVC-Intra, DV, ProRes und XDCAM MXF OP1a. Audio: AAC, Dolby Digital AC-3, Dolby Digital Plus E-AC-3 und PCM. Container MP4, MOV, MXF und TS; Streaming-Packager hls3 (TS-Segmente), hls5 (fMP4) und dash, mit optionalen Untertitelspuren.
- Logik: analyze untersucht Codec, Raster, Bildrate, Dauer, Kanäle; decide / mdecide verzweigen; eval wertet Ausdrücke im Jinja-Stil aus; setvar schreibt $Variables; delay hält ein Paket zurück
- Stream-Verarbeitung: concat fügt bis zu 16 Quellen zu einer Timeline zusammen; copy reicht ohne Neu-Encoding durch
- Untertitel: ccinject fügt Untertitelspuren ohne Neu-Encoding hinzu; whisper transkribiert Sprache zu Untertiteln
- Dateioperationen: move und delete auf Storage-URLs; notify sendet E-Mails oder Webhooks
Jobs, Watch-Folder und Logs
Watch-Folder fragen einen FTP-, SMB- oder lokalen Ordner nach Zeitplan ab; jede Datei, die einer Namensmaske entspricht, wird über den gewählten Workflow zum Job. Einzelne Jobs werden manuell mit Priorität und Workflow-Variablen übermittelt. Die Jobliste findet jeden Task nach ID, Titel, Workflow, Status oder Datum und zeigt Outputs und Laufzeit pro Node; Job Logs ist ein chronologischer Strom aller Ereignisse pro Node, filterbar nach Workflow, Watch-Folder, Phase und Zeitraum.

Dashboard und Reporting
Das Dashboard ist die Steuerzentrale: Tasks gesamt mit Anzahl erfolgreich, mit Problemen und fehlgeschlagen, ein monatliches Durchsatzdiagramm mit Zeitraum, ein Kreisdiagramm der Ausführungsergebnisse, Jobanzahl pro Workflow, eine Hot-Node-Treemap, die zeigt, welche Node-Typen die Rechenzeit verbrauchen, und ein Filter nach Optionswerten zur Laufzeit wie Codec, Container oder HEVC-Preset. Jedes Diagramm lässt sich als SVG, PNG oder CSV exportieren; Prometheus und Grafana liefern dieselben Metriken an Ihr Monitoring.
- Ausführungszeit und Aufrufzahl pro Node in einer Treemap
- Streudiagramm Dateigrösse gegen Zeit über das ganze Konto
- Statuspunkte bei letzten Workflows, Tasks und Watch-Foldern
- Prometheus und Grafana mit denselben Metriken
Live-Kanäle, Vorlagen und Distributionen
Ein Live-Kanal verbindet einen Input-Stream (UDP, RTMP, SRT, HTTP/HTTPS oder HLS-Pull) mit einer Encoder-Vorlage und einer Availability Zone, mit DVR-Tiefe und Passthrough-Schalter pro Kanal. Vorlagen enthalten den Audioblock und einen oder mehrere Videostreams für ABR. Eine Vorlage kann viele Kanäle bedienen, und eine Änderung greift beim nächsten Neustart.
Distributionen stellen ein Bündel aus Origin- und Live-Kanälen über einen gewählten Point of Presence bereit, optional per Netzwerk-Whitelist eingeschränkt. Jede Distribution ist eine Zielgruppe, ein PoP und ein Satz Kanäle. HLS-Feeds von Drittanbietern werden per URL registriert und ohne Neu-Encoding über die Edge weitergeleitet, Seite an Seite mit Kanälen, die die Plattform encodiert.
- Inputs: UDP · RTMP · SRT · HTTP/HTTPS · HLS-Pull
- DVR-Tiefe, Passthrough und Availability Zone pro Kanal
- Encoder-Vorlagen mit Multi-Stream-ABR-Leitern
- PoP-Auswahl und Netzwerk-Whitelist pro Distribution
- HLS-Kanäle von Drittanbietern ohne Neu-Encoding weitergeleitet
Funktionen
Nodes auf die Arbeitsfläche ziehen, Pins verbinden und je nach Inhalt verzweigen. Der Graph ist die Pipeline, nichts ist verborgen oder geraten.
analyze untersucht die Quelle; decide verzweigt nach Codec, Raster, fps, Seitenverhältnis; eval und $variables lassen einen Graphen tausend Jobs bedienen. Python-Nodes, wenn Sie mehr brauchen.
x264 / x265, Intel Quick Sync, NetInt ASIC; ProRes-, XDCAM-, AVC-Intra-Master; AAC, AC-3, E-AC-3; MP4, MOV, MXF, TS, HLS, DASH. 53 Nodes, 14 Familien.
Watch-Folder auf FTP, SMB oder lokalem Speicher: Jede passende Datei wird zum Job. Auch S3, HTTPS und manuelle Übermittlung.
Fragments: ein Teilgraph, einmal gespeichert, als eine Kachel eingesetzt. Workflows in Ordnern gruppiert, importiert, exportiert, nach Namen versioniert.
Whisper Speech-to-Text; ccinject fügt bestehenden Dateien in Sekunden Untertitelspuren hinzu.
2–500 Transcoding-Nodes, 1–100 Processing-Nodes; Software- oder Hardware-Pfad wählt der Workflow selbst pro Job.
UDP-, RTMP-, SRT-, HTTP-, HLS-Pull-Kanäle auf Encoder-Vorlagen; Distributionen pro Zielgruppe mit PoP und Whitelist; HLS von Drittanbietern unverändert weitergeleitet.
Laufzeit pro Node, Hot-Node-Treemap, Job-Logs nach Phase; Export als SVG / PNG / CSV; Prometheus und Grafana integriert.
Noisypeak Cloud, AWS, Google Cloud, Azure, Kubernetes oder Docker On-Premises. Geliefert als Container mit Ansible-Playbooks.
Spezifikationen
| Plattform | |
|---|---|
| Host-OS | Ubuntu · Amazon Linux |
| Umgebungen | Noisypeak Cloud · AWS · Google Cloud · MS Azure · Kubernetes · Docker |
| Auslieferung | Software in Docker-Containern · Installation und Updates per Ansible-Playbook |
| Media-Processing-Nodes | 1 bis 100, automatisch skalierend |
| Transcoding-Nodes | 2 bis 500 |
| Workflow-Komplexität | Bis 250 Verarbeitungsschritte pro Workflow |
| Eingänge | |
|---|---|
| Dateien | Watch-Folder auf FTP, SMB oder lokalem Speicher · signierte S3-URLs · HTTPS · manuelle Übermittlung mit Priorität und Variablen |
| Live | UDP · RTMP · SRT · HTTP/HTTPS · HLS-Pull |
| Formate | Alle gängigen Video- und Audiocodecs, Live-Streams und dateibasierte Inhalte |
| Verarbeitungs-Nodes | |
|---|---|
| Stream-Mapping | map/video · map/audio · map/text · map/timecode |
| Videofilter | scale · crop · dar · deinterlace · fieldorder · format · fps · hwupload · letterbox · overlay |
| Audiofilter | aformat · aresample · join · stereo |
| Video-Encoder | x264 · x265 · qsv264 (Intel QSV) · ni264 (NetInt) · avcintra · dv · prores · xdcam |
| Audio-Encoder | aac · ac3 · eac3 · pcm |
| Logik | analyze · decide · mdecide · eval · setvar · delay |
| Stream-Verarbeitung | concat (bis zu 16 Quellen) · copy |
| Untertitel | ccinject · whisper (OpenAI Whisper) |
| Dateien und Benachrichtigungen | download · upload · move · delete · notify (E-Mail, Webhook) |
| Ausgänge | |
|---|---|
| Container | MP4 · MOV · MXF · TS · WebM · AVI |
| Streaming | HLS v3 (TS) · HLS v5 (fMP4) · MPEG-DASH, optionale Untertitelspuren |
| Ziele | Jede Storage-URL: S3, HTTPS und weitere unterstützte Schemata |
| Integration und Monitoring | |
|---|---|
| APIs | RESTful API · GraphQL · Webhook-Benachrichtigungen |
| Monitoring | Prometheus · Grafana |
| Berichte | Jedes Dashboard-Diagramm lässt sich als SVG, PNG oder CSV exportieren |
Einsatzbereiche
Watch-Folder und Workflows machen aus jeder gelieferten Datei Mezzanines, MP4-Leitern, HLS- und DASH-Pakete mit Untertiteln. Das ist die Asset-Bibliothek hinter Noisypeak Playout.
AVC-Intra und XDCAM MXF OP1a, ProRes- und DV-Master, MPEG-TS-Pre-Encodes und 5.1-AC-3-Deliverables aus einem Graphen.
analyze und decide leiten Interlaced-Quellen, ungewöhnliche Seitenverhältnisse oder übergrosse Quellen an die richtige Filterkette und an Software- oder Hardware-Encoder, nach Ihren Regeln und sichtbar im Graphen.
Zuspielungen, auf Vorlagen encodiert und über Distributionen und Points of Presence pro Zielgruppe bereitgestellt, neben HLS-Kanälen von Drittanbietern.
Sprechen Sie mit uns über Media2Flow
Wir übernehmen die Evaluation in der Noisypeak Cloud, das Deployment On-Premises oder in einer Public Cloud, die Integration und den Support. Ein Team deckt die ganze Pipeline ab.