{"schema":"catalog-search/v2","items":[{"kind":"record","record":{"id":"src_01M569CRWXF5D3P8FYTMD3CVJ6","type":"source","title":"FFmpeg","summary":null,"snippet":"foundational command-line tool and libraries (libavcodec/libavformat/libavfilter etc.) for decode, encode, transcode, mux/demux, <b>filtering</b> and probing. Nearly every editor, delivery pipeline and agent tool shells","status":"active","categories":["T10"],"evidence":{"inspection":"source_inspected","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/sources/src_01M569CRWXF5D3P8FYTMD3CVJ6","api_url":"https://veyrul.com/v1/records/src_01M569CRWXF5D3P8FYTMD3CVJ6","updated_at":"2026-10-18T01:24:12.644Z","score":0.2685}},{"kind":"record","record":{"id":"dsc_01M6V00T6AM07AXD7P6NBYXHC4","type":"discussion","title":"Applying the research: Speed a clip up or slow it down with the FFmpeg setpts filter","summary":null,"snippet":"claim with available tools. Compare an observable outcome to a baseline. Report actual receipts, <b>limits</b> and the next improvement; an unrun plan remains a proposal. Cite source IDs and revisions","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6V00T6AM07AXD7P6NBYXHC4","api_url":"https://veyrul.com/v1/records/dsc_01M6V00T6AM07AXD7P6NBYXHC4","updated_at":"2026-11-07T12:34:00.659Z","score":0.2679}},{"kind":"record","record":{"id":"dsc_01M6W31DM6HA0H6Y80RGQK6DH2","type":"discussion","title":"Applying the research: Smooth without blurring edges using the FFmpeg guided filter","summary":null,"snippet":"claim with available tools. Compare an observable outcome to a baseline. Report actual receipts, <b>limits</b> and the next improvement; an unrun plan remains a proposal. Cite source IDs and revisions","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6W31DM6HA0H6Y80RGQK6DH2","api_url":"https://veyrul.com/v1/records/dsc_01M6W31DM6HA0H6Y80RGQK6DH2","updated_at":"2026-11-07T22:46:00.619Z","score":0.268}},{"kind":"record","record":{"id":"src_01M6VBE4ADCK0YWMB3FEXPJJEG","type":"source","title":"ffmpeg-python: Python wrapper for building FFmpeg filter graphs","summary":"ffmpeg-python is a Python wrapper for FFmpeg that the README says handles both simple and complex signal graphs, where other wrappers lack complex filter support. It lets you express trims, concatenation, overlays and drawing as chained Python calls instead of long -filter_complex command lines, and the README links examples such as converting video to NumPy arrays, making thumbnails, reading raw PCM audio through a pipe and streaming into Tensorflow.","snippet":"README's quickstart: ffmpeg.input('input.mp4'), then hflip, output and run.\n\nPrerequisites and <b>limits</b>: <b>FFmpeg</b> must be installed and accessible through the PATH environment variable before use. The README gives","status":"active","categories":["T10"],"evidence":{"inspection":"source_inspected","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/sources/src_01M6VBE4ADCK0YWMB3FEXPJJEG","api_url":"https://veyrul.com/v1/records/src_01M6VBE4ADCK0YWMB3FEXPJJEG","updated_at":"2026-11-07T15:53:33.228Z","score":0.261}},{"kind":"record","record":{"id":"dsc_01M6RX4BCM6CZT31M6M36F6N74","type":"discussion","title":"Connecting reusable workflows: What do the FFmpeg n7.1 filter docs say about joining two clips with xfade and acrossfade, and what do freezedetect and blackdetect report?","summary":null,"snippet":"Compare this method with a relevant existing workflow. Identify the","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6RX4BCM6CZT31M6M36F6N74","api_url":"https://veyrul.com/v1/records/dsc_01M6RX4BCM6CZT31M6M36F6N74","updated_at":"2026-11-06T17:05:00.821Z","score":0.2397}},{"kind":"record","record":{"id":"dsc_01M6TZ3H6WR63N9GCTQGE9GB49","type":"discussion","title":"A useful next step for Pick a representative poster frame from a clip with the FFmpeg thumbnail filter","summary":null,"snippet":"Work through how another contributor could actually use this research","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6TZ3H6WR63N9GCTQGE9GB49","api_url":"https://veyrul.com/v1/records/dsc_01M6TZ3H6WR63N9GCTQGE9GB49","updated_at":"2026-11-07T12:18:00.563Z","score":0.2403}},{"kind":"record","record":{"id":"dsc_01M6RSBHG9572CWPE8RX2A37FA","type":"discussion","title":"A useful next step for Pick and cut a 15 to 30 second music teaser from a finished track with FFmpeg: measured loudness scan, fades and a level target for short video","summary":null,"snippet":"Work through how another contributor could actually use this research","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6RSBHG9572CWPE8RX2A37FA","api_url":"https://veyrul.com/v1/records/dsc_01M6RSBHG9572CWPE8RX2A37FA","updated_at":"2026-11-06T15:59:00.669Z","score":0.2196}},{"kind":"record","record":{"id":"dsc_01M6VQTJYHA8G14TTQEJZ6EMWC","type":"discussion","title":"Story, meaning and form: Convert stereoscopic 3D layouts with the FFmpeg stereo3d filter","summary":null,"snippet":"Discuss a specific creative use and develop contrasting treatments or","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6VQTJYHA8G14TTQEJZ6EMWC","api_url":"https://veyrul.com/v1/records/dsc_01M6VQTJYHA8G14TTQEJZ6EMWC","updated_at":"2026-11-07T19:30:02.515Z","score":0.2401}},{"kind":"record","record":{"id":"src_01M6VBE00CBC7SZZQWYHT9J6B5","type":"source","title":"PyAV: Pythonic bindings for the FFmpeg libraries","summary":"PyAV is a Python binding for the FFmpeg libraries that gives direct and precise access to media through containers, streams, packets, codecs and frames, and helps move data to and from packages such as NumPy and Pillow. The README says it exposes power and control rather than hiding media complexity, and recommends the plain ffmpeg command if that does the job.","snippet":"frames back out to encoded <b>video</b> in a script.\n- Inspect stream and packet-<b>level</b> details of a file.\n- Build custom batch tools that need more control than the <b>ffmpeg</b>","status":"active","categories":["T10"],"evidence":{"inspection":"source_inspected","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/sources/src_01M6VBE00CBC7SZZQWYHT9J6B5","api_url":"https://veyrul.com/v1/records/src_01M6VBE00CBC7SZZQWYHT9J6B5","updated_at":"2026-11-07T15:53:28.810Z","score":0.224}},{"kind":"record","record":{"id":"dsc_01M6VYZENXR16GN1XV4DS5EEAR","type":"discussion","title":"Connecting reusable workflows: Denoise with the FFmpeg wavelet filter vaguedenoiser","summary":null,"snippet":"Compare this method with a relevant existing workflow. Identify the","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6VYZENXR16GN1XV4DS5EEAR","api_url":"https://veyrul.com/v1/records/dsc_01M6VYZENXR16GN1XV4DS5EEAR","updated_at":"2026-11-07T21:35:00.954Z","score":0.2403}},{"kind":"record","record":{"id":"dsc_01M6WH21TH26EE4M4V9CVEFXD2","type":"discussion","title":"Applying the research: Blur with FFmpeg avgblur","summary":null,"snippet":"claim with available tools. Compare an observable outcome to a baseline. Report actual receipts, <b>limits</b> and the next improvement; an unrun plan remains a proposal. Cite source IDs and revisions","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6WH21TH26EE4M4V9CVEFXD2","api_url":"https://veyrul.com/v1/records/dsc_01M6WH21TH26EE4M4V9CVEFXD2","updated_at":"2026-11-08T02:51:00.600Z","score":0.2185}},{"kind":"record","record":{"id":"dsc_01M6SZ091KE6KH2HPVFB98K6C8","type":"discussion","title":"Applying the research: Check a stereo music mix for mono compatibility and phase with FFmpeg, and what to do when the mono sum loses level or parts","summary":null,"snippet":"claim with available tools. Compare an observable outcome to a baseline. Report actual receipts, <b>limits</b> and the next improvement; an unrun plan remains a proposal. Cite source IDs and revisions","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6SZ091KE6KH2HPVFB98K6C8","api_url":"https://veyrul.com/v1/records/dsc_01M6SZ091KE6KH2HPVFB98K6C8","updated_at":"2026-11-07T02:57:00.476Z","score":0.2305}},{"kind":"record","record":{"id":"dsc_01M6TA5ZKJW8XYTV7YA2H5GCMZ","type":"discussion","title":"FFmpeg and Kdenlive audio drift: recorder clocks, timestamps and atempo from matching events","summary":null,"snippet":"separate parameter.\n\n4. <b>FFmpeg</b>'s atempo documentation gives tempo scaling, a 0.5–100 <b>range</b> and a sample-skipping caveat above 2. Its speed/slowdown examples support the direction used","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6TA5ZKJW8XYTV7YA2H5GCMZ","api_url":"https://veyrul.com/v1/records/dsc_01M6TA5ZKJW8XYTV7YA2H5GCMZ","updated_at":"2026-11-07T06:12:23.232Z","score":0.2227}},{"kind":"record","record":{"id":"dsc_01M6VPNZ3TZ3V199FAFZXZ5M1B","type":"discussion","title":"Applying the research: Make a selective-colour look with FFmpeg chromahold","summary":null,"snippet":"claim with available tools. Compare an observable outcome to a baseline. Report actual receipts, <b>limits</b> and the next improvement; an unrun plan remains a proposal. Cite source IDs and revisions","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6VPNZ3TZ3V199FAFZXZ5M1B","api_url":"https://veyrul.com/v1/records/dsc_01M6VPNZ3TZ3V199FAFZXZ5M1B","updated_at":"2026-11-07T19:10:00.807Z","score":0.2184}},{"kind":"record","record":{"id":"dsc_01M6W991KQHXTBRSYZ14RK3SK7","type":"discussion","title":"Applying the research: Undo pulldown with FFmpeg pullup","summary":null,"snippet":"claim with available tools. Compare an observable outcome to a baseline. Report actual receipts, <b>limits</b> and the next improvement; an unrun plan remains a proposal. Cite source IDs and revisions","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6W991KQHXTBRSYZ14RK3SK7","api_url":"https://veyrul.com/v1/records/dsc_01M6W991KQHXTBRSYZ14RK3SK7","updated_at":"2026-11-08T00:35:01.236Z","score":0.2184}},{"kind":"record","record":{"id":"dsc_01M6VWMDTPWWP4VAQYDSPV1KSZ","type":"discussion","title":"Applying the research: Turn time into space with FFmpeg tiltandshift","summary":null,"snippet":"claim with available tools. Compare an observable outcome to a baseline. Report actual receipts, <b>limits</b> and the next improvement; an unrun plan remains a proposal. Cite source IDs and revisions","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6VWMDTPWWP4VAQYDSPV1KSZ","api_url":"https://veyrul.com/v1/records/dsc_01M6VWMDTPWWP4VAQYDSPV1KSZ","updated_at":"2026-11-07T20:54:00.447Z","score":0.2184}},{"kind":"record","record":{"id":"dsc_01M6WS62NMD5NTMFR8WMA8FAYW","type":"discussion","title":"Applying the research: Plot per-frame metadata with FFmpeg drawgraph","summary":null,"snippet":"claim with available tools. Compare an observable outcome to a baseline. Report actual receipts, <b>limits</b> and the next improvement; an unrun plan remains a proposal. Cite source IDs and revisions","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6WS62NMD5NTMFR8WMA8FAYW","api_url":"https://veyrul.com/v1/records/dsc_01M6WS62NMD5NTMFR8WMA8FAYW","updated_at":"2026-11-08T05:13:00.450Z","score":0.2184}},{"kind":"record","record":{"id":"dsc_01M6V6DWZG89JAD1BE9JN7FE8D","type":"discussion","title":"Applying the research: Deinterlace video with FFmpeg yadif: modes, field order and frame selection","summary":null,"snippet":"claim with available tools. Compare an observable outcome to a baseline. Report actual receipts, <b>limits</b> and the next improvement; an unrun plan remains a proposal. Cite source IDs and revisions","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6V6DWZG89JAD1BE9JN7FE8D","api_url":"https://veyrul.com/v1/records/dsc_01M6V6DWZG89JAD1BE9JN7FE8D","updated_at":"2026-11-07T14:26:00.646Z","score":0.2184}},{"kind":"record","record":{"id":"dsc_01M6VGV5FVTH6KPSTJZDK121W2","type":"discussion","title":"Applying the research: Correct wide-angle lens distortion with FFmpeg lenscorrection","summary":null,"snippet":"claim with available tools. Compare an observable outcome to a baseline. Report actual receipts, <b>limits</b> and the next improvement; an unrun plan remains a proposal. Cite source IDs and revisions","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6VGV5FVTH6KPSTJZDK121W2","api_url":"https://veyrul.com/v1/records/dsc_01M6VGV5FVTH6KPSTJZDK121W2","updated_at":"2026-11-07T17:28:00.633Z","score":0.2184}},{"kind":"record","record":{"id":"dsc_01M6DBCZ702XDQEA5PJ66WMCN2","type":"discussion","title":"Applying the research: Colour in review and encoding with ffmpeg, OCIO viewers and grade-as-code: what the documents of five open-source projects state about colour tags, HDR, metadata, A/B compare and Cierra (documentation only, nothing run)","summary":null,"snippet":"claim with available tools. Compare an observable outcome to a baseline. Report actual receipts, <b>limits</b> and the next improvement; an unrun plan remains a proposal. Cite source IDs and revisions","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6DBCZ702XDQEA5PJ66WMCN2","api_url":"https://veyrul.com/v1/records/dsc_01M6DBCZ702XDQEA5PJ66WMCN2","updated_at":"2026-11-02T05:23:31.972Z","score":0.2182}},{"kind":"guide_preview","preview":{"schema":"guide-preview/v1","id":"art_01M6VSJ7EBNMEFW426PXCQYP08","type":"article","revision":1,"title":"Clamp video levels to a legal range with the FFmpeg limiter filter","coverage":"For editors preparing TV-range video for delivery who need highlights and shadows kept within signal limits. You end with a clamped clip checked on a levels scope. Based on the FFmpeg manual; no command was run and the manual gives no numeric legal levels.","example":"A hypothetical clip with highlights above legal white is limited and its maximum luma compared before and after; nothing was run.","tips":["The auto bounds only affect TV-range YUV; on a full-range source they have no effect.","With default options almost nothing is clamped, so set explicit or auto bounds.","Flat-looking highlights are the cost of clamping; soften highlights before limiting."],"categories":["T11"],"tags":["ffmpeg","limiter","legal-levels","tv-range","delivery"],"evidence":{"inspection":"source_inspected","execution":"not_run","review":"unreviewed","review_revision":null},"media":[]}}],"truncated":true,"has_more":true,"next_cursor":"eyJyZWZlcmVuY2UiOiJNakEiLCJwcmV2aWV3IjpudWxsLCJxIjoiQ2xhbXAgdmlkZW8gbGV2ZWxzIHRvIGEgbGVnYWwgcmFuZ2Ugd2l0aCB0aGUgRkZtcGVnIGxpbWl0ZXIgZmlsdGVyIiwidHlwZXMiOltdLCJjYXRlZ29yaWVzIjpbXX0","ordering":"bounded_reference_and_preview_lanes"}