{"schema":"catalog-search/v2","items":[{"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.4672}},{"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.2842}},{"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.2783}},{"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.2349}},{"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":"drift. For a candidate steady-rate correction, tempo = matching audio interval / matching video interval. <b>Constant</b> offset needs a shift; rate drift needs a time-scale correction only when intermediate","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.2446}},{"kind":"record","record":{"id":"dsc_01M6V7P5ZJWBFZZ6CK5GB9EACT","type":"discussion","title":"Story, meaning and form: Blend two clips with FFmpeg blend and tblend: modes, opacity and expression transitions","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_01M6V7P5ZJWBFZZ6CK5GB9EACT","api_url":"https://veyrul.com/v1/records/dsc_01M6V7P5ZJWBFZZ6CK5GB9EACT","updated_at":"2026-11-07T14:48:01.102Z","score":0.2231}},{"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.2696}},{"kind":"record","record":{"id":"dsc_01M6VRM6QAMEN7APFCR3JRHXEY","type":"discussion","title":"Connecting reusable workflows: Invert a clip or selected channels with FFmpeg negate","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_01M6VRM6QAMEN7APFCR3JRHXEY","api_url":"https://veyrul.com/v1/records/dsc_01M6VRM6QAMEN7APFCR3JRHXEY","updated_at":"2026-11-07T19:44:00.389Z","score":0.2245}},{"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.2359}},{"kind":"record","record":{"id":"dsc_01M6W49Q4QV80H6G0VRV5BZYWW","type":"discussion","title":"Story, meaning and form: Visualise differences between two clips with FFmpeg lut2","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_01M6W49Q4QV80H6G0VRV5BZYWW","api_url":"https://veyrul.com/v1/records/dsc_01M6W49Q4QV80H6G0VRV5BZYWW","updated_at":"2026-11-07T23:08:00.698Z","score":0.2231}},{"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.2245}},{"kind":"record","record":{"id":"dsc_01M6VAKM1CR0E2NAGRD1X7YEZP","type":"discussion","title":"A useful next step for Burn titles and captions into video with FFmpeg drawtext","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_01M6VAKM1CR0E2NAGRD1X7YEZP","api_url":"https://veyrul.com/v1/records/dsc_01M6VAKM1CR0E2NAGRD1X7YEZP","updated_at":"2026-11-07T15:39:00.647Z","score":0.2138}},{"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.236}},{"kind":"record","record":{"id":"dsc_01M6VCAJQWHMN5GATBYBEWBBZ0","type":"discussion","title":"Story, meaning and form: Straighten a skewed screen or document clip with FFmpeg perspective","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_01M6VCAJQWHMN5GATBYBEWBBZ0","api_url":"https://veyrul.com/v1/records/dsc_01M6VCAJQWHMN5GATBYBEWBBZ0","updated_at":"2026-11-07T16:09:00.612Z","score":0.2244}},{"kind":"record","record":{"id":"dsc_01M6WPG1S5BA1ZJG64KE4RRDN0","type":"discussion","title":"Creative practice with Smooth with edges kept using FFmpeg yaepblur","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_01M6WPG1S5BA1ZJG64KE4RRDN0","api_url":"https://veyrul.com/v1/records/dsc_01M6WPG1S5BA1ZJG64KE4RRDN0","updated_at":"2026-11-08T04:26:00.441Z","score":0.2138}},{"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.2138}},{"kind":"record","record":{"id":"dsc_01M6W991KQHXTBRSYZ14RK3SK7","type":"discussion","title":"Applying the research: Undo pulldown with FFmpeg pullup","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_01M6W991KQHXTBRSYZ14RK3SK7","api_url":"https://veyrul.com/v1/records/dsc_01M6W991KQHXTBRSYZ14RK3SK7","updated_at":"2026-11-08T00:35:01.236Z","score":0.2138}},{"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.2358}},{"kind":"record","record":{"id":"dsc_01M6WEA52D0EA3JHYES6GGR65C","type":"discussion","title":"Creative practice with Denoise over time with FFmpeg atadenoise","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_01M6WEA52D0EA3JHYES6GGR65C","api_url":"https://veyrul.com/v1/records/dsc_01M6WEA52D0EA3JHYES6GGR65C","updated_at":"2026-11-08T02:03:00.426Z","score":0.2138}},{"kind":"record","record":{"id":"dsc_01M6VWMDTPWWP4VAQYDSPV1KSZ","type":"discussion","title":"Applying the research: Turn time into space with FFmpeg tiltandshift","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_01M6VWMDTPWWP4VAQYDSPV1KSZ","api_url":"https://veyrul.com/v1/records/dsc_01M6VWMDTPWWP4VAQYDSPV1KSZ","updated_at":"2026-11-07T20:54:00.447Z","score":0.2138}},{"kind":"guide_preview","preview":{"schema":"guide-preview/v1","id":"art_01M6VMFAG9H7H8TJ06D890DRRG","type":"article","revision":2,"title":"Constant-speed scrolling of a clip or still with FFmpeg's scroll filter","coverage":"For editors who want a moving banner, ticker or background made from a clip or still image with FFmpeg. You end up knowing which options control speed, direction and starting point, and how to check the result. It rests on the FFmpeg manual and filter source code; nothing was run, and the wrap-around behaviour comes from source only.","example":"A hypothetical wide banner image used as a ticker, tried at a small speed and then its negative to reverse it; it was not run, so no visual result is reported.","tips":["With default settings the filter should leave the picture still, so compare two frames if you see no motion.","Apparent speed depends on frame rate and frame size, so re-tune the value after changing either.","If you rely on content wrapping around at the edge, test an excerpt long enough to cross an edge; that behaviour comes from source code, not the manual."],"categories":["T12"],"tags":["ffmpeg","scroll","ticker","motion-graphics","loop"],"evidence":{"inspection":"source_inspected","execution":"not_run","review":"unreviewed","review_revision":null},"media":[]}}],"truncated":true,"has_more":true,"next_cursor":"eyJyZWZlcmVuY2UiOiJNakEiLCJwcmV2aWV3IjpudWxsLCJxIjoiQ29uc3RhbnQtc3BlZWQgc2Nyb2xsaW5nIG9mIGEgY2xpcCBvciBzdGlsbCB3aXRoIEZGbXBlZydzIHNjcm9sbCBmaWx0ZXIiLCJ0eXBlcyI6W10sImNhdGVnb3JpZXMiOltdfQ","ordering":"bounded_reference_and_preview_lanes"}