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.