影格率轉換器
使用 ffmpeg 指令在幀速率之間進行轉換
如何使用影格率轉換器
- 1輸入源幀率。
- 2輸入目標幀率。
- 3讀取速度變化以及是否需要丟幀或混合幀。
幀率轉換
播放速度 = 目標fps / 源fps;新時長 = 時長 / 播放速度不改速度而改幀率會改變播放快慢;30→24fps 會使動作慢 20%。
24→60fps 需要幀插值(如運動平滑)或重複幀;簡單重取樣會卡頓。
幀率(FPS)是每秒顯示的畫面數,單幀時長 = 1000 ÷ FPS 毫秒。60 fps 每幀 16.7 ms,**這意味著你的程式碼必須在 16.7 ms 內完成一幀的渲染**,否則就會掉幀——這是遊戲和動畫效能最佳化的核心約束。120 fps 時預算只剩 8.3 ms,對效能要求翻倍。
**幀率轉換是影片處理的常見坑**:24 fps 電影轉 30 fps 需要「3:2 pulldown」(把 4 幀塞進 5 幀,導致不規則的運動抖動,即 judder);60 fps 轉 30 fps 是簡單丟幀(運動變頓挫);30 fps 轉 60 fps 則需要插幀(光流法或 AI 補幀,可能產生果凍效應)。**最佳實踐是:拍攝幀率 = 剪輯序列幀率 = 輸出幀率**,全程一致,避免任何轉換。慢動作的唯一正確做法是用高幀率拍攝(如 120 fps)再在 24/30 fps 時間線上播放。
| 幀率 | 單幀時長 | 適用場景 | 觀感 |
|---|---|---|---|
| 24 fps | 41.7 ms | 電影 | 有電影感,運動略糊 |
| 25 fps | 40 ms | PAL 制電視(歐洲/中國) | 標準電視 |
| 30 fps | 33.3 ms | NTSC 制電視、網路影片 | 流暢 |
| 50 fps | 20 ms | PAL 高畫質電視 | 很流暢 |
| 60 fps | 16.7 ms | 遊戲、體育、高幀率影片 | 非常流暢 |
| 120 fps | 8.3 ms | 高刷屏、慢動作素材 | 極致順滑 |
| 240 fps | 4.2 ms | 超慢動作 | 慢放 10 倍仍清晰 |
常見幀率與適用場景
常見問題
為什麼 24→30 看起來怪?
無正確 pulldown 或插值時,24 無法整除 30,產生抖動。
60fps 總更順嗎?
運動更順,但影迷不喜歡電影內容的“肥皂劇效應”。
什麼是 3:2 pulldown?
交替重複場,把 24fps 電影對映到 60Hz 隔行顯示的模式。
為什麼電影用 24 fps 看起來不卡?
兩個原因:① **運動模糊**——電影快門角通常是 180 度(曝光時間是幀間隔的一半),每幀都帶有運動模糊,人眼會把模糊的幀連成平滑運動;遊戲渲染沒有運動模糊,所以 30 fps 看起來比電影 24 fps 更卡。② **觀看習慣**——一個世紀以來觀眾已經適應了 24 fps 的「電影感」,反而覺得高幀率(如《霍位元人》48 fps)過於真實、像肥皂劇。這是審美習慣而非技術優劣。
高刷屏(120Hz)對日常使用有意義嗎?
非常明顯,尤其是滾動和觸控互動。60 Hz 到 120 Hz 的感知提升比 30 到 60 更直觀,因為觸控響應的延遲直接減半(16.7 ms → 8.3 ms)。代價是功耗:螢幕和 GPU 都要多幹一倍的活,所以手機普遍採用自適應重新整理率(LTPO 螢幕可在 1–120 Hz 間動態切換,靜態畫面降到 1 Hz 省電)。**如果裝置支援,開啟高刷的體驗提升是值得那點電量損耗的。**
