{"id":4875,"date":"2026-01-06T16:16:58","date_gmt":"2026-01-06T08:16:58","guid":{"rendered":"https:\/\/imastudio.com\/?p=4875"},"modified":"2026-01-06T16:17:31","modified_gmt":"2026-01-06T08:17:31","slug":"mp4-to-webp-macos-ffmpeg-script","status":"publish","type":"post","link":"https:\/\/imastudio.com\/zh_tw\/blog\/mp4-to-webp-macos-ffmpeg-script","title":{"rendered":"\u4e00\u9375\u5f0f macOS \u8173\u672c\uff0c\u53ef\u5c07 MP4 \u8f49\u63db\u70ba\u5faa\u74b0\u64ad\u653e\u7684 WebP GIF \u98a8\u683c\u52d5\u756b"},"content":{"rendered":"<p class=\"wp-block-paragraph\">\u5c0d\u65bc\u5ba2\u6236\u7aef\u548c\u61c9\u7528\u7a0b\u5f0f\u958b\u767c\u5de5\u4f5c\uff0c\u6211\u7d93\u5e38\u9700\u8981 <strong>\u5feb\u901f\u8996\u89ba\u5316\u5f71\u7247\u5167\u5bb9<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u7522\u54c1\u7d93\u7406\u9810\u89bd\u52d5\u756b<\/li>\n\n\n\n<li>\u6587\u4ef6\u6216\u7522\u54c1\u9700\u6c42\u6587\u4ef6\u7684\u6f14\u793a\u7247\u6bb5<\/li>\n\n\n\n<li>\u7528\u65bc\u793e\u7fa4\u5a92\u9ad4\u8cbc\u6587\u6216\u843d\u5730\u9801\u7684\u8f15\u91cf\u7d1a\u52d5\u756b<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u5728\u9019\u4e9b\u60c5\u6cc1\u4e0b\uff0c, <strong>\u5f9e MP4 \u6a94\u6848\u4e2d\u63d0\u53d6\u5e7e\u500b\u95dc\u9375\u5e40\uff0c\u4e26\u5c07\u5b83\u5011\u8f49\u63db\u70ba\u5faa\u74b0\u64ad\u653e\u7684 WebP \u52d5\u756b\u3002<\/strong> \u901a\u5e38\u5c31\u8db3\u5920\u4e86\u2014\u2014\u800c\u4e14\u6bd4\u4e0a\u50b3\u5b8c\u6574\u5f71\u7247\u8981\u8f15\u5f97\u591a\u3002.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"800\" height=\"533\" src=\"https:\/\/imastudio.com\/wp-content\/uploads\/2026\/01\/mac-os-video-to-webp-gif.jpg\" alt=\"\" class=\"wp-image-4877\" srcset=\"https:\/\/imastudio.com\/wp-content\/uploads\/2026\/01\/mac-os-video-to-webp-gif.jpg 800w, https:\/\/imastudio.com\/wp-content\/uploads\/2026\/01\/mac-os-video-to-webp-gif-300x200.jpg 300w, https:\/\/imastudio.com\/wp-content\/uploads\/2026\/01\/mac-os-video-to-webp-gif-768x512.jpg 768w, https:\/\/imastudio.com\/wp-content\/uploads\/2026\/01\/mac-os-video-to-webp-gif-18x12.jpg 18w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u672c\u6587\u5206\u4eab\u4e86 <strong>macOS \u7684\u4e00\u9375\u5f0f shell \u8173\u672c<\/strong> \u90a3\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u5f9e MP4 \u6a94\u6848\u4e2d\u63d0\u53d6 6 \u5230 12 \u500b\u5747\u52fb\u5206\u4f48\u7684\u5e40\u3002<\/li>\n\n\n\n<li>\u5c07\u5b83\u5011\u8abf\u6574\u70ba 720 \u50cf\u7d20\u5bec<\/li>\n\n\n\n<li>\u5efa\u7acb\u5faa\u74b0\u64ad\u653e\u7684 WebP \u52d5\u756b<\/li>\n\n\n\n<li>\u4e26\u81ea\u52d5\u5b89\u88dd <code>ffmpeg<\/code> \u5982\u679c\u7f3a\u5931<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u6240\u6709\u9019\u4e9b\u64cd\u4f5c\u90fd\u900f\u904e\u7d42\u7aef\u6a5f\u4e2d\u7684\u4e00\u689d\u547d\u4ee4\u5b8c\u6210\u3002.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u8173\u672c\u7684\u529f\u80fd<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u5728 macOS \u4e0a\uff0c\u8173\u672c <code>extract_even_frames_webp.sh<\/code> \u63d0\u4f9b\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u81ea\u52d5\u7684 <code>ffmpeg<\/code> \u6aa2\u6e2c\u548c\u5b89\u88dd<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u6aa2\u67e5\u662f\u5426 <code>ffmpeg<\/code> \u53ef\u7528<\/li>\n\n\n\n<li>\u5426\u5247\uff0c\u5148\u5b89\u88dd Homebrew\uff08\u5982\u679c\u9700\u8981\uff09\uff0c\u7136\u5f8c\u518d\u5b89\u88dd <code>ffmpeg<\/code><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u751a\u81f3\u5e40\u63d0\u53d6<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u8a08\u7b97\u5f71\u7247\u6642\u9577<\/li>\n\n\n\n<li>\u5747\u52fb\u53d6\u6a23 <strong>6-12\u5e40<\/strong> \u6574\u500b\u5f71\u7247\u7247\u6bb5<\/li>\n\n\n\n<li>\u9810\u8a2d\u503c\u70ba 6 \u5e40\uff0c\u4f46\u60a8\u53ef\u4ee5\u81ea\u8a02\u5e40\u6578\u3002<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>WebP\u52d5\u756b\u751f\u6210<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u5c07\u63d0\u53d6\u7684PNG\u5e40\u5408\u4f75\u6210\u4e00\u500b <strong>\u5faa\u74b0\u64ad\u653e\u7684 WebP<\/strong><\/li>\n\n\n\n<li>\u8f38\u51fa\u5bec\u5ea6\u70ba <strong>720\u50cf\u7d20<\/strong> \u9810\u8a2d\u60c5\u6cc1\u4e0b\uff08\u9ad8\u5ea6\u6309\u6bd4\u4f8b\u7e2e\u653e\uff09<\/li>\n\n\n\n<li>\u54c1\u8cea\u53ef\u900f\u904e\u4ee5\u4e0b\u65b9\u5f0f\u8abf\u7bc0 <code>-q:v<\/code><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u81ea\u52d5\u6e05\u7406<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u5c07\u4e2d\u9593\u5e40\u5132\u5b58\u5728\u66ab\u5b58\u76ee\u9304\u4e2d<\/li>\n\n\n\n<li>WebP \u7522\u751f\u5b8c\u6210\u5f8c\uff0c\u522a\u9664\u66ab\u5b58\u76ee\u9304\u3002<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u9069\u7528\u65bc\u77ed\u8996\u983b\u548c\u9577\u8996\u983b\u3002<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u5982\u679c\u5f71\u7247\u5f88\u77ed\uff0c\u5e40\u6578\u6703\u81ea\u52d5\u6e1b\u5c11\u3002<\/li>\n\n\n\n<li>\u5c0d\u65bc\u8f03\u9577\u7684\u8996\u983b\uff0c\u5e40\u5728\u6574\u500b\u6642\u9577\u5167\u59cb\u7d42\u5747\u52fb\u5206\u4f48\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u5176\u5e95\u5c64\u5de5\u4f5c\u539f\u7406<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u4ee5\u4e0b\u662f\u8a72\u8173\u672c\u7684\u57fa\u672c\u908f\u8f2f\u3002.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2.1 \u6aa2\u67e5\u4f9d\u8cf4\u95dc\u4fc2<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u8173\u672c\u9996\u5148\u6aa2\u67e5\u662f\u5426 <code>ffmpeg<\/code> \u5df2\u5b89\u88dd\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u7528\u9014 <code>\u6307\u4ee4 -v ffmpeg<\/code><\/li>\n\n\n\n<li>\u5982\u679c\u672a\u627e\u5230\uff0c\u5247\u6aa2\u67e5 <code>\u91c0\u9020<\/code>\n<ul class=\"wp-block-list\">\n<li>\u5982\u679c\u7f3a\u5c11 Homebrew\uff0c\u5b83\u6703\u5b89\u88dd Homebrew\u3002<\/li>\n\n\n\n<li>\u7136\u5f8c\u4f7f\u7528 <code>brew install ffmpeg<\/code> \u5b89\u88dd <code>ffmpeg<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">2.2 \u7372\u53d6\u5f71\u7247\u6642\u9577<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u4f7f\u7528 <code>ffprobe<\/code>, \u8173\u672c\u8b80\u53d6 <strong>\u5f71\u7247\u7e3d\u6642\u9577\uff08\u79d2\uff09<\/strong>.<br>\u6839\u64da\u6b64\u6578\u64da\u548c\u6240\u9700\u7684\u5e40\u6578\uff0c\u8a08\u7b97\u5e40\u4e4b\u9593\u7684\u6642\u9593\u9593\u9694\u3002.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2.3 \u5747\u52fb\u63a1\u6a23\u5e40<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u5c0d\u65bc\u6bcf\u500b\u5e40\u7d22\u5f15\uff0c\u5b83\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u8a08\u7b97\u6642\u9593\u6233 = <code>\u7d22\u5f15 \u00d7 \u5340\u9593<\/code><\/li>\n\n\n\n<li>\u7528\u9014 <code>ffmpeg -ss<\/code> \u8df3\u5230\u90a3\u500b\u6642\u9593\u4f4d\u7f6e<\/li>\n\n\n\n<li>\u63d0\u53d6\u4e00\u5e40<\/li>\n\n\n\n<li>\u7528 <code>\u6bd4\u4f8b\u5c3a=720:-1<\/code> \u6240\u4ee5\u5bec\u5ea6\u662f 720 \u50cf\u7d20\uff0c\u9ad8\u5ea6\u662f\u6210\u6bd4\u4f8b\u7684\u3002<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">2.4 \u5efa\u69cb WebP \u52d5\u756b<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u6240\u6709\u8a0a\u6846\u90fd\u5132\u5b58\u70ba PNG \u683c\u5f0f\u5f8c\uff0c\u8173\u672c\u6703\u8abf\u7528 <code>ffmpeg<\/code> \u518d\u6b21\u81f4\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u8acb\u6309\u9806\u5e8f\u95b1\u8b80\uff08<code>d.png<\/code>)<\/li>\n\n\n\n<li>\u5c07\u5b83\u5011\u7de8\u78bc\u70ba\u52d5\u756b WebP \u683c\u5f0f<\/li>\n\n\n\n<li>\u653e <code>-\u5faa\u74b0 0<\/code> \u6240\u4ee5\u52d5\u756b\u6703\u7121\u9650\u5faa\u74b0\u64ad\u653e\u3002<\/li>\n\n\n\n<li>\u900f\u904e\u63a7\u88fd\u54c1\u8cea <code>-q:v 70<\/code> \uff08\u6578\u503c\u8d8a\u4f4e\uff0c\u6587\u4ef6\u8d8a\u5927\uff0c\u756b\u8cea\u8d8a\u9ad8\uff09<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">2.5 \u6e05\u7406<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u6240\u6709\u4e2d\u9593 PNG \u6a94\u6848\u90fd\u5132\u5b58\u5728\u7531\u2026\u5efa\u7acb\u7684\u66ab\u5b58\u76ee\u9304\u4e2d\u3002 <code>mktemp -d<\/code>.<br>WebP \u7522\u751f\u5f8c\uff0c\u8a72\u76ee\u9304\u5c07\u6703\u88ab\u522a\u9664\u3002 <code>rm -rf<\/code>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u5b8c\u6574\u7684 shell \u8173\u672c\uff1aextract_even_frames_webp.sh<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u60a8\u53ef\u4ee5\u5c07\u4ee5\u4e0b\u8173\u672c\u5132\u5b58\u70ba <code>extract_even_frames_webp.sh<\/code> \u5728\u4f60\u7684Mac\u96fb\u8166\u4e0a\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#!\/bin\/bash # \u7528\u6cd5\uff1a\u3002\u6700\u5927\u5e40\u6578\u9650\u5236\u70ba 12 if [ &quot;$FRAMES&quot; -gt 12 ]; then FRAMES=12 fi if [ -z &quot;$INPUT&quot; ] || [ -z &quot;$OUTPUT&quot; ]; then echo &quot;\u7528\u6cd5\uff1a$0 input.mp4 outputTP webpfram15p 1\ufe0f\u20e3 \u6aa2\u67e5 ffmpeg # --------------------------------- if !\u5982\u679c `command -v ffmpeg &gt;\/dev\/null 2&gt;&amp;1;` \u672a\u627e\u5230\uff0c\u5247\u8f38\u51fa\"\u26a0\ufe0f ffmpeg \u672a\u627e\u5230\uff0c\u6b63\u5728\u5b89\u88dd...\"\uff1b\u5982\u679c `command -v brew &gt;\/dev\/null 2 \u672a\u627e\u5230\uff0c\u6b63\u5728\u5b89\u88dd...\"\uff1b\u5982\u679c `command -v brew &gt;\/dev\/null 20&amp;1; Homebrew...\u300d\uff1b\u7136\u5f8c\u57f7\u884c `\/bin\/bash -c &quot;$(curl -fsSL https:\/\/raw.githubusercontent.com\/Homebrew\/install\/HEAD\/install.sh)&quot;`\uff1b\u5426\u5247\u8f38\u51fa\u300c\u2705 Homebrew \u5df2\u5b89\u88dd\u300d\uff1b\u5426\u5247\u8f38\u51fa\u300c\u2705 Homebrew \u5df2\u5b89\u88dd\u300d\u3002\u6700\u5f8c\u57f7\u884c `brew update` \u548c `brew install ffmpeg`\u3002\u5982\u679c `command -v ffmpeg &gt;\/dev\/null 2&gt;&amp;1;` \u627e\u4e0d\u5230\uff0c\u5247\u8f38\u51fa\u300c\u274c ffmpeg \u5b89\u88dd\u5931\u6557\uff0c\u8acb\u624b\u52d5\u6aa2\u67e5\u300d\uff1b\u6700\u5f8c\u9000\u51fa\u4e26\u50b3\u56de 1\u3002\u6700\u5f8c\u8f38\u51fa\u300c\ud83c\udf89 ffmpeg \u5b89\u88dd\u6210\u529f\uff01\u300d\u3002\u5426\u5247 echo &quot;\u2705 ffmpeg \u5df2\u5b89\u88dd&quot; fi # --------------------------------- # 2\ufe0f\u20e3 \u53d6\u5f97\u8996\u8a0a\u6642\u9577 # --------------------------------- DURATION=$(ffprobe -v error -show_entries format=duration -of csv=p=0 &quot;$Ierror -show_entries format=duration -of csv=p=0 &quot;$Ierror -DPUR] -n [UTS]; &quot;\u274c \u53d6\u5f97\u8996\u8a0a\u6642\u9577\u5931\u6557&quot; exit 1 fi DURATION=${DURATION%.*} # \u6574\u6578\u79d2 # \u5982\u679c\u8996\u8a0a\u6642\u9577\u77ed\u65bc\u8acb\u6c42\u7684\u5e40\u6578\uff0c\u5247\u5c07\u5e40\u6578\u8207\u6642\u9577\u5339\u914d if [ &quot;$DURATION&quot; -lt &quot;$FI +ES;\u8996\u8a0a\u9577\u5ea6\uff1a${DURATION}\u79d2\uff0c\u5747\u52fb\u63d0\u53d6 $FRAMES \u5e40&quot; # --------------------------------- # 3\ufe0f\u20e3 \u5efa\u7acb\u81e8\u6642\u76ee\u9304 # --------------------------------- TMPDIR=$(mktemp -d) # ----------------------------------------------------------------- TMT 4 114T(mktemp -d) # ------------------------------------------------- # 4 123(121185 &quot;scale=6; $DURATION\/$FRAMES&quot; | bc) echo &quot;\u23f1 \u5e40\u9593\u9694\uff1a$INTERVAL \u79d2&quot; # --------------------------------- # 5\ufe0f\u20e3 \u63d0\u53d6\u5e40 # --------------------------------- for i in $(seseq 0 1 4TTI2(P42)( &quot;$i * $INTERVAL&quot; | bc) printf -v FILENAME &quot;d.png&quot; $((i+1)) ffmpeg -ss &quot;$TIME&quot; -i &quot;$INPUT&quot; -frames:v 1 -ss &quot;$TIME&quot; -i &quot;$INPUT&quot; -frames:v 1 -ss &quot;$TIME&quot; -i &quot;$INPUT&quot; -frames:v 1 -ss &quot;$TIME&quot; -i &quot;$INPUT&quot; -frames:v 1 -ss &quot;$TIME&quot; -i &quot;$INPUT&quot; -frames:v 1 - -ss &quot;$TIME&quot; -i &quot;$INPUT -hide_banner -loglevel error done # --------------------------------- # 6\ufe0f\u20e3 \u7522\u751f\u52d5\u756b WebP # --------------------------------- ffmpeg -y -i &quot;$TMPDIR\/d.png&quot; -vcodec libwebp -lossless 0 -d.png&quot; -vcodec libwebp -lossless70 -:P. -hide_banner -loglevel error # --------------------------------- # 7\ufe0f\u20e3 \u6e05\u7406 # --------------------------------- rm -rf &quot;$TMPDIR&quot; echo &quot;\ud83c\udf89 \u5b8c\u6210\uff01\u7522\u751f\u7684\u6a94\u6848\uff1a$OUTPUT&quot;\"\n<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u5982\u4f55\u5728 macOS \u4e0a\u4f7f\u7528\u8a72\u8173\u672c<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u5132\u5b58\u8173\u672c<\/strong> \u5c07\u4ee5\u4e0a\u5167\u5bb9\u53e6\u5b58\u70ba <code>extract_even_frames_webp.sh<\/code>, \u4f8b\u5982\uff0c\u5728\u60a8\u7684\u4e3b\u76ee\u9304\u4e2d\u3002.<\/li>\n\n\n\n<li><strong>\u8ce6\u4e88\u5b83\u57f7\u884c\u6b0a\u9650<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>chmod +x extract_even_frames_webp.sh\n<\/code><\/pre>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li><strong>\u57fa\u672c\u7528\u6cd5<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/extract_even_frames_webp.sh input.mp4 output.webp\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u9019\u5c07\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u6aa2\u67e5\u6216\u5b89\u88dd <code>ffmpeg<\/code><\/li>\n\n\n\n<li>\u64f7\u53d6 6 \u500b\u7b49\u9593\u8ddd\u7684\u5e40<\/li>\n\n\n\n<li>\u7522\u751f <code>\u8f38\u51fa.webp<\/code> \u5bec\u5ea6\u70ba 720 \u50cf\u7d20<\/li>\n<\/ul>\n\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li><strong>\u8acb\u6307\u5b9a\u5e40\u6578\uff086-12\u5e40\uff09\u3002<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/extract_even_frames_webp.sh input.mp4 output.webp 8\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u9019\u5c07\u63d0\u53d6 8 \u5e40\u800c\u4e0d\u662f\u9810\u8a2d\u7684 6 \u5e40\u3002.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">5. \u9019\u7a2e\u5de5\u4f5c\u6d41\u7a0b\u7684\u512a\u52e2<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u8207\u624b\u52d5\u958b\u555f\u5f71\u7247\u7de8\u8f2f\u5668\u6216\u9ede\u64ca\u5716\u5f62\u4ecb\u9762\u8f49\u63db\u5668\u76f8\u6bd4\uff0c\u6b64\u8173\u672c\u5177\u6709\u4ee5\u4e0b\u5e7e\u500b\u512a\u9ede\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u96f6\u624b\u52d5\u8a2d\u5b9a<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u81ea\u52d5\u5b89\u88dd <code>ffmpeg<\/code> \uff08\u5fc5\u8981\u6642\u53ef\u4f7f\u7528\u81ea\u88fd\u8edf\u9ad4\uff09<\/li>\n\n\n\n<li>\u7121\u9700\u641c\u5c0b\u5b89\u88dd\u7a0b\u5f0f\u6216\u8a18\u4f4f\u547d\u4ee4<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u667a\u6167\u5e40\u63a1\u6a23<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u5c0d\u65bc\u77ed\u8996\u983b\u7247\u6bb5\uff0c\u5b83\u6703\u81ea\u52d5\u6e1b\u5c11\u5e40\u6578\u3002<\/li>\n\n\n\n<li>\u5c0d\u65bc\u8f03\u9577\u7684\u8996\u983b\uff0c\u5e40\u4e4b\u9593\u7684\u9593\u9694\u59cb\u7d42\u5747\u52fb\u5206\u4f48\u5728\u6574\u500b\u6642\u9577\u5167\u3002<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u54c1\u8cea\u548c\u5c3a\u5bf8\u63a7\u5236<\/strong>\n<ul class=\"wp-block-list\">\n<li><code>-q:v<\/code> \u8b93\u60a8\u8abf\u6574 WebP \u54c1\u8cea\u8207\u6a94\u6848\u5927\u5c0f\u4e4b\u9593\u7684\u95dc\u4fc2<\/li>\n\n\n\n<li><code>\u6bd4\u4f8b\u5c3a=720:-1<\/code> \u63d0\u4f9b\u9069\u5408\u7db2\u9801\u7684\u5bec\u5ea6\u548c\u4e00\u81f4\u7684\u5bec\u9ad8\u6bd4<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u9810\u8a2d\u5faa\u74b0<\/strong>\n<ul class=\"wp-block-list\">\n<li><code>-\u5faa\u74b0 0<\/code> \u8b93 WebP \u52d5\u756b\u7121\u9650\u5faa\u74b0<\/li>\n\n\n\n<li>\u975e\u5e38\u9069\u5408\u7528\u65bc\u9810\u89bd\u3001\u6f14\u793a\u4ee5\u53ca\u6587\u4ef6\u6216\u7db2\u7ad9\u4e0a\u7684\u7d30\u5fae\u52d5\u614b\u6548\u679c\u3002<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u6e05\u7406\u78c1\u789f\u4f7f\u7528\u60c5\u6cc1<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u81e8\u6642 PNG \u5e40\u5132\u5b58\u5728\u81e8\u6642\u8cc7\u6599\u593e\u4e2d\uff0c\u4e4b\u5f8c\u6703\u88ab\u522a\u9664\u3002<\/li>\n\n\n\n<li>\u4e0d\u6703\u51fa\u73fe\u6587\u4ef6\u5806\u7a4d\u7684\u60c5\u6cc1<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">6. \u7bc4\u4f8b\uff1a\u5c07 20 \u79d2\u7684 MP4 \u5f71\u7247\u8f49\u63db\u70ba WebP \u9810\u89bd<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u60f3\u50cf\u4f60\u6709\u4e00\u500b <strong>20\u79d2\u529f\u80fd\u793a\u7bc4\u5f71\u7247<\/strong> \u7136\u5f8c\u8dd1\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/extract_even_frames_webp.sh demo.mp4 demo-preview.webp 6\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u8173\u672c\u5c07\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u8a08\u7b97\u4e00\u500b\u5927\u7d04\u70ba \u7684\u5340\u9593\u3002 <strong>3.33\u79d2<\/strong><\/li>\n\n\n\n<li>\u63d0\u53d6 6 \u5e40 <code>0\u79d2\u30013.33\u79d2\u30016.66\u79d2\u300110\u79d2\u300113.33\u79d2\u300116.66\u79d2<\/code><\/li>\n\n\n\n<li>\u5c07\u5b83\u5011\u8abf\u6574\u70ba 720 \u50cf\u7d20\u5bec<\/li>\n\n\n\n<li>\u5efa\u9020\u4e00\u500b <strong>\u5faa\u74b0\u64ad\u653e\u7684 WebP<\/strong> \u5361\u901a<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u7136\u5f8c\u60a8\u53ef\u4ee5\u5c07\u6b64 WebP \u6a94\u6848\u62d6\u653e\u5230\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u7522\u54c1\u6587\u6a94\u6216\u98db\u66f8\/Notion\u6587\u6a94\u4f5c\u70ba <strong>\u8f15\u91cf\u7d1a\u9810\u89bd<\/strong><\/li>\n\n\n\n<li>\u793e\u7fa4\u8cbc\u6587\u6216\u843d\u5730\u9801\u4f5c\u70ba <strong>\u81ea\u52d5\u64ad\u653e\u52d5\u614b\u7e2e\u5716<\/strong><\/li>\n\n\n\n<li>PPT\u7c21\u5831\u548c\u5167\u90e8\u6f14\u793a\uff0c\u5728\u9019\u7a2e\u60c5\u6cc1\u4e0b\uff0c\u88fd\u4f5c\u5b8c\u6574\u5f71\u7247\u5c31\u986f\u5f97\u591a\u9918\u4e86\u3002<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">7. \u64f4\u5c55\u601d\u8def<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u9019\u500b\u8173\u672c\u53ea\u662f\u4e00\u500b\u8d77\u9ede\u2014\u2014\u4f60\u53ef\u4ee5\u8f15\u9b06\u5730\u6839\u64da\u81ea\u5df1\u7684\u5de5\u4f5c\u6d41\u7a0b\u9032\u884c\u8abf\u6574\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u52d5\u614b\u5e40\u8a08\u6578<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u6839\u64da\u5f71\u7247\u9577\u5ea6\u81ea\u52d5\u9078\u64c7 6 \u5230 12 \u5e40\u3002<\/li>\n\n\n\n<li>\u4f8b\u5982\uff0c\u8f03\u9577\u7684\u5f71\u7247\u7247\u6bb5\u9700\u8981\u66f4\u591a\u756b\u9762\u4f86\u986f\u793a\u66f4\u591a\u72c0\u614b\u3002<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u5ba2\u88fd\u5c3a\u5bf8<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u6539\u8b8a <code>\u6bd4\u4f8b\u5c3a=720:-1<\/code> \u5bec\u5ea6\u53ef\u6839\u64da\u60a8\u7684\u7522\u54c1\u5718\u968a\u504f\u597d\u800c\u5b9a\u3002<\/li>\n\n\n\n<li>\u6216\u5c07\u5bec\u5ea6\u7576\u4f5c\u53c3\u6578\u516c\u958b\uff1a <code>.\/script.sh in.mp4 out.webp 8 1080<\/code><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u6279\u91cf\u8655\u7406<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u5c07\u6b64\u8173\u672c\u5c01\u88dd\u5728\u53e6\u4e00\u500b\u5faa\u74b0\u4e2d\u4ee5\u8655\u7406\u6240\u6709\u5167\u5bb9 <code>.mp4<\/code> \u8cc7\u6599\u593e\u4e2d\u7684\u6587\u4ef6<\/li>\n\n\n\n<li>\u7576\u60a8\u4e00\u6b21\u532f\u51fa\u4e00\u6279\u529f\u80fd\u6f14\u793a\u6642\uff0c\u6b64\u529f\u80fd\u975e\u5e38\u6709\u7528\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u4f5c\u8005\u8a3b<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u9019\u6bb5\u8173\u672c\u6e90\u81ea\u65bc\u6211\u5be6\u969b\u7684 macOS \u958b\u767c\u5de5\u4f5c\u6d41\u7a0b\uff0c\u7528\u65bc\u5c07 MP4 \u5f71\u7247\u8f49\u63db\u70ba\u8f15\u91cf\u7d1a\u7684 WebP \u9810\u89bd\u3002\u6211\u5728\u65e5\u5e38\u5ba2\u6236\u958b\u767c\u4e2d\u4f7f\u7528\u5b83\u4f86\u7522\u751f\u6587\u4ef6\u548c\u793e\u4ea4\u5a92\u9ad4\u8cbc\u6587\u7684\u6f14\u793a\u52d5\u756b\u3002 GPT \u50c5\u7528\u65bc\u8f14\u52a9\u7ffb\u8b6f\u3001\u7d50\u69cb\u5316\u548c\u6f64\u98fe\u672c\u6587\u7684\u82f1\u6587\u7248\u672c\u2014\u2014\u8173\u672c\u908f\u8f2f\u3001\u5be6\u4f5c\u7d30\u7bc0\u548c\u4f7f\u7528\u6a21\u5f0f\u5747\u4f86\u81ea\u6211\u81ea\u5df1\u7684\u5c08\u6848\u7d93\u9a57\u3002.<\/p>","protected":false},"excerpt":{"rendered":"<p>\u5728\u5ba2\u6236\u548c\u61c9\u7528\u7a0b\u5f0f\u958b\u767c\u5de5\u4f5c\u4e2d\uff0c\u6211\u7d93\u5e38\u9700\u8981\u5feb\u901f\u8996\u89ba\u5316\u5f71\u7247\u5167\u5bb9\uff1a\u5728\u9019\u7a2e\u60c5\u6cc1\u4e0b\uff0c\u5f9e MP4 \u6a94\u6848\u4e2d\u63d0\u53d6\u5e7e\u500b\u95dc\u9375\u5f71\u683c\u4e26\u5c07\u5176\u8f49\u63db\u70ba\u5faa\u74b0\u7684 WebP \u52d5\u756b\u901a\u5e38\u5c31\u8db3\u5920\u4e86\u2014\u2014\u800c\u4e14\u6bd4\u4e0a\u50b3\u5b8c\u6574\u5f71\u7247\u8981\u8f15\u91cf\u5f97\u591a\u3002\u672c\u6587\u5206\u4eab\u4e86\u4e00\u500b\u9069\u7528\u65bc macOS \u7684\u4e00\u9375\u5f0f shell \u8173\u672c\uff0c\u5b83\u53ef\u4ee5\uff1a\u6240\u6709 [\u2026]<\/p>","protected":false},"author":8,"featured_media":4877,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"rank_math_title":"MP4 to WebP on macOS: One-Click ffmpeg Script Guide","rank_math_description":"Use a one-click macOS shell script with ffmpeg to convert MP4 to looping WebP animations, with auto-install, even frame extraction and clean temp files.","footnotes":""},"categories":[35],"tags":[],"class_list":["post-4875","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-knowledge-hub"],"_links":{"self":[{"href":"https:\/\/imastudio.com\/zh_tw\/wp-json\/wp\/v2\/posts\/4875","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/imastudio.com\/zh_tw\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/imastudio.com\/zh_tw\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/imastudio.com\/zh_tw\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/imastudio.com\/zh_tw\/wp-json\/wp\/v2\/comments?post=4875"}],"version-history":[{"count":2,"href":"https:\/\/imastudio.com\/zh_tw\/wp-json\/wp\/v2\/posts\/4875\/revisions"}],"predecessor-version":[{"id":4878,"href":"https:\/\/imastudio.com\/zh_tw\/wp-json\/wp\/v2\/posts\/4875\/revisions\/4878"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/imastudio.com\/zh_tw\/wp-json\/wp\/v2\/media\/4877"}],"wp:attachment":[{"href":"https:\/\/imastudio.com\/zh_tw\/wp-json\/wp\/v2\/media?parent=4875"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/imastudio.com\/zh_tw\/wp-json\/wp\/v2\/categories?post=4875"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/imastudio.com\/zh_tw\/wp-json\/wp\/v2\/tags?post=4875"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}