Releases: zh30/ffkit
Release list
ffkit 0.391.0
ffkit 0.391.0
Added
remux --sidx— globalsidxsegment-index box inside a--fragpack (+global_sidx; CMAF players / DASH packagers byte-range seek off it; mp4/mov only)remux --shift SEC—-itsoffsetapplied to every read of the input (input-side clock shift, incl. the--audio-delay/--video-delayre-reads; unlike--offsetit moves the demux timeline so--from/--tokeep measuring against the original; negative values clamp to 0 on mp4 via elst)transcode --vstats FILE—-vstats_fileper-frame encode stats sidecar (frame/q/f_size/running-bitrate rows: which scene ate the bitrate budget; empty on pure stream-copy paths)split --manifest-window N—-segment_list_size Nkeeps only the newest N entries in a--manifestindex (rolling parts index; part files stay on disk; needs--manifest)split --ref-stream V|A|N—-reference_streampicks which stream drives cut boundaries (acuts on audio-frame edges instead of snapping to video keyframes)hls --keep N—-hls_delete_threshold Nkeeps N scrolled-off segments on disk behind the rolling--liveplaylist (an archive tail still reachable by URL; needs--live)deliver --platform+8 recruiting/async video-interview targets:hirevue,sparkhire,vidcruiter,myinterview,willo,recruitee,breezyhr,workable— all 16:9 1920x1080 → 695 targets
Download the platform zip (binary + skill + install.sh).
Do not use the Source code zip as the install bundle.
- macOS Apple Silicon:
ffkit-0.391.0-aarch64-apple-darwin.zip - macOS Intel:
ffkit-0.391.0-x86_64-apple-darwin.zip - Linux x86_64:
ffkit-0.391.0-x86_64-unknown-linux-gnu.zip
Unzip, then ./ffkit doctor --json or ./install.sh. Needs ffmpeg/ffprobe.
ffkit 0.390.0
ffkit 0.390.0
Added
transcode --frag— fragmented MP4 on the encode path (+frag_keyframe+empty_moov+default_base_moof; h264/proxy presets, mp4-family outputs; stream-copy stays onremux --frag)transcode --shortest—-shorteston every transcode path (music-bed audio ends with the video; ~1-2s muxer flush overshoot on file outputs is ffmpeg's, documented)transcode --preset aptxhd— aptX HD audio-only.aptxhd(high-def Bluetooth delivery; the extension auto-selects the aptx_hd muxer)split --non-keyframes—-break_non_keyframes 1lets segment boundaries land mid-GOP (tighter--everywindows; part starts decode-sloppy until the next keyframe)extract --data— dumps a telemetry/GPS/sensordatastream to raw payload bytes (-f data;--track Npicks the Nth data stream)probe.format_long_name— readable container name ("QuickTime / MOV") alongside the demuxer short-name listlevels --auto—normalizeper-frame range stretch (flat lifted-footage rescue);--smoothingdamps frame-to-frame flicker (default 50)blur --engine tmix— temporal frame-mixing blur (tmix;--sigmascales a 2-16-frame window — motion smear, locked shots stay clean)sharpen --engine deconv— deconvolution deblur (split+gblur impulse+deconvolve; reverses a known gaussian blur,--amountscales the assumed radius; no--atwindow)glitch --engine scroll— wraparound pixel drift (scroll;--strengthmaps to a fraction-of-width shift per frame)channel --mode order --order 1,0— raw per-channel re-order by index (-map_channel; re-encode only — stream copy ignores it)deliver --platform+8 music-education targets:tonara,playgroundsessions,musicca,melodics,trala,modacity,pianomarvel,tonebase— all 16:9 1920x1080 → 687 targets
Download the platform zip (binary + skill + install.sh).
Do not use the Source code zip as the install bundle.
- macOS Apple Silicon:
ffkit-0.390.0-aarch64-apple-darwin.zip - macOS Intel:
ffkit-0.390.0-x86_64-apple-darwin.zip - Linux x86_64:
ffkit-0.390.0-x86_64-unknown-linux-gnu.zip
Unzip, then ./ffkit doctor --json or ./install.sh. Needs ffmpeg/ffprobe.
ffkit 0.389.0
ffkit 0.389.0
Added
transcode --x264-params k=v:k=v— raw x264 private-option pass-through (-x264-params— encoder tuning beyond the named flags; h264/proxy presets only)transcode --qp N— constant-quantizer encode (-qp— the CQP alternative to--crf; the two are mutually exclusive; h264/proxy only)probe --from SEC/--to SEC— bound the scan window (-read_intervals— audit a suspicious stretch without scanning the whole master; applies to streams/--frames/--packetsalike)probe.streams[]+3 fields:bits_per_sample(coded audio bit depth — pcm_s24→24, 24-bit master ingest QC; 0 on float codecs like aac),start_pts(first-packet pts in the stream's own time_base — negative-ts masters at full precision),stream_tag_count(per-stream metadata keys present)hls --omit-endlist— leave the playlist open without--live's windowing (no EXT-X-ENDLIST — a draft/preview pack a later pass re-opens and appends onto)denoise --engine nlm— non-local-means denoiser (anlmdn — slowest engine, gentlest on speech detail)blur --engine smart— edge-aware smartblur (smooths skin/backgrounds while outlines keep)deliver --platform+8 sales & personalized-video hosting targets: bombbomb / covideo / dubb / sendspark / warmwelcome / hippovideo / vadootv / tolstoy videos 16:9 1920x1080 (679 platform targets)
Download the platform zip (binary + skill + install.sh).
Do not use the Source code zip as the install bundle.
- macOS Apple Silicon:
ffkit-0.389.0-aarch64-apple-darwin.zip - macOS Intel:
ffkit-0.389.0-x86_64-apple-darwin.zip - Linux x86_64:
ffkit-0.389.0-x86_64-unknown-linux-gnu.zip
Unzip, then ./ffkit doctor --json or ./install.sh. Needs ffmpeg/ffprobe.
ffkit 0.388.0
ffkit 0.388.0
Added
transcode --refs N— reference-frame cap on the x264 encode (-refs— low-power/old-hardware decoders cap reference frames; h264/proxy presets only,probe.streams[].refsreads it back)transcode --nal-hrd cbr|vbr|none— write VBV/HRD buffering signaling (-nal-hrd— broadcast ingest validators check it; .mp4 coerces cbr to vbr, pair with--vbitratefor real CBR)transcode --bluray— Blu-ray player compatibility workarounds on the x264 encode (-bluray-compat— BD disc/master ingest specs; h264/proxy only)transcode --preset jpeg2000— JPEG 2000 + AAC/PCM in .mkv/.mp4/.mxf (libopenjpeg — digital-cinema and archive interchange; .mxf forces 48kHz PCM audio)tempo --engine rubberband— phase-vocoder retime (music/podcast masters — smoother than atempo at big factors; whole-file only, refuses--at)remux --system-b— conform the TS to System B (DVB) instead of System A (ATSC) (-mpegts_flags +system_b— .ts/.m2ts targets only)remux --pes-payload N— minimum PES packet payload bytes (-pes_payload_size, default 2930 — legacy decoder ingest grouping; .ts/.m2ts only)remux --mux-queue N— interleave buffer cap in packets (-max_muxing_queue_size— raise it when copy-muxing throws 'Too many packets buffered' on densely interleaved sources; any container)deliver --platform+8 faith/ministry & OTT streaming targets: subsplash / planningcenter / sermonaudio / resi / boxcast / wowza / dacast / churchonline videos 16:9 1920x1080 (671 platform targets)
Download the platform zip (binary + skill + install.sh).
Do not use the Source code zip as the install bundle.
- macOS Apple Silicon:
ffkit-0.388.0-aarch64-apple-darwin.zip - macOS Intel:
ffkit-0.388.0-x86_64-apple-darwin.zip - Linux x86_64:
ffkit-0.388.0-x86_64-unknown-linux-gnu.zip
Unzip, then ./ffkit doctor --json or ./install.sh. Needs ffmpeg/ffprobe.
ffkit 0.387.0
ffkit 0.387.0
Added
transcode --keyat T1,T2— force keyframes at exact timestamps (-force_key_frames— VFX/handoff cuts & QC marks pinned on times; stacks with-g; h264/hevc/webm/av1/prores/dnxhd/proxy encodes only)conform --frames N— stop the spec pass after N decoded frames (-frames:v— spec-sample rendering before committing the whole master)extract --frame N— still at decoded-frame index (select='eq(n,N)'+-vsync 0— frame-exact VFX/QC grabs; .png/.jpg/.jpeg/.webp)split --clock— name parts by wall clock (-strftime 1— the output template carries strftime tokens like seg_%H-%M-%S.mp4; same-second cuts share a name, keep--every≥1s)remux --streamid IDX:PID,...— explicit per-stream PID assignments (broadcast servers expect fixed PIDs the auto-increment can't express — .ts/.m2ts only, PID 32-8186/0x20-0x1ffa)transcode --preset framecrc— per-frame CRC32 manifest (.framecrc/.txt — bit-exact archive-ingest QC: a later re-decode must produce the same CRC listing; text, not media)transcode --preset ffmeta— the container's metadata+chapters as an .ffmeta sidecar (-map_metadata 0 -f ffmetadata— audit what a master carries before re-editing; text, not media)transcode --preset spdif— IEC-61937 S/PDIF AC3 bitstream in .spdif (the digital-out cable format receivers decode — 48kHz AC3, audio only)deliver --platform+8 social-scheduler targets: buffer / hootsuite / later / metricool / loomly / socialbee / planoly / sendible videos 16:9 1920x1080 (663 platform targets)
Download the platform zip (binary + skill + install.sh).
Do not use the Source code zip as the install bundle.
- macOS Apple Silicon:
ffkit-0.387.0-aarch64-apple-darwin.zip - macOS Intel:
ffkit-0.387.0-x86_64-apple-darwin.zip - Linux x86_64:
ffkit-0.387.0-x86_64-unknown-linux-gnu.zip
Unzip, then ./ffkit doctor --json or ./install.sh. Needs ffmpeg/ffprobe.
ffkit 0.386.0
ffkit 0.386.0
Added
transcode --preset vp9— VP9 + Opus in .webm/.mkv (the modern open-codec pair YouTube and MSE/Shaka players expect;--crfpicks quality, no--vbitrate= true constant-quality)transcode --preset h264rgb— RGB-space lossless H.264 in .mp4/.mkv/.mov (libx264rgb — no chroma subsample, crisp UI/text capture;-qp 0by default,--crffor graded quality)transcode --preset s302— SMPTE 302M AES3 audio carriage in .ts/.m2ts (broadcast ingest — fixed 48kHz, 2/4/6/8 channels; experimental-strict -2)transcode --preset h263p— H.263+ v2 in .mkv/.avi (legacy videoconference archives — .3gp/.mp4/.flv have no codec tag for it on 4.4)split --manifest-prefix STR— prepend a base path to every manifest entry (-segment_list_entry_prefix— the playlist references published CDN URLs, not local files; needs--manifest)split --increment-tc— continuous timecode track across parts (-increment_tc— each part's tmcd resumes where the previous ended; needs--copyand an input timecode track)dash --playback-min/--playback-max— trick-play rate window in the manifest ServiceDescription (-min_playback_rate/-max_playback_rate— players know the pack scrubs clean at 0.5–1.5x)deliver --platform+8 workplace-comms & CRM targets: slack / msteams / workplace / salesforce / hubspot / pipedrive / freshworks / attio videos 16:9 1920x1080 (655 platform targets)
Download the platform zip (binary + skill + install.sh).
Do not use the Source code zip as the install bundle.
- macOS Apple Silicon:
ffkit-0.386.0-aarch64-apple-darwin.zip - macOS Intel:
ffkit-0.386.0-x86_64-apple-darwin.zip - Linux x86_64:
ffkit-0.386.0-x86_64-unknown-linux-gnu.zip
Unzip, then ./ffkit doctor --json or ./install.sh. Needs ffmpeg/ffprobe.
ffkit 0.385.0
ffkit 0.385.0
Added
probe --packets— dump per-muxed-packet detail (-show_packets→probe.packets[]: pts/dts/duration/size/key flags per packet — timestamp + interleave forensics without decoding; 4.4 string fields normalized to numbers)split --wrap N— reuse part filenames after N parts (-segment_wrap— rolling window keeps only the newest N part files on disk)split --slack SEC— cut-tolerance window (-segment_time_delta— a boundary may land early inside the window; dense-keyframe sources split finer)split --manifestextension-driven formats —.csvname,start,end rows /.m3u8index /.ffconcatrejoin list / else flat name list (-segment_list_type)remux --fix-negative-ts— shift negative capture timestamps up to zero (-avoid_negative_ts make_zero— matroska carries real negative start_time; conflicts--copy-ts)remux --skip-init N— read the input past a N-byte junk prefix (-skip_initial_bytes— the ffprobe pre-flight gets the same flag)transcode --preset hash— whole-stream checksum receipt (-f hash— oneALGO=hexline over the muxed payload for ingest/transfer verification; algorithm by extension: .md5/.sha256/.sha512/.txt/.hash)chapter --at-frames F|TITLE— chapter marks by frame number (comma list, converted through the input's fps — lands wheresplit --at-framescuts)deliver --platform+8 PM & issue-attachment targets: jira / asana / trello / monday / clickup / basecamp / linear / shortcut videos 16:9 1920x1080 (647 platform targets)
Download the platform zip (binary + skill + install.sh).
Do not use the Source code zip as the install bundle.
- macOS Apple Silicon:
ffkit-0.385.0-aarch64-apple-darwin.zip - macOS Intel:
ffkit-0.385.0-x86_64-apple-darwin.zip - Linux x86_64:
ffkit-0.385.0-x86_64-unknown-linux-gnu.zip
Unzip, then ./ffkit doctor --json or ./install.sh. Needs ffmpeg/ffprobe.
ffkit 0.384.0
ffkit 0.384.0
Added
split --at-frames 10,20,30— cut at frame indices (-segment_frames— VFX/review pipelines that address cuts by frame number; boundaries snap to the next keyframe on--copy, forced exact on the re-encode path)frames --start N— number the first still N (-start_number— keep appending frames onto an existing numbered sequence)frames --clock— name stills by wall-clock capture time (-strftime— output pattern takes%Y-%m-%d_%H-%M-%Scodes for timelapse/surveillance stills; refuses--at)probe --frames— dump per-decoded-frame detail (-show_frames→probe.frames[]: key_frame/pict_type/interlace flags/pts_time — forensic QC on masters)conform/deliver/transcode --timelimit SEC— wall-clock encode cap (-timelimit— batch safety valve for runaway jobs)remux --discard-corrupt— drop damaged packets on read (-fflags +discardcorrupt— salvage runs on corrupted captures/bad rips)deliver --platform+8 music-licensing catalogs: songtradr / artlist / epidemicsound / musicbed / audiojungle / premiumbeat / soundstripe / marmoset catalog videos 16:9 1920x1080 (639 platform targets)
Download the platform zip (binary + skill + install.sh).
Do not use the Source code zip as the install bundle.
- macOS Apple Silicon:
ffkit-0.384.0-aarch64-apple-darwin.zip - macOS Intel:
ffkit-0.384.0-x86_64-apple-darwin.zip - Linux x86_64:
ffkit-0.384.0-x86_64-unknown-linux-gnu.zip
Unzip, then ./ffkit doctor --json or ./install.sh. Needs ffmpeg/ffprobe.
ffkit 0.383.0
ffkit 0.383.0
Added
remux --ignore-editlist— read the source past its mov/mp4 edit list (-ignore_editlist 1— a wrongelstshifts A/V sync on ingest; stripping it exposes the raw timestamps; mp4/mov/m4a/3gp-family sources only)remux --empty-moov— init-style mp4 (+empty_moov— empty sample tables at the head, payload in inline moof/mdat pairs withoutdefault_base_moof: the self-contained CMAF init+fragment layout; mp4/mov/m4a only, refused with--also)split --start N— number the first part N (-segment_start_number— keep appending parts onto an existing numbered series instead of restarting at 0; refused with--black)transcode --preset pcm64— 64-bit float WAV audio-only (pcm_f64le — double-precision mastering/DSP intermediate)deliver --platform+8 print-on-demand merch sites: printful / printify / spring / redbubble / society6 / zazzle / spreadshirt / displate merch listing videos 16:9 1920x1080 (631 platform targets)
Download the platform zip (binary + skill + install.sh).
Do not use the Source code zip as the install bundle.
- macOS Apple Silicon:
ffkit-0.383.0-aarch64-apple-darwin.zip - macOS Intel:
ffkit-0.383.0-x86_64-apple-darwin.zip - Linux x86_64:
ffkit-0.383.0-x86_64-unknown-linux-gnu.zip
Unzip, then ./ffkit doctor --json or ./install.sh. Needs ffmpeg/ffprobe.
ffkit 0.382.0
ffkit 0.382.0
Added
remux --no-editlist— drop the elst atom (-use_editlist 0; QT7-era decks and strict parsers reject edit lists — the b-frame reorder shift stays on timestamps alone; mp4/mov/m4a/m4v only)split --manifest parts.csv— write aname,start,endCSV index of the parts next to the files (-segment_list; works on every split path except--black)probe.streams[].refs— reference-frame count (encoder-complexity QC)probe.streams[].closed_captions— embedded CEA-608/708 captions in the video essence (broadcast-ingest QC)probe.streams[].codec_long_name— full readable codec name for manifests/QC labelsdeliver --platform+8 —heritage/invaluable/liveauctioneers/catawiki/stockx/goat/poizon/stadiumgoodscollectible & auction-marketplace listing videos (16:9 1920x1080; 623 platforms)
Download the platform zip (binary + skill + install.sh).
Do not use the Source code zip as the install bundle.
- macOS Apple Silicon:
ffkit-0.382.0-aarch64-apple-darwin.zip - macOS Intel:
ffkit-0.382.0-x86_64-apple-darwin.zip - Linux x86_64:
ffkit-0.382.0-x86_64-unknown-linux-gnu.zip
Unzip, then ./ffkit doctor --json or ./install.sh. Needs ffmpeg/ffprobe.