用於幀插值的 FFMPEG 和 Twixtor

用於幀插值的 FFMPEG 和 Twixtor

任何 FFMPEG 專家都可以告訴我 FFMPEG 是否可以進行類似於 After Effects 中的 Twixtor 插件的複雜幀插值嗎?如果是這樣,建議嘗試哪些設定?我正在嘗試從 60 fps 來源創建超慢動作高清素材。即轉換為 120fps 並插入訊框。

答案1

FFmpeg 無法做到這一點。

一些討論幾年前他們就實現了這樣的功能,但到目前為止他們還沒有在專案中發布任何類似於幀插值的東西。

您當然可以使用類似的免費工具,例如慢動作視頻這也主辦在 GitHub 上如果你想看一下原始碼。

答案2

libavfilter 函式庫有一個名為的過濾器插值,自2016年11月起可用。

“使用運動插值將影片轉換為指定的幀速率。”

用法範例:

ffmpeg -i input.60fps.hevc -filter "minterpolate='fps=120'" output.120fps.hevc

我不知道使用哪些設定才能獲得最佳結果。根據我的經驗,預設設定提供了可接受的運動插值本身品質。但偶爾也會出現一些非常明顯的視覺偽影。我無法找到可以完全消除它們的設定組合。

目前過濾器速度非常慢。它可以在現代高階 x86 CPU 上每秒輸出大約 2 個運動插值幀的 1080p 影片。我注意到插值僅使用單個 CPU 線程,這可能是速度如此緩慢的主要原因。

為了加速多核心 CPU 上的過濾器,建議將輸入視訊分割成幾個長度相等的區塊,並對所有區塊並行應用運動插值。

答案3

更新後幾個月:

ffmpeg -i input.mp4 -movflags +faststart -filter_complex "[0:v]minterpolate='fps=60:mi_mode=mci:me_mode=bidir:mc_mode=obmc:me=ds:vsbmc=1'" -預設超快輸出.mp4

原帖:

我能夠實現這樣的效果(雖然不完美), 混合篩選

ffmpeg -i source.mp4 -filter:v tblend -r 120 result.mp4

相關內容