FFMPEG - Bir videoyu bir timelapse'e dönüştürür


15

Bir videonun zaman atlamalı bir video dönüştürmek için flash builder (Eylem komut dosyası 3) ffmpeg kullanıyorum. Bunu yapmak için ayarların nasıl kullanıldığını öğrendim, ancak ortaya çıkan çıktı dosyası girişle aynı uzunlukta (zaman atlamasından sonra sadece son kare görüntüleniyor), geçen ayarlara göre sürenin değiştirilmesini istiyorum ffmpeg'e.

İlk önce komut satırı üzerinden deniyorum:

ffmpeg -i input.mp4 -filter:v "setpts=0.5*PTS" output.mp4

Herhangi bir yardım büyük mutluluk duyacağız!

Yanıtlar:


21

Sorun çözüldü. Sesi kaldırmıyordum, bu yüzden muhtemelen videonun tüm süresi boyunca boş olan ses dosyasını çalıyordu.

ffmpeg -i input.mp4 -filter:v "setpts=0.5*PTS" -an output.mp4

-an sesi videodan kaldırır.


2

Sesi hızlandırma hakkında daha fazla ayrıntı burada. 2 kata kadar yapabilirsiniz, ancak daha da hızlandırmak için kandırabilirsiniz ( kaynak ):

Sesi hızlandırma / yavaşlatma

Atempo ses filtresi ile sesi hızlandırabilir veya yavaşlatabilirsiniz . Ses hızını iki katına çıkarmak için:

ffmpeg -i input.mkv -filter:a "atempo=2.0" -vn output.mkv

Atempo filtresi 0,5 ile 2,0 arasındaki değerleri kullanmakla sınırlıdır (böylece orijinal hızın yarısından daha azına kadar yavaşlatabilir ve girişin iki katından daha fazla olamaz). Gerekirse, birden fazla atempo filtresini bir araya getirerek bu sınırlamayı aşabilirsiniz. Aşağıdakiler ses hızını dört katına çıkarır:

ffmpeg -i input.mkv -filter:a "atempo=2.0,atempo=2.0" -vn output.mkv

Karmaşık bir filtre kullanarak, video ve sesi aynı anda hızlandırabilirsiniz:

ffmpeg -i input.mkv -filter_complex "[0:v]setpts=0.5*PTS[v];[0:a]atempo=2.0[a]" -map "[v]" -map "[a]" output.mkv

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.