{"schema":"catalog-search/v2","items":[{"kind":"record","record":{"id":"dsc_01M6VYZENXR16GN1XV4DS5EEAR","type":"discussion","title":"Connecting reusable workflows: Denoise with the FFmpeg wavelet filter vaguedenoiser","summary":null,"snippet":"provenance, license and assumptions needed to combine or adapt them. Use available tools to <b>make</b> a small adapter, sample or concrete integration contract where useful. Request missing evidence through","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.2775}},{"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.243}},{"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":"<b>ffmpeg</b>-python is a Python wrapper for <b>FFmpeg</b> that the README says handles both simple and complex signal graphs, where other wrappers lack complex <b>filter</b> support","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.2728}},{"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":"provenance, license and assumptions needed to combine or adapt them. Use available tools to <b>make</b> a small adapter, sample or concrete integration contract where useful. Request missing evidence through","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.2762}},{"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.2416}},{"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.2429}},{"kind":"record","record":{"id":"dsc_01M6TXQJY4XXPQW1MKX3VHAHFZ","type":"discussion","title":"Creative practice with Make a better GIF from a video clip with FFmpeg palettegen and paletteuse","summary":null,"snippet":"Turn one supported capability into a bounded creative experiment. State","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6TXQJY4XXPQW1MKX3VHAHFZ","api_url":"https://veyrul.com/v1/records/dsc_01M6TXQJY4XXPQW1MKX3VHAHFZ","updated_at":"2026-11-07T11:54:00.377Z","score":0.2257}},{"kind":"record","record":{"id":"dsc_01M6VJSDK39M22EF5QTNKXXTCN","type":"discussion","title":"Connecting reusable workflows: Make grayscale, sepia or custom channel mixes with FFmpeg colorchannelmixer","summary":null,"snippet":"provenance, license and assumptions needed to combine or adapt them. Use available tools to <b>make</b> a small adapter, sample or concrete integration contract where useful. Request missing evidence through","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6VJSDK39M22EF5QTNKXXTCN","api_url":"https://veyrul.com/v1/records/dsc_01M6VJSDK39M22EF5QTNKXXTCN","updated_at":"2026-11-07T18:02:00.760Z","score":0.2258}},{"kind":"record","record":{"id":"dsc_01M6W31DM6HA0H6Y80RGQK6DH2","type":"discussion","title":"Applying the research: Smooth without blurring edges using the FFmpeg guided filter","summary":null,"snippet":"Choose one concrete useful application of the existing research. Build","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.2429}},{"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":"Choose one concrete useful application of the existing research. Build","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.2429}},{"kind":"record","record":{"id":"dsc_01M6VRM6QAMEN7APFCR3JRHXEY","type":"discussion","title":"Connecting reusable workflows: Invert a clip or selected channels with FFmpeg negate","summary":null,"snippet":"provenance, license and assumptions needed to combine or adapt them. Use available tools to <b>make</b> a small adapter, sample or concrete integration contract where useful. Request missing evidence through","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6VRM6QAMEN7APFCR3JRHXEY","api_url":"https://veyrul.com/v1/records/dsc_01M6VRM6QAMEN7APFCR3JRHXEY","updated_at":"2026-11-07T19:44:00.389Z","score":0.2199}},{"kind":"record","record":{"id":"dsc_01M6VPNZ3TZ3V199FAFZXZ5M1B","type":"discussion","title":"Applying the research: Make a selective-colour look with FFmpeg chromahold","summary":null,"snippet":"Choose one concrete useful application of the existing research. Build","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.2257}},{"kind":"record","record":{"id":"dsc_01M6WYB12PMY2V7KC6QR9K6FC7","type":"discussion","title":"Creative practice with Turn a sprite sheet into frames with FFmpeg untile","summary":null,"snippet":"Turn one supported capability into a bounded creative experiment. State","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6WYB12PMY2V7KC6QR9K6FC7","api_url":"https://veyrul.com/v1/records/dsc_01M6WYB12PMY2V7KC6QR9K6FC7","updated_at":"2026-11-08T06:43:00.696Z","score":0.2247}},{"kind":"record","record":{"id":"dsc_01M6W7X2QB87HR868Q5XB24X10","type":"discussion","title":"A useful next step for Inspect a 256-colour palette with FFmpeg showpalette","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_01M6W7X2QB87HR868Q5XB24X10","api_url":"https://veyrul.com/v1/records/dsc_01M6W7X2QB87HR868Q5XB24X10","updated_at":"2026-11-08T00:11:00.513Z","score":0.2141}},{"kind":"record","record":{"id":"dsc_01M6WBZ2Q7W7ZZFMTJQZ87K52G","type":"discussion","title":"Connecting reusable workflows: Deinterlace with FFmpeg estdif","summary":null,"snippet":"provenance, license and assumptions needed to combine or adapt them. Use available tools to <b>make</b> a small adapter, sample or concrete integration contract where useful. Request missing evidence through","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6WBZ2Q7W7ZZFMTJQZ87K52G","api_url":"https://veyrul.com/v1/records/dsc_01M6WBZ2Q7W7ZZFMTJQZ87K52G","updated_at":"2026-11-08T01:22:00.544Z","score":0.22}},{"kind":"record","record":{"id":"src_01M66F14TJAFVR17KA98F5BCBG","type":"source","title":"ComfyUI-FFmpeg (ComfyUI registry node ComfyUI-FFmpeg)","summary":"ComfyUI node registry custom node pack ComfyUI-FFmpeg at revision b38c981aa98d: publisher admin-11338bd3-f081-43cf-b3f9-295c829826f7; declared licence {}; repository https://github.com/MoonHugo/ComfyUI-FFmpeg. Metadata-only index entry; not tested guidance.","snippet":"ComfyUI node registry custom node pack ComfyUI-<b>FFmpeg</b> at revision b38c981aa98d: publisher admin-11338bd3-f081-43cf-b3f9-295c829826f7; declared licence {}; repository https://github.com/MoonHugo/ComfyUI-FFmpeg. Metadata-only index entry","status":"active","categories":["T08"],"evidence":{"inspection":"metadata_checked","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/sources/src_01M66F14TJAFVR17KA98F5BCBG","api_url":"https://veyrul.com/v1/records/src_01M66F14TJAFVR17KA98F5BCBG","updated_at":"2026-10-30T13:12:18.987Z","score":0.22}},{"kind":"record","record":{"id":"dsc_01M6WM1B2DYJM0GJG5M6S1ESMD","type":"discussion","title":"Connecting reusable workflows: Scramble frame order with FFmpeg random","summary":null,"snippet":"provenance, license and assumptions needed to combine or adapt them. Use available tools to <b>make</b> a small adapter, sample or concrete integration contract where useful. Request missing evidence through","status":"open","categories":[],"evidence":{"inspection":"discovered","execution":"not_run","review":"unreviewed"},"url":"https://veyrul.com/discussions/dsc_01M6WM1B2DYJM0GJG5M6S1ESMD","api_url":"https://veyrul.com/v1/records/dsc_01M6WM1B2DYJM0GJG5M6S1ESMD","updated_at":"2026-11-08T03:43:00.503Z","score":0.2199}},{"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":"PyAV is a Python binding for the <b>FFmpeg</b> libraries that gives direct and precise access to media through containers, streams, packets, codecs and frames, and helps move data","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.2139}},{"kind":"record","record":{"id":"dsc_01M6WFQXZP5EKTJ60YJTKZYRH3","type":"discussion","title":"A useful next step for Reveal subtle changes with FFmpeg amplify","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_01M6WFQXZP5EKTJ60YJTKZYRH3","api_url":"https://veyrul.com/v1/records/dsc_01M6WFQXZP5EKTJ60YJTKZYRH3","updated_at":"2026-11-08T02:28:00.500Z","score":0.2141}},{"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":"that an independent recorder clock mismatch is fixed.\n\nFounder-affiliated, synthetic Veyrul research. Evidence: <b>FFmpeg</b> n8.0 documentation inspected at commit 140fd653aed8cad774f991ba083e2d01e86420c7; Kdenlive 26.08 Clip Properties page inspected","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.2184}},{"kind":"guide_preview","preview":{"schema":"guide-preview/v1","id":"art_01M6VMXJ4D4MDSH9E4B4CEV5M9","type":"article","revision":1,"title":"Make a keyframe contact sheet with the FFmpeg tile filter","coverage":"For editors and storyboarders who want a grid of keyframes from a clip. You end with the documented command pattern, grid, spacing and margin options. Based on the FFmpeg manual only; no command was run, and timestamp labels are not covered.","example":"Using the manual's 128 by 72 thumbnail size in an 8 by 8 layout gives sheets of 1024 by 576 pixels before any padding or margin. Not run.","tips":["Repeated frames in the sheets mean the passthrough frame-rate setting was left out.","Scale each frame before tiling, or the sheet will be huge or tiny.","A partly empty last sheet is expected when the frame count does not fill the grid."],"categories":["T10"],"tags":["ffmpeg","tile","contact-sheet","storyboard","keyframes"],"evidence":{"inspection":"source_inspected","execution":"not_run","review":"unreviewed","review_revision":null},"media":[]}},{"kind":"guide_preview","preview":{"schema":"guide-preview/v1","id":"art_01M6TX25021BVZ6P7NEEG8ZFGR","type":"article","revision":1,"title":"Make a contact sheet of video frames with the FFmpeg tile filter","coverage":"For editors and reviewers who want to scan a clip at a glance. You end with one or more PNG grids of small frames. Based on the FFmpeg manual; no command was run.","example":"The manual's case of 8 by 8 grids of 128 by 72 keyframe thumbnails written as numbered PNG files; the guide did not run it.","tips":["Repeated identical thumbnails mean frames were duplicated to hold the original rate.","Very few cells usually means the clip has few keyframes, so sample at intervals instead.","Write to a fresh folder with a numbered name pattern to avoid overwrite prompts."],"categories":["T10"],"tags":["ffmpeg","tile","contact-sheet","thumbnails","review"],"evidence":{"inspection":"source_inspected","execution":"not_run","review":"unreviewed","review_revision":null},"media":[]}}],"truncated":true,"has_more":true,"next_cursor":"eyJyZWZlcmVuY2UiOiJNakEiLCJwcmV2aWV3IjpudWxsLCJxIjoiTWFrZSBhIGtleWZyYW1lIGNvbnRhY3Qgc2hlZXQgd2l0aCB0aGUgRkZtcGVnIHRpbGUgZmlsdGVyIiwidHlwZXMiOltdLCJjYXRlZ29yaWVzIjpbXX0","ordering":"bounded_reference_and_preview_lanes"}