[{"data":1,"prerenderedAt":183},["ShallowReactive",2],{"blog-post-ffmpeg-3-ways-extract-video-frames":3,"recent-posts":119},{"id":4,"uid":5,"url":6,"type":7,"href":8,"tags":9,"first_publication_date":10,"last_publication_date":10,"slugs":11,"linked_documents":13,"lang":14,"alternate_languages":15,"data":16},"atSV6BEAACsARA7p","ffmpeg-3-ways-extract-video-frames",null,"blog_posts","https:\u002F\u002Fmarks-personal-website.cdn.prismic.io\u002Fapi\u002Fv2\u002Fdocuments\u002Fsearch?ref=auzrLRIAACcAt6BE&q=%5B%5B%3Ad+%3D+at%28document.id%2C+%22atSV6BEAACsARA7p%22%29+%5D%5D",[],"2026-10-18T09:56:05+0000",[12],"ffmpeg-3-easiest-ways-to-extract-frames-from-video",[],"en-us",[],{"title":17,"date":23,"description":24,"image":29,"content":39},[18],{"type":19,"text":20,"spans":21,"direction":22},"heading1","FFmpeg: 3 Easiest Ways to Extract Frames From Video",[],"ltr","2026-10-17",[25],{"type":26,"text":27,"spans":28,"direction":22},"heading2","3 easy ways to extract frames from a video using FFmpeg.",[],{"dimensions":30,"alt":6,"copyright":6,"url":33,"id":34,"edit":35},{"width":31,"height":32},1376,768,"https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002F0lV5gXhZL05F97mh_3EasiestWaystoExtractFramesfromVideo.jpeg?auto=format,compress","0lV5gXhZL05F97mh",{"x":36,"y":36,"zoom":37,"background":38},0,1,"transparent",[40,44,48,52,55,58,61,64,67,70,73,76,79,82,85,88,91,94,97,100,116],{"type":41,"text":42,"spans":43,"direction":22},"heading3","1st Method: Specific Timestamp",[],{"type":45,"text":46,"spans":47,"direction":22},"paragraph","Let's extract a single frame at a specific timestamp. If you need a thumbnail or a snapshot taken at five seconds into your video, run this command:",[],{"type":49,"text":50,"spans":51,"direction":22},"preformatted","ffmpeg -ss 00:00:05 -i input.mp4 -frames:v 1 output.png",[],{"type":45,"text":53,"spans":54,"direction":22},"The \u003Ccode>-ss\u003C\u002Fcode> flag sets the exact timestamp, \u003Ccode>-i\u003C\u002Fcode> selects your video, \u003Ccode>-frames:v 1\u003C\u002Fcode> tells FFmpeg to extract just one frame, and \u003Ccode>output.png\u003C\u002Fcode> saves it as an image.",[],{"type":41,"text":56,"spans":57,"direction":22},"2nd Method: Time Intervals",[],{"type":45,"text":59,"spans":60,"direction":22},"Extracting frames at regular time intervals. This is ideal when you want consistent preview images throughout your clip.",[],{"type":45,"text":62,"spans":63,"direction":22},"To grab one frame every second, use the \u003Ccode>fps\u003C\u002Fcode> filter like this:",[],{"type":49,"text":65,"spans":66,"direction":22},"ffmpeg -i input.mp4 -vf \"fps=1\" frame_%04d.png",[],{"type":45,"text":68,"spans":69,"direction":22},"The \u003Ccode>frame_%04d.png\u003C\u002Fcode> part automatically numbers your output files with four digits, creating \u003Ccode>frame_0001.png\u003C\u002Fcode>, \u003Ccode>frame_0002.png\u003C\u002Fcode>, and so on.",[],{"type":45,"text":71,"spans":72,"direction":22},"If you prefer a frame every 5 seconds, change the filter to \u003Ccode>fps=1\u002F5\u003C\u002Fcode>:",[],{"type":49,"text":74,"spans":75,"direction":22},"ffmpeg -i input.mp4 -vf \"fps=1\u002F5\" frame_%04d.png",[],{"type":45,"text":77,"spans":78,"direction":22},"And for longer videos where you only need a frame every 60 seconds, use \u003Ccode>fps=1\u002F60\u003C\u002Fcode>:",[],{"type":49,"text":80,"spans":81,"direction":22},"ffmpeg -i input.mp4 -vf \"fps=1\u002F60\" frame_%04d.png",[],{"type":41,"text":83,"spans":84,"direction":22},"3rd Method: Every Single Frame",[],{"type":45,"text":86,"spans":87,"direction":22},"This method extracts every single frame from the video. Because videos run at twenty-four frames per second or higher, this action can take a few moments to finish loading and will generate a large number of images in your directory.",[],{"type":45,"text":89,"spans":90,"direction":22},"To dump every frame, run:",[],{"type":49,"text":92,"spans":93,"direction":22},"ffmpeg -i input.mp4 frame_%04d.png",[],{"type":45,"text":95,"spans":96,"direction":22},"Once the terminal finishes processing, open your project folder to quickly verify that your image files are there and open cleanly.",[],{"type":45,"text":98,"spans":99,"direction":22},"As a practical tip, if you need to save storage space when generating hundreds of frames, simply change \u003Ccode>.png\u003C\u002Fcode> to \u003Ccode>.jpg\u003C\u002Fcode> at the end of any of these commands for much smaller file sizes. ",[],{"type":101,"oembed":102},"embed",{"embed_url":103,"type":104,"version":105,"title":20,"author_name":106,"author_url":107,"provider_name":108,"provider_url":109,"thumbnail_url":110,"thumbnail_width":111,"thumbnail_height":112,"html":113,"height":114,"width":115},"https:\u002F\u002Fyoutu.be\u002FJ03dOp1Gh2Y","video","1.0","markster","https:\u002F\u002Fwww.youtube.com\u002F@markster1904","YouTube","https:\u002F\u002Fwww.youtube.com\u002F","https:\u002F\u002Fi.ytimg.com\u002Fvi\u002FJ03dOp1Gh2Y\u002Fhqdefault.jpg",480,360,"\u003Ciframe width=\"200\" height=\"113\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FJ03dOp1Gh2Y?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen title=\"FFmpeg: 3 Easiest Ways to Extract Frames From Video\">\u003C\u002Fiframe>",113,200,{"type":45,"text":117,"spans":118,"direction":22},"Feel free to leave a comment down below.",[],{"results":120,"page":37,"results_per_page":181,"results_size":181,"total_results_size":182,"total_pages":37},[121,141,161],{"id":122,"uid":123,"url":6,"type":7,"href":124,"tags":125,"first_publication_date":126,"last_publication_date":126,"slugs":127,"linked_documents":129,"lang":14,"alternate_languages":130,"data":131},"auzqGRIAACsAt55X","ubuntu-26-04-enable-fractional-scaling-on-wayland","https:\u002F\u002Fmarks-personal-website.cdn.prismic.io\u002Fapi\u002Fv2\u002Fdocuments\u002Fsearch?ref=auzrLRIAACcAt6BE&q=%5B%5B%3Ad+%3D+at%28document.id%2C+%22auzqGRIAACsAt55X%22%29+%5D%5D",[],"2026-11-05T20:46:37+0000",[128],"ubuntu-26.04-enable-fractional-scaling-on-wayland",[],[],{"image":132,"title":137},{"dimensions":133,"alt":6,"copyright":6,"url":134,"id":135,"edit":136},{"width":31,"height":32},"https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002FpVI5y1ileUlGp0ax_ubuntu26_04EnableFractionalScalingonWayland.jpeg?auto=format,compress","pVI5y1ileUlGp0ax",{"x":36,"y":36,"zoom":37,"background":38},[138],{"type":19,"text":139,"spans":140,"direction":22},"Ubuntu 26.04: Enable Fractional Scaling on Wayland",[],{"id":142,"uid":143,"url":6,"type":7,"href":144,"tags":145,"first_publication_date":146,"last_publication_date":146,"slugs":147,"linked_documents":149,"lang":14,"alternate_languages":150,"data":151},"auzo2RIAAC0At5xZ","ubuntu-26.04-undo-apt-install-with-apt-history","https:\u002F\u002Fmarks-personal-website.cdn.prismic.io\u002Fapi\u002Fv2\u002Fdocuments\u002Fsearch?ref=auzrLRIAACcAt6BE&q=%5B%5B%3Ad+%3D+at%28document.id%2C+%22auzo2RIAAC0At5xZ%22%29+%5D%5D",[],"2026-11-05T20:40:46+0000",[148],"ubuntu-26.04-undo-an-apt-install-with-apt-history-undo",[],[],{"image":152,"title":157},{"dimensions":153,"alt":6,"copyright":6,"url":154,"id":155,"edit":156},{"width":31,"height":32},"https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002FqOqSwrMP0cjwe-66_Ubuntu26.04-UndoanAPTInstallwith%2522apthistory-undo%2522.jpg?auto=format,compress","qOqSwrMP0cjwe-66",{"x":36,"y":36,"zoom":37,"background":38},[158],{"type":19,"text":159,"spans":160,"direction":22},"Ubuntu 26.04: Undo an APT Install with \"apt history-undo\"",[],{"id":162,"uid":163,"url":6,"type":7,"href":164,"tags":165,"first_publication_date":166,"last_publication_date":166,"slugs":167,"linked_documents":169,"lang":14,"alternate_languages":170,"data":171},"auznGhIAACoAt5mB","ubuntu-26-04-enable-screen-time-limits","https:\u002F\u002Fmarks-personal-website.cdn.prismic.io\u002Fapi\u002Fv2\u002Fdocuments\u002Fsearch?ref=auzrLRIAACcAt6BE&q=%5B%5B%3Ad+%3D+at%28document.id%2C+%22auznGhIAACoAt5mB%22%29+%5D%5D",[],"2026-11-05T20:35:03+0000",[168],"ubuntu-26.04-enable-screen-time-limits-in-gnome",[],[],{"image":172,"title":177},{"dimensions":173,"alt":6,"copyright":6,"url":174,"id":175,"edit":176},{"width":31,"height":32},"https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002F2p8DjpWKS20G9Wse_Ubuntu26.04-EnableScreenTimeLimitsinGNOME.jpeg?auto=format,compress","2p8DjpWKS20G9Wse",{"x":36,"y":36,"zoom":37,"background":38},[178],{"type":19,"text":179,"spans":180,"direction":22},"Ubuntu 26.04: Enable Screen Time Limits in GNOME",[],3,41,1793911620153]