Skip to content


Stream to file

Register name used to load filter: writegen
This filter may be automatically loaded during graph resolution.

Generic single stream to file converter, used when extracting/converting PIDs.
The writegen filter should usually not be explicitly loaded without a source ID specified, since the filter would likely match any PID connection.


exporter (bool, default: false): compatibility with old exporter, displays export results
pfmt (pfmt, default: none, Enum: none|yuv420|yvu420|yuv420_10|yuv422|yuv422_10|yuv444|yuv444_10|uyvy|vyuy|yuyv|yvyu|uyvl|vyul|yuyl|yvyl|nv12|nv21|nv1l|nv2l|yuva|yuvd|yuv444a|yuv444p|v308|yuv444ap|v408|v410|v210|grey|algr|gral|rgb4|rgb5|rgb6|rgba|argb|bgra|abgr|rgb|bgr|xrgb|rgbx|xbgr|bgrx|rgbd|rgbds|uncv): pixel format for raw extract. If not set, derived from extension

afmt (afmt, default: none, Enum: none|u8|s16|s16b|s24|s24b|s32|s32b|flt|fltb|dbl|dblb|u8p|s16p|s24p|s32p|fltp|dblp): audio format for raw extract. If not set, derived from extension

decinfo (enum, default: auto): decoder config insert mode

  • no: never inserted
  • first: inserted on first packet
  • sap: inserted at each SAP
  • auto: selects between no and first based on media type

split (bool, default: false): force one file per decoded frame
frame (bool, default: false): force single frame dump with no rewrite. In this mode, all codec types are supported
sstart (uint, default: 0): start number of frame to forward. If 0, all samples are forwarded
send (uint, default: 0): end number of frame to forward. If less than start frame, all samples after start are forwarded
dur (frac, default: 0): duration of media to forward after first sample. If 0, all samples are forwarded
merge_region (bool, default: false): merge TTML regions with same ID while reassembling TTML doc
vtth (enum, default: seg): vtt header injection mode

  • single: inject only at first frame of the stream
  • seg: inject at each non-empty segment
  • all: inject at each segment even empty ones