發表文章

目前顯示的是 8月, 2026的文章

FFmpeg 影片旋轉與 Metadata 旋轉標記(Side Data)處理解析

圖片
在處理手機或相機拍攝的影片時,常會遇到「畫面明明是直的,但處理後方向卻亂掉」的狀況。這篇文章記錄了我理解 FFmpeg 畫面旋轉與消除 Metadata 轉向標記的經驗。 為什麼畫面會「轉兩次」? 影片的方向控制其實分為兩個層面: 原始像素資料 :畫面實際儲存的長寬與像素陣列。 Metadata 轉向標記(Displaymatrix Side Data) :播放器讀取時,根據這項標記自動旋轉畫面(例如 -90.00 degrees )。 FFmpeg 預設在處理影片時,會 自動套用 Metadata 的旋轉標記。如果你又手動加上 -vf transpose ,就會導致畫面被「旋轉了兩次」。

[AI協作] 使用 Metadata 資料重新命名 MP4 影片檔案:完整腳本與踩坑紀錄

圖片
整理歷年影片備份時,發現檔名存在各種格式不一致的問題:有些檔名帶有 6 位數秒級時間,有些帶有 9 位數毫秒級時間,有些說明文字直接黏在數字後面;更棘手的是,從相機或手機匯出的影片,檔名上的時間與 MP4 內部的 Metadata( creation_time )存在 UTC 時區差。 為了批量修正這些影片,我決定寫一個 Bash 腳本來自動化處理。這篇文章紀錄了開發過程中遇到的幾個 Shell 特性陷阱,以及如何透過與AI協作快速疊代出穩定的解決方案。

解決Ubuntu解壓縮 tar 檔中文檔名亂碼問題(20260818更新)

在 Linux 系統中(如 Ubuntu 預設使用 zh_TW.UTF-8 ),如果收到來自 Windows 或舊系統打包的 .tar 檔,常因為編碼不一致(例如舊系統使用 Big5)而導致解開後檔名變成一堆亂碼。 本文分享如何先 快速檢測檔案編碼 ,並精準將檔名還原為正常中文。 快速預覽與檢測編碼(推薦方法)

[Ubuntu 24.04] HEIC 圖檔轉 JPG/PNG 指南:libheif 解碼外掛安裝與 ImageMagick

 從 iPhone 或 Samsung 手機 傳到電腦上的 .heic 照片,在 Linux (Ubuntu 24.04) 上預設無法直接開啟。本文紀錄如何安裝 libheif 的 HEVC 外掛套件來解決「Unsupported codec」問題,以及如何用 ImageMagick 快速批次轉檔。 方法一:使用 libheif(需補齊 Plugin 外掛) 直接安裝 libheif-examples 時,轉檔可能會遇到以下報錯: Could not decode image: 0: Unsupported feature: Unsupported codec 這是因為 HEIC 底層使用了 HEVC (H.265) 編碼,預設套件並未包含解碼外掛。只需補上 libde265 與 ffmpegdec 外掛套件即可解決: 1. 安裝工具與解碼外掛 sudo apt update sudo apt install libheif-examples libheif-plugin-libde265 libheif-plugin-ffmpegdec 2. 轉檔指令 # 轉成 PNG heif-convert input.heic output.png # 轉成 JPG heif-convert input.heic output.jpg $ heif-convert -v 1.17.6 libheif: 1.17.6 plugin path: /usr/lib/x86_64-linux-gnu/libheif/plugins 方法二:使用 ImageMagick(開箱即用/支援批次) 如果你想要更簡潔的指令,或是需要處理大量圖片, ImageMagick 在 Ubuntu 24.04 上已內建完整支援。 1. 安裝 ImageMagick sudo apt install imagemagick 2. 單檔轉檔 convert input.heic -quality 95 output.jpg 3. 資料夾全套批次轉換 for f in *.heic; do convert "$f" -quality 95 "${f%.heic}.jpg"; done $ convert -version Version: ImageMa...