Linux/Windows 上採用 ffmpeg 批量將 apng 轉換 gif

AI 近期的發展真的很值得令人讚揚,其中任何問題都能盡可能的找到解決方法,例如動態貼圖能不能轉檔成為 gif 就如同下面試作可達成

Chrome 瀏覽器安裝 https://lsp.brownsugar.work/

打包好的 zip 解壓縮後,在 Animation 的動態 png 檔案透過 ffmpeg 轉檔為 gif

(下列指令則為在 Linux 指令終端中可執行轉檔指令後將原無用png檔案直接刪除)

 for f in *.png; do     ffmpeg -i "$f" -filter_complex "[0:v] split [a][b]; [a] palettegen=reserve_transparent=on [p]; [b][p] paletteuse" "${f%.*}.gif" && rm "$f"; done


如果要在 Windows 上面執行的話則需要 bat 達到相同功能
在 bat 檔案輸入

@echo off
setlocal enabledelayedexpansion

:: 檢查資料夾內是否有 png 檔案
if not exist "*.png" (
    echo 找不到任何 .png 檔案!
    pause
    exit
)

for %%f in (*.png) do (
    echo 正在處理透明動畫: %%f
    
    :: 執行 FFmpeg 轉換 (保留透明調色盤)
    ffmpeg -i "%%f" -filter_complex "[0:v] split [a][b]; [a] palettegen=reserve_transparent=on [p]; [b][p] paletteuse" "%%~nf.gif" -y
    
    :: 檢查是否轉換成功
    if %errorlevel% equ 0 (
        echo [成功] %%~nf.gif 已完成,刪除原始檔。
        del "%%f"
    ) else (
        echo [錯誤] %%f 轉換失敗,保留原始檔。
    )
)

echo.
echo 所有工作已完成!
pause

這是一則筆記也希望能幫助到有需要的人。

留言

這個網誌中的熱門文章

debloat win10 超終極清除內建無用功能程式提升電腦效能

2025台灣北部 室內暨私人排球場臨打與教練課報名相關網址 (台北市、新北市、桃園市、新竹縣市)