Noisypeak / Solutions / Media2FlowBrochure · PDF

media workflow platform

Media2Flow

Build the media transcoding workflow you mean. Every node visible, every job traceable, any scale.

250steps per workflow
53node types in 14 families
2–500transcoding nodes
111k+tasks run on the Noisypeak Cloud

Media2Flow is a visual media workflow platform for people who want to know exactly what happens to their files. A workflow is a graph of single-purpose nodes (download, analyse, map, filter, encode, package, upload), drawn on a canvas and connected pin to pin. A job is one input run through one workflow. What you drew is what runs, and every job shows the timing of every node.

Jobs arrive by hand, from watch folders on FTP, SMB or local storage, or by URL from S3 and HTTPS. The same platform encodes live channels against templates and exposes them per audience through distributions. It runs in the Noisypeak Cloud, on AWS, Google Cloud, Azure, Kubernetes or Docker on your own servers, and scales from two transcoders to five hundred.

metadatabranchSourceswatch folder FTP/SMB/local· S3 · HTTPS · manual jobWorkflowdownload → map → filters →encode → package → uploadLogicanalyze · decide · mdecide· eval · setvarEncodersx264 · x265 · qsv264 ·ni264 · ProRes · XDCAM…PackagingMP4 · MOV · MXF · TS · HLSv3/v5 · DASHLive channelsUDP · RTMP · SRT · HTTP ·HLS pull → templatesUploadS3 · HTTPS · storage URL ·notify email/webhookDistributionsPoP · whitelist ·third-party HLSDashboardper-node timing ·success/issues/failed…
One job through a Media2Flow workflow. Sources go in, run through a visible graph of nodes and come out as deliverables, with a dashboard that times every step.

Build it from blocks, see every step

Every workflow starts with an input and ends with an output. Between them you drop nodes from the palette and connect their pins. The palette has Input/Output, Logic, Audio Filter, Video Filter, Audio Encode, Video Encode, Package, Misc and reusable Fragments. Node options can reference workflow variables such as $In and $Out, so one graph serves many jobs. Fragments are sub-graphs saved once and dropped into a parent workflow as a single tile.

The editor shows the live graph of a production workflow: download → analyze → decide between software and hardware paths → scale, frame rate, letterbox and aspect-ratio filters → H.264 encode → HLS and MP4 packaging → upload, with Python nodes for custom logic. Workflows are grouped by folder, imported, exported and versioned by name.

Workflow editor: playout_profile_forced_aspect_ratio_v5_sw, a 30-node production graph with a software/hardware decision branch.
Workflow editor: playout_profile_forced_aspect_ratio_v5_sw, a 30-node production graph with a software/hardware decision branch.

Logic inside the workflow

Workflows adapt to the source. The analyze node probes codec, raster, frame rate, duration and channels, and decide / mdecide branch on what it finds. Interlaced sources go through deinterlace, odd aspect ratios through letterbox, and anything above a size threshold goes to the hardware encoder. eval runs expressions and setvar writes $variables, so one graph serves a thousand different inputs and still produces the same deliverable.

When a chain needs something the palette does not have, a Python node runs your code inside the workflow with the same inputs and outputs as any other block. You always see what the workflow does, and nothing is decided behind your back.

  • analyze → decide / mdecide: branch on codec, raster, fps, aspect, size
  • eval expressions and $variables: one graph, many jobs
  • Python nodes for custom logic, inline
  • concat up to 16 sources; copy for pass-through without re-encode

The node catalogue: 53 nodes in 14 families

Each node does one thing; chains do the rest. Stream mapping (map/video, map/audio, map/text, map/timecode) splits a package into tracks right after the source. Video filters cover scale, crop, dar, deinterlace, fieldorder, format, fps, hwupload, letterbox and overlay; audio filters aformat, aresample, join and stereo.

Video encoders: x264 and x265 in software, qsv264 on Intel Quick Sync and ni264 on NetInt hardware, plus AVC-Intra, DV, ProRes and XDCAM MXF OP1a mezzanines. Audio: AAC, Dolby Digital AC-3, Dolby Digital Plus E-AC-3 and PCM. Containers MP4, MOV, MXF and TS; streaming packagers hls3 (TS segments), hls5 (fMP4) and dash, with optional subtitle tracks.

  • Logic: analyze probes codec, raster, frame rate, duration, channels; decide / mdecide branch; eval runs Jinja-style expressions; setvar writes $Variables; delay holds a package
  • Stream processing: concat stitches up to 16 sources into one timeline; copy passes through with no re-encode
  • Subtitles: ccinject adds caption tracks without re-encoding; whisper transcribes speech to captions
  • File operations: move and delete on storage URLs; notify sends e-mail or webhooks

Jobs, watch folders and logs

Watch folders poll an FTP, SMB or local folder on a schedule; every file matching a name mask becomes a job through the chosen workflow. One-off jobs are submitted by hand with a priority and workflow variables. The Jobs list finds any task by ID, title, workflow, state or date and shows outputs and per-node timing; Job Logs is a chronological stream of every per-node event, filterable by workflow, watch folder, phase and time range.

Dashboard on the Noisypeak Cloud: file-transcoding throughput by date, last workflows, last tasks and watch folders.
Dashboard on the Noisypeak Cloud: file-transcoding throughput by date, last workflows, last tasks and watch folders.

Dashboard and reporting

The dashboard is the control centre: total tasks with success, issues and failed counts, a monthly throughput chart with date range, an execution-outcome pie, job count by workflow, a hot-nodes treemap that shows which node types consume the processing time, and a filter by run-time option values such as codec, container or HEVC preset. Every chart exports as SVG, PNG or CSV; Prometheus and Grafana carry the same metrics to your monitoring.

  • Per-node execution time and call count in a treemap
  • File-size-versus-time scatter plot across the account
  • Status dots on last workflows, tasks and watch folders
  • Prometheus and Grafana with the same metrics

Live channels, templates and distributions

A live channel binds an input stream (UDP, RTMP, SRT, HTTP/HTTPS or HLS pull) to an encoder template and an availability zone, with DVR depth and a passthrough toggle per channel. Templates hold the audio block and one or more video streams for ABR. One template can serve many channels, and a change propagates on the next restart.

Distributions expose a bundle of origin and live channels through a chosen point-of-presence, optionally restricted by a network whitelist. Each distribution is one audience, one PoP and one set of channels. Third-party HLS feeds are registered by URL and forwarded through the edge without re-encoding, side by side with platform-encoded channels.

  • Inputs: UDP · RTMP · SRT · HTTP/HTTPS · HLS pull
  • Per-channel DVR depth, passthrough and availability zone
  • Encoder templates with multi-stream ABR ladders
  • PoP selection and network whitelist per distribution
  • Third-party HLS channels forwarded without re-encoding

Features

Build it from blocks, see every step

Drag nodes onto a canvas, connect pins and branch on content. The graph is the pipeline, so nothing is hidden or guessed.

Logic inside the workflow

analyze probes the source; decide branches on codec, raster, fps, aspect; eval and $variables make one graph serve a thousand jobs. Python nodes when you need more.

From mezzanine to mobile

x264 / x265, Intel Quick Sync, NetInt ASIC; ProRes, XDCAM, AVC-Intra masters; AAC, AC-3, E-AC-3; MP4, MOV, MXF, TS, HLS, DASH. 53 nodes, 14 families.

Drop files, get deliverables

Watch folders on FTP, SMB or local storage: every matching file becomes a job. S3, HTTPS and manual submission too.

Reuse, version, share

Fragments: a sub-graph saved once, dropped as one tile. Workflows grouped in folders, imported, exported, versioned by name.

Captions without re-encoding

Whisper speech-to-text; ccinject adds caption tracks to existing files in seconds.

Scale when the queue says so

2–500 transcoding nodes, 1–100 processing nodes; software or hardware path chosen per job by the workflow itself.

Live, too

UDP, RTMP, SRT, HTTP, HLS-pull channels on encoder templates; distributions per audience with PoP and whitelist; third-party HLS forwarded as-is.

Every job explains itself

Per-node timing, hot-node treemap, job logs by phase; SVG / PNG / CSV export; Prometheus and Grafana built in.

Runs where you run

Noisypeak Cloud, AWS, Google Cloud, Azure, Kubernetes or Docker on-premise. Delivered as containers with Ansible playbooks.

Specifications

Platform
Host OSUbuntu · Amazon Linux
EnvironmentsNoisypeak Cloud · AWS · Google Cloud · MS Azure · Kubernetes · Docker
DeliveryDockerized software · Ansible playbook setup and update
Media processing nodes1 to 100, auto-scaling
Transcoding nodes2 to 500
Workflow complexityUp to 250 processing steps per workflow
Inputs
FilesWatch folders on FTP, SMB or local storage · signed S3 · HTTPS · manual submission with priority and variables
LiveUDP · RTMP · SRT · HTTP/HTTPS · HLS pull
FormatsAll major video and audio codecs, live streams and file-based content
Processing nodes
Stream mappingmap/video · map/audio · map/text · map/timecode
Video filtersscale · crop · dar · deinterlace · fieldorder · format · fps · hwupload · letterbox · overlay
Audio filtersaformat · aresample · join · stereo
Video encodersx264 · x265 · qsv264 (Intel QSV) · ni264 (NetInt) · avcintra · dv · prores · xdcam
Audio encodersaac · ac3 · eac3 · pcm
Logicanalyze · decide · mdecide · eval · setvar · delay
Stream processingconcat (up to 16 sources) · copy
Subtitlesccinject · whisper (OpenAI Whisper)
Files and notificationsdownload · upload · move · delete · notify (e-mail, webhook)
Outputs
ContainersMP4 · MOV · MXF · TS · WebM · AVI
StreamingHLS v3 (TS) · HLS v5 (fMP4) · MPEG-DASH, optional subtitle tracks
DestinationsAny storage URL: S3, HTTPS and other supported schemes
Integration and monitoring
APIsRESTful API · GraphQL · webhook notifications
MonitoringPrometheus · Grafana
ReportsEvery dashboard chart exports as SVG, PNG or CSV

Where it is used

VOD library processing

Watch folders and workflows turn every delivered file into mezzanines, MP4 ladders, HLS and DASH packages with captions. This is the asset library behind Noisypeak Playout.

Broadcast mezzanines

AVC-Intra and XDCAM MXF OP1a, ProRes and DV masters, MPEG-TS pre-encodes and 5.1 AC-3 deliverables from one graph.

Conditional pipelines

analyze and decide route interlaced, odd-aspect or oversized sources to the right filter chain and to software or hardware encoders, by your rules and visible in the graph.

Live channels at the edge

Contribution feeds encoded on templates and exposed per audience through distributions and points of presence, next to third-party HLS channels.

Talk to us about Media2Flow

We handle evaluation in the Noisypeak cloud, deployment on premises or in a public cloud, integration and support. One team covers the whole pipeline.

Works with