{"id":39217,"date":"2025-11-08T09:30:29","date_gmt":"2025-11-08T17:30:29","guid":{"rendered":"https:\/\/cloudinary.com\/blog\/?p=39217"},"modified":"2025-11-08T09:30:30","modified_gmt":"2025-11-08T17:30:30","slug":"how-to-slow-down-video-using-ffmpeg","status":"publish","type":"post","link":"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/","title":{"rendered":"How to slow down video using FFmpeg"},"content":{"rendered":"\n<p>Slowing a clip is a go-to technique for tutorials, product demos, gameplay, and cinematic b-roll. In community threads, a common theme emerges: people want clean slow motion with synced audio, minimal quality loss, and commands that are easy to reuse in scripts and CI pipelines.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Question:<\/h2>\n\n\n\n<p><em>Hi folks,<\/em><br><em>I need a reliable, repeatable way to change playback speed for several clips across macOS and Linux. Specifically, how to slow down video using FFmpeg while keeping audio in sync and quality high? I\u2019m looking for examples like 2x and 4x slow motion, how to keep pitch natural, and any tips for smoothing motion so it does not look choppy. Bonus points if there is a way to generate outputs for the web with sane defaults. Thanks!<\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Answer:<\/h2>\n\n\n\n<p>FFmpeg makes creating slow motion video simple using a video PTS change and an audio tempo adjustment. Below are proven recipes, from basic to smoother, plus tips for quality and batching. If you are new to FFmpeg\u2019s role in modern workflows, this overview of <a href=\"https:\/\/cloudinary.com\/guides\/video-formats\/ffmpeg-features-use-cases-and-pros-cons-you-should-know\">FFmpeg features and use cases<\/a> is a good start.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1) The core idea: setpts for video speed<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Video speed is controlled by presentation timestamps (PTS).<\/li>\n\n\n\n<li>Factors greater than 1 slows down videos. Example: factor 2 means half speed.<\/li>\n<\/ul>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\"><span class=\"hljs-comment\"># 2x slow motion, video only<\/span>\nffmpeg -i input.mp4 -filter:v <span class=\"hljs-string\">\"setpts=2*PTS\"<\/span> -an \\\n\u00a0 -c:v libx264 -crf <span class=\"hljs-number\">18<\/span> -preset medium -pix_fmt yuv420p output_slow2x.mp4<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h3 class=\"wp-block-heading\">2) Keep audio in sync and natural with atempo<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Use <code>atempo<\/code> for audio. It changes tempo while preserving pitch.<\/li>\n\n\n\n<li><code>atempo<\/code> supports 0.5 to 2.0 per filter. Chain filters together for bigger changes.<\/li>\n<\/ul>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\"><span class=\"hljs-comment\"># 2x slow motion with audio<\/span>\nffmpeg -i input.mp4 -filter_complex <span class=\"hljs-string\">\"&#91;0:v]setpts=2*PTS&#91;v];&#91;0:a]atempo=0.5&#91;a]\"<\/span> \\\n\u00a0 -map <span class=\"hljs-string\">\"&#91;v]\"<\/span> -map <span class=\"hljs-string\">\"&#91;a]\"<\/span> \\\n\u00a0 -c:v libx264 -crf <span class=\"hljs-number\">20<\/span> -preset medium -pix_fmt yuv420p \\\n\u00a0 -c:a aac -b:a <span class=\"hljs-number\">192<\/span>k output_slow2x_av.mp4\n\n<span class=\"hljs-comment\"># 4x slow motion with audio (0.25x speed requires chaining atempo)<\/span>\nffmpeg -i input.mp4 -filter_complex <span class=\"hljs-string\">\"&#91;0:v]setpts=4*PTS&#91;v];&#91;0:a]atempo=0.5,atempo=0.5&#91;a]\"<\/span> \\\n\u00a0 -map <span class=\"hljs-string\">\"&#91;v]\"<\/span> -map <span class=\"hljs-string\">\"&#91;a]\"<\/span> \\\n\u00a0 -c:v libx264 -crf <span class=\"hljs-number\">20<\/span> -preset medium -pix_fmt yuv420p \\\n\u00a0 -c:a aac -b:a <span class=\"hljs-number\">192<\/span>k output_slow4x_av.mp4<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Tip: To mute audio instead, drop the audio mapping and add <code>-an<\/code>. To keep the audio untouched, omit the <code>atempo<\/code> chain, but the audio will finish earlier than the video.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3) Smooth slow motion with frame interpolation<\/h3>\n\n\n\n<p>If the clip looks choppy at high slowdowns, synthesize intermediate frames before stretching time.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\"><span class=\"hljs-comment\"># Interpolate more frames, then slow to 4x<\/span>\nffmpeg -i input.mp4 -filter:v <span class=\"hljs-string\">\"minterpolate=fps=120, setpts=4*PTS\"<\/span> \\\n\u00a0 -c:v libx264 -crf <span class=\"hljs-number\">20<\/span> -preset slow -pix_fmt yuv420p output_slow4x_smooth.mp4<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Start with <code>fps=60<\/code> or <code>fps=120<\/code> depending on your output needs. More frames means more compute time and a bigger file.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4) Quality, compatibility, and file size tips<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Codec:<\/strong> H.264 is the safe baseline for web delivery. See <a href=\"https:\/\/cloudinary.com\/guides\/video-formats\/h-264-video-encoding-how-it-works-benefits-and-9-best-practices\">H.264 best practices<\/a>.<\/li>\n\n\n\n<li><strong>Rate control:<\/strong> CRF controls quality. Lower CRF is higher quality. Common range is 18 to 23.<\/li>\n\n\n\n<li><strong>Preset: <\/strong>Slower presets use more CPU to compress better at the same quality.<\/li>\n\n\n\n<li><strong>Pixel format:<\/strong> <code>yuv420p<\/code> maximizes device compatibility.<\/li>\n\n\n\n<li><strong>Audio: <\/strong>AAC 128 to 192 kbps is fine for most content.<\/li>\n\n\n\n<li><strong>Target delivery:<\/strong> Read up on <a href=\"https:\/\/cloudinary.com\/guides\/web-performance\/video-encoding-how-it-works-formats-best-practices\">video encoding best practices<\/a> for the web.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">5) Batch processing snippets<\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\"><span class=\"hljs-comment\"># Bash: 2x slow for all MP4s in a folder<\/span>\n<span class=\"hljs-keyword\">for<\/span> f in .<span class=\"hljs-comment\">\/*.mp4; do\n\u00a0 ffmpeg -y -i \"$f\" \\\n\u00a0 \u00a0 -filter_complex \"&#91;0:v]setpts=2*PTS&#91;v];&#91;0:a]atempo=0.5&#91;a]\" \\\n\u00a0 \u00a0 -map \"&#91;v]\" -map \"&#91;a]\" \\\n\u00a0 \u00a0 -c:v libx264 -crf 20 -preset medium -pix_fmt yuv420p \\\n\u00a0 \u00a0 -c:a aac -b:a 160k \"${f%.mp4}_slow2x.mp4\"\ndone<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h3 class=\"wp-block-heading\">6) FAQs<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Can I slow down without re-encoding? Practically no. Changing timestamps or generating frames requires re-encoding the video stream.<\/li>\n\n\n\n<li>How do I choose the PTS factor? new_factor = 1 \/ playback_speed. Example: 0.5x speed means factor 2, 0.25x speed means factor 4.<\/li>\n\n\n\n<li>Why does the output look washed out on some players? Ensure <code>-pix_fmt yuv420p<\/code> for compatibility.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Speed changes in the cloud with Cloudinary<\/h3>\n\n\n\n<p>Prefer to generate slowed versions on demand and skip local encoding pipelines? You can upload your source video once, then request a slowed variant via a URL-based transformation. For example, you can deliver a 50% slow version on the fly, and combine that with format and delivery controls.<\/p>\n\n\n\n<p><a href=\"https:\/\/res.cloudinary.com\/demo\/video\/upload\/e_accelerate:-50\/sample.mp4\"><code>https:\/\/res.cloudinary.com\/demo\/video\/upload\/e_accelerate:-50\/sample.mp4<\/code><\/a><\/p>\n\n\n\n<p>You can integrate this with web players or batch operations, and pair it with best practices from the guides above to ensure smooth delivery for your users.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">TL;DR<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Use <code>setpts<\/code> to slow video:<\/strong> Factor greater than 1 slows down.<\/li>\n\n\n\n<li><strong>Use <code>atempo<\/code> to keep audio in sync and preserve pitch.<\/strong> Chain atempo for big slowdowns.<\/li>\n\n\n\n<li><strong>Interpolate frames with <code>minterpolate<\/code>.<\/strong> This makes smoother motion at extreme slow speeds.<\/li>\n\n\n\n<li>Encode with H.264, CRF 18 to 23, and yuv420p for broad compatibility.<\/li>\n\n\n\n<li>Cloudinary can generate slowed versions on demand via URL transformations.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Learn More<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/cloudinary.com\/tools\/mkv-to-mp4\">Convert MKV to MP4<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cloudinary.com\/tools\/webm-to-mp4\">Convert WebM to MP4<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cloudinary.com\/guides\/video\/video-as-a-service\">Video as a Service<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cloudinary.com\/guides\/video\/video-engineering\">Video engineering insights<\/a><\/li>\n<\/ul>\n\n\n\n<p>Ready to streamline video processing and delivery in one place? <a href=\"https:\/\/cloudinary.com\/users\/register_free\">Create your free Cloudinary account<\/a> and start optimizing today.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Slowing a clip is a go-to technique for tutorials, product demos, gameplay, and cinematic b-roll. In community threads, a common theme emerges: people want clean slow motion with synced audio, minimal quality loss, and commands that are easy to reuse in scripts and CI pipelines. Question: Hi folks,I need a reliable, repeatable way to change [&hellip;]<\/p>\n","protected":false},"author":88,"featured_media":39218,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_cloudinary_featured_overwrite":false,"footnotes":""},"categories":[1],"tags":[423],"class_list":["post-39217","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-questions"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.6 (Yoast SEO v26.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>How to slow down video using FFmpeg<\/title>\n<meta name=\"description\" content=\"Slowing a clip is a go-to technique for tutorials, product demos, gameplay, and cinematic b-roll. In community threads, a common theme emerges: people\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to slow down video using FFmpeg\" \/>\n<meta property=\"og:description\" content=\"Slowing a clip is a go-to technique for tutorials, product demos, gameplay, and cinematic b-roll. In community threads, a common theme emerges: people\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/\" \/>\n<meta property=\"og:site_name\" content=\"Cloudinary Blog\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-08T17:30:29+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-11-08T17:30:30+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762622979\/how_to_slow_down_video_using_ffmpeg_featured_image\/how_to_slow_down_video_using_ffmpeg_featured_image.jpg?_i=AA\" \/>\n\t<meta property=\"og:image:width\" content=\"2000\" \/>\n\t<meta property=\"og:image:height\" content=\"1100\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"damjanantevski\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"NewsArticle\",\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/\"},\"author\":{\"name\":\"damjanantevski\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/43592e43c12520a1e867d456b1e8cf7e\"},\"headline\":\"How to slow down video using FFmpeg\",\"datePublished\":\"2025-11-08T17:30:29+00:00\",\"dateModified\":\"2025-11-08T17:30:30+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/\"},\"wordCount\":608,\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762622979\/how_to_slow_down_video_using_ffmpeg_featured_image\/how_to_slow_down_video_using_ffmpeg_featured_image.jpg?_i=AA\",\"keywords\":[\"Questions\"],\"inLanguage\":\"en-US\",\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/cloudinary.com\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/\",\"url\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/\",\"name\":\"How to slow down video using FFmpeg\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762622979\/how_to_slow_down_video_using_ffmpeg_featured_image\/how_to_slow_down_video_using_ffmpeg_featured_image.jpg?_i=AA\",\"datePublished\":\"2025-11-08T17:30:29+00:00\",\"dateModified\":\"2025-11-08T17:30:30+00:00\",\"description\":\"Slowing a clip is a go-to technique for tutorials, product demos, gameplay, and cinematic b-roll. In community threads, a common theme emerges: people\",\"breadcrumb\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/#primaryimage\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762622979\/how_to_slow_down_video_using_ffmpeg_featured_image\/how_to_slow_down_video_using_ffmpeg_featured_image.jpg?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762622979\/how_to_slow_down_video_using_ffmpeg_featured_image\/how_to_slow_down_video_using_ffmpeg_featured_image.jpg?_i=AA\",\"width\":2000,\"height\":1100},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cloudinary.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to slow down video using FFmpeg\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\",\"url\":\"https:\/\/cloudinary.com\/blog\/\",\"name\":\"Cloudinary Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/cloudinary.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\",\"name\":\"Cloudinary Blog\",\"url\":\"https:\/\/cloudinary.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA\",\"width\":312,\"height\":60,\"caption\":\"Cloudinary Blog\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/43592e43c12520a1e867d456b1e8cf7e\",\"name\":\"damjanantevski\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/3b40c995531fe4d510212a06c9d4fc666d2cb8efbfebc98a94191701accf4817?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/3b40c995531fe4d510212a06c9d4fc666d2cb8efbfebc98a94191701accf4817?s=96&d=mm&r=g\",\"caption\":\"damjanantevski\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to slow down video using FFmpeg","description":"Slowing a clip is a go-to technique for tutorials, product demos, gameplay, and cinematic b-roll. In community threads, a common theme emerges: people","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/","og_locale":"en_US","og_type":"article","og_title":"How to slow down video using FFmpeg","og_description":"Slowing a clip is a go-to technique for tutorials, product demos, gameplay, and cinematic b-roll. In community threads, a common theme emerges: people","og_url":"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/","og_site_name":"Cloudinary Blog","article_published_time":"2025-11-08T17:30:29+00:00","article_modified_time":"2025-11-08T17:30:30+00:00","og_image":[{"width":2000,"height":1100,"url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762622979\/how_to_slow_down_video_using_ffmpeg_featured_image\/how_to_slow_down_video_using_ffmpeg_featured_image.jpg?_i=AA","type":"image\/jpeg"}],"author":"damjanantevski","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/#article","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/"},"author":{"name":"damjanantevski","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/43592e43c12520a1e867d456b1e8cf7e"},"headline":"How to slow down video using FFmpeg","datePublished":"2025-11-08T17:30:29+00:00","dateModified":"2025-11-08T17:30:30+00:00","mainEntityOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/"},"wordCount":608,"publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762622979\/how_to_slow_down_video_using_ffmpeg_featured_image\/how_to_slow_down_video_using_ffmpeg_featured_image.jpg?_i=AA","keywords":["Questions"],"inLanguage":"en-US","copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/cloudinary.com\/#organization"}},{"@type":"WebPage","@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/","url":"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/","name":"How to slow down video using FFmpeg","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/#primaryimage"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762622979\/how_to_slow_down_video_using_ffmpeg_featured_image\/how_to_slow_down_video_using_ffmpeg_featured_image.jpg?_i=AA","datePublished":"2025-11-08T17:30:29+00:00","dateModified":"2025-11-08T17:30:30+00:00","description":"Slowing a clip is a go-to technique for tutorials, product demos, gameplay, and cinematic b-roll. In community threads, a common theme emerges: people","breadcrumb":{"@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/#primaryimage","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762622979\/how_to_slow_down_video_using_ffmpeg_featured_image\/how_to_slow_down_video_using_ffmpeg_featured_image.jpg?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762622979\/how_to_slow_down_video_using_ffmpeg_featured_image\/how_to_slow_down_video_using_ffmpeg_featured_image.jpg?_i=AA","width":2000,"height":1100},{"@type":"BreadcrumbList","@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-slow-down-video-using-ffmpeg\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cloudinary.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to slow down video using FFmpeg"}]},{"@type":"WebSite","@id":"https:\/\/cloudinary.com\/blog\/#website","url":"https:\/\/cloudinary.com\/blog\/","name":"Cloudinary Blog","description":"","publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cloudinary.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/cloudinary.com\/blog\/#organization","name":"Cloudinary Blog","url":"https:\/\/cloudinary.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA","width":312,"height":60,"caption":"Cloudinary Blog"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/43592e43c12520a1e867d456b1e8cf7e","name":"damjanantevski","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/3b40c995531fe4d510212a06c9d4fc666d2cb8efbfebc98a94191701accf4817?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3b40c995531fe4d510212a06c9d4fc666d2cb8efbfebc98a94191701accf4817?s=96&d=mm&r=g","caption":"damjanantevski"}}]}},"jetpack_featured_media_url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762622979\/how_to_slow_down_video_using_ffmpeg_featured_image\/how_to_slow_down_video_using_ffmpeg_featured_image.jpg?_i=AA","_links":{"self":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/39217","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/users\/88"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/comments?post=39217"}],"version-history":[{"count":1,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/39217\/revisions"}],"predecessor-version":[{"id":39219,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/39217\/revisions\/39219"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media\/39218"}],"wp:attachment":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media?parent=39217"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/categories?post=39217"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/tags?post=39217"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}