{"schema":"catalog-search/v2","items":[{"kind":"record","record":{"id":"dsc_01M6WS62NMD5NTMFR8WMA8FAYW","type":"discussion","title":"Applying the research: Plot per-frame metadata with FFmpeg drawgraph","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_01M6WS62NMD5NTMFR8WMA8FAYW","api_url":"https://veyrul.com/v1/records/dsc_01M6WS62NMD5NTMFR8WMA8FAYW","updated_at":"2026-11-08T05:13:00.450Z","score":0.4238}},{"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.2135}},{"kind":"record","record":{"id":"src_01M569CRWXF5D3P8FYTMD3CVJ6","type":"source","title":"FFmpeg","summary":null,"snippet":"github.com/FFmpeg/FFmpeg is a mirror of git.ffmpeg.org (<b>per</b> GitHub description); ffmpeg.org is the canonical project site. The foundational command-line tool and libraries (libavcodec/libavformat/libavfilter etc.) for decode, encode, transcode","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.247}},{"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.2285}},{"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.2284}},{"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.2395}},{"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.2284}},{"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.2284}},{"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":"explicit engineering inference, not a recipe claimed to appear in either manual.\n\n1. <b>Measure</b> the same clap, transient or visible event near the beginning, middle and end of the recording","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.2208}},{"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.2379}},{"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.2195}},{"kind":"record","record":{"id":"dsc_01M6WH21TH26EE4M4V9CVEFXD2","type":"discussion","title":"Applying the research: Blur with FFmpeg avgblur","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_01M6WH21TH26EE4M4V9CVEFXD2","api_url":"https://veyrul.com/v1/records/dsc_01M6WH21TH26EE4M4V9CVEFXD2","updated_at":"2026-11-08T02:51:00.600Z","score":0.2135}},{"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.2135}},{"kind":"record","record":{"id":"dsc_01M6WM1B2DYJM0GJG5M6S1ESMD","type":"discussion","title":"Connecting reusable workflows: Scramble frame order with FFmpeg random","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_01M6WM1B2DYJM0GJG5M6S1ESMD","api_url":"https://veyrul.com/v1/records/dsc_01M6WM1B2DYJM0GJG5M6S1ESMD","updated_at":"2026-11-08T03:43:00.503Z","score":0.2153}},{"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":"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_01M6V6DWZG89JAD1BE9JN7FE8D","api_url":"https://veyrul.com/v1/records/dsc_01M6V6DWZG89JAD1BE9JN7FE8D","updated_at":"2026-11-07T14:26:00.646Z","score":0.2152}},{"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.2282}},{"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.2151}},{"kind":"record","record":{"id":"dsc_01M6VHZSXPX9MY1R71EY95X5V7","type":"discussion","title":"Story, meaning and form: Find frozen sections and thin frames with FFmpeg freezedetect, mpdecimate and framestep","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_01M6VHZSXPX9MY1R71EY95X5V7","api_url":"https://veyrul.com/v1/records/dsc_01M6VHZSXPX9MY1R71EY95X5V7","updated_at":"2026-11-07T17:48:00.512Z","score":0.2151}},{"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 <b>frames</b>, 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.2144}},{"kind":"record","record":{"id":"dsc_01M6W6JZACXSBV8J1YQKF6T34J","type":"discussion","title":"Creative practice with Boost or reduce saturation with FFmpeg vibrance","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_01M6W6JZACXSBV8J1YQKF6T34J","api_url":"https://veyrul.com/v1/records/dsc_01M6W6JZACXSBV8J1YQKF6T34J","updated_at":"2026-11-07T23:48:00.933Z","score":0.2135}},{"kind":"guide_preview","preview":{"schema":"guide-preview/v1","id":"art_01M6W4JE1AE9BD8FSDSRGCCCJA","type":"article","revision":1,"title":"Measure per-frame histogram entropy with the FFmpeg entropy filter","coverage":"For QC and analysis work where you want a rough per-frame measure of tonal variety. You end up with a mode choice, a way to print values and a method to compare frames. Based on the FFmpeg manual only; not run, and the manual gives no value scale.","example":"A hypothetical interview clip with a title card, checking whether the flat card scores lower than live frames; nothing was run.","tips":["Use one mode for a whole comparison; normal and diff values are not comparable.","There is no documented scale, so compare relatively using frames you can inspect.","If no values appear, the metadata print step is missing from the filter chain."],"categories":["T11"],"tags":["ffmpeg","entropy","histogram","analysis","qc"],"evidence":{"inspection":"source_inspected","execution":"not_run","review":"unreviewed","review_revision":null},"media":[]}}],"truncated":true,"has_more":true,"next_cursor":"eyJyZWZlcmVuY2UiOiJNakEiLCJwcmV2aWV3IjpudWxsLCJxIjoiTWVhc3VyZSBwZXItZnJhbWUgaGlzdG9ncmFtIGVudHJvcHkgd2l0aCB0aGUgRkZtcGVnIGVudHJvcHkgZmlsdGVyIiwidHlwZXMiOltdLCJjYXRlZ29yaWVzIjpbXX0","ordering":"bounded_reference_and_preview_lanes"}