4x ulang videoframe menggunakan ffmpeg


9

Saya perlu mempercepat video dengan faktor 4x, tetapi tidak ingin menjatuhkan frame dan sebaliknya rata-rata. Yakni masing-masing 4 frame dirata-rata, dan menghasilkan 1 frame output. Frame-rate target tetap sama, jadi video sekarang 4 kali lebih cepat.

Apakah ada cara untuk melakukannya di ffmpeg?


3
Bisakah Anda lebih spesifik tentang bagaimana mereka seharusnya "dirata-rata"? Metode apa yang ingin Anda gunakan?
— Logan

@LordNeckbeard (f1 + f2 + f3 + f4) / 4 - rata-rata sederhana. Jadi setiap frame yang dihasilkan memiliki jejak gerakan yang samar pada semua sub-frame.
— BarsMonster

@BarsMonster Saya ragu ffmpeg bisa melakukan ini. Pernahkah Anda melihat efek ini dilakukan dengan cara lain? Apakah Anda tahu seperti apa sebenarnya itu?
— Jim Mack

@ Jimmack Saat ini saya melakukan itu secara manual di VirtualDub, mereka memiliki filter interpolasi, dengan interpolasi 0,5x itu tidak benar rata 2 frame. Inilah hasilnya: youtube.com/watch?v=8zrws5CGWsI Kita dapat melihat bahwa setiap frame memiliki pergerakan 2 subframe, sehingga sedikit lebih halus. Tetapi melakukannya dalam cmdline akan jauh lebih cepat di masa depan.
— BarsMonster

slowmoVideo mungkin patut dicoba, tetapi saya tidak tahu apakah ini memiliki cli. Filter framerate FFmpeg tampaknya melakukan interpolasi, tetapi tampaknya tidak sesuai dengan kebutuhan Anda.
— Logan

Jawaban:


9

ffmpeg dengan filterchain ini melakukannya:

ffmpeg -i input -vf "tblend=average,framestep=2,tblend=average,framestep=2,setpts=0.25*PTS" -r srcfps -{encoding parameters} output

srcfps harus diganti dengan framerate input Anda.


1
Juga mencoba untuk x16 menggunakan "tblend = rata-rata, framestep = 2, tblend = rata-rata, framestep = 2, tblend = rata-rata, framestep = 2, tblend = rata-rata, framestep = 2, setpts = 0.0625 * PTS"
— BarsMonster
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.