FFMPEG obróbka filmu.

Tematy związane z oprogramowaniem, instalacją, konfiguracją
Awatar użytkownika
kodama
Junior Member
Posty: 633
Rejestracja: 23 maja 2010, 22:30
Lokalizacja: Poznań

Post autor: kodama »

No popatrz no:
- początek filmu: https://i.imgur.com/DHdshpG.png
- 10 sekunda: https://i.imgur.com/2awny5M.png
Awatar użytkownika
xmaster
Junior Member
Posty: 558
Rejestracja: 13 stycznia 2009, 08:19
Lokalizacja: /dev/piotrków tryb.

Post autor: xmaster »

Offtop on
Jakiej kamerki używasz?
Offtop Off
Awatar użytkownika
kodama
Junior Member
Posty: 633
Rejestracja: 23 maja 2010, 22:30
Lokalizacja: Poznań

Post autor: kodama »

Tu cię może zaskoczę: http://www.chucklohr.com/808/C16/ Takie niepozorne coś. Mniej więcej w połowie strony jest test tego urządzonka. Mam od jakiegoś półtora roku, wyszło już pewnie pińcet nowszych wersji, ale ta mi starcza - 1280x720@30FPS nagrania są na prawdę bardzo przyzwoitej jakości. Nawet nocą daje sobie radę jako tako - ale to w mieście, jak jest w miarę oświetlone.
Awatar użytkownika
kodama
Junior Member
Posty: 633
Rejestracja: 23 maja 2010, 22:30
Lokalizacja: Poznań

Post autor: kodama »

No super, znalazłem na stackoverflow czy innym superuserze odpowiedź, jak ten temat rozwiązać, proszę bardzo:

Kod: Zaznacz cały

ffmpeg -i input.avi -filter_complex "[0:v]trim=0:10,setpts=PTS-STARTPTS[v1]; [0:v]trim=10:30,setpts=PTS-STARTPTS[v2]; [0:v]trim=start=30,setpts=PTS-STARTPTS[v3]; [v2][B]setpts=PTS/0.5[slowv][/B]; [v1][slowv][v3]concat=n=3:v=1:a=0[out]" -map [out] output.mp4
Tłumaczę i objaśniam powyższy przykład:

Kod: Zaznacz cały

[0:v]trim=0:10,setpts=PTS-STARTPTS[v1]; [0:v]trim=10:30,setpts=PTS-STARTPTS[v2]; [0:v]trim=start=30,setpts=PTS-STARTPTS[v3]; 
to akurat proste - dzielimy plik wejściowy na 3 kawałki - 0-10sek, 10-30sek, 30-koniec

Kod: Zaznacz cały

[v2][B]setpts=PTS/0.5[/B][slowv]
najważniejszy kawałek - PTS/0.5 - spowalniamy film o połowę, czyli z 10 sekund robi się 20 itd. Jak pomnożymy (PTS*0.5) to przyspieszamy. To [slowv] to taki jakby "odnośnik" do tego kawałka filmu, tak samo jak powyżej [v1], [v2], [v3].

Kod: Zaznacz cały

[v1][slowv][v3]concat=n=3:v=1:a=0[out]
sklejamy całość do kupy.

Po temacie. Działa, nie kaszani się, idzie w miarę szybko. Dziękuję bardzo, temat można uznać za rozwiązany :]

P.S. Jak ktoś chętny, to może sobie poczytać o filter_complex, żeby się dowiedzieć szczegółowiej co się w tym poleceniu dzieje. Ja się nie będę rozpisywał, skoro wszystko jest w internetach. ffmpeg to jest jednak moc ;]
ODPOWIEDZ