Jak zrobić animowanego gifa z fragmentu filmu

Ostat­nimi czasy z czystej głupoty kombi­no­wa­łem jak by tu zrobić animo­wa­nego gifa z filmu i to przy wyko­rzy­sta­niu możli­wie najmniej­szej liczby progra­mów. Dodat­kowo całość powinna być w miarę konfi­gu­ro­walna. Ku mojemu zasko­cze­niu potrzebne nam będą zale­d­wie 2 apli­ka­cje: Gimp i Avide­mux (dostępne w repozytoriach).

Obok mamy efekt finalny. Jest to frag­ment filmu Steal This Film 2 prze­ska­lo­wany do 200 pikseli na szero­kość, złożony z 41 klatek wyświe­tla­nych co 100 ms każda (czyli 10 klatek na sek.) Całość zajmuje 680 KB, więc zapewne trzeba będzie chwilę pocze­kać na załadowanie…

Poni­żej recepta:

  1. Odpa­lamy Avide­mux i wyci­namy w nim frag­ment (przy­ci­skami A i B pozby­wamy się wszyst­kiego oprócz naszego kawałka), z którego będziemy chcieli zrobić anima­cję gif.
  2. Zapi­su­jemy.
  3. Otwie­ramy plik w Avide­mux z wycię­tym frag­men­tem i w VideoCopy prze­sta­wiamy na MPEG-4 ASP (Xvid4).
  4. Klikamy na Filters i w zakładce Trans­form dajemy Resam­ple fps. Usta­wiamy na 10.
  5. Ponow­nie zapi­su­jemy, a w nazwie doda­jemy dla rozpo­zna­nia 10fps czy jak tam sobie chcecie.
  6. Zakła­damy jakiś kata­log, gdzie będziemy trzy­mali poszcze­gólne klatki z filmu.
  7. Otwie­ramy w Avide­mux poprzed­nio zapi­sany plik. Klikamy File -> Save -> Save Selec­tion as JPEG Images… i jako miej­sce doce­lowe dajemy zało­żony katalog.
  8. Otwie­ramy w Gimpie pierw­szą klatkę zapi­saną w jpg.
  9. W Warstwach (Okna dialo­gowe -> Warstwy) doda­jemy kolejne klatki. Można doda­wać je „hurtem”, ale potem należy prze­sta­wić kolej­ność od najwyż­szej cyferki do najniższej.
  10. Teraz zapi­su­jemy wszystko jako gif.
  11. W oknie wyboru zazna­czamy Zapisz w postaci anima­cji, a dalej: Zapę­tle­nie na zawsze, Opóź­nie­nie 100 mili­se­kundUżyj wpisa­nego opóź­nie­nia do wszyst­kich klatek.

Gotową anima­cję najle­piej spraw­dzać w Fire­fok­sie. Praw­do­po­dob­nie będzie potrzebne prze­ska­lo­wa­nie na mniej­szy rozmiar. Wystar­czy użyć w Gimpie Obraz -> Skaluj Obraz…

Jeżeli zdecy­du­jemy się na np. 5 klatek na sekundę, to oczy­wi­ście opóź­nie­nie trzeba będzie usta­wić na 200 mili­se­kund :-P

Zapewne niektó­rym metoda przyda się do robie­nia głupa­wych anima­cji na stron­kach (koffa­nych bloga­skach). Zachę­cam do testo­wa­nia i eksperymentowania! :-)

Podobne wpisy:

  1. Jak zrobić zrzuty ekranu z pliku filmo­wego w Linuksie
  2. Napra­wia­nie formatu napi­sów do filmu za pomocą Open Office
  3. SubE­dit i podwójne napisy
  4. 2 sposoby pozy­ski­wa­nia i konwer­sji filmów z YouTube i innych

2 Comments

  • krzylo
    2 listopada 2009 - 21:14 | Permalink

    Jest prost­szy sposób: za pomocą Crystal Play­era zrzu­camy klatki (klawisz N to prze­skok o kolejną klatkę, klawisz C — zapis klatki jako jpg na dysku). Przy odro­bi­nie wprawy idzi to bardzo szybko. Zrzu­camy co 2 klatkę jeśli chcemy mieć 12 kl/s, co trze­cią, jeśli 8 kl/s, zależy od długo­ści filmu, wiel­ko­ści doce­lo­wej klatki, jaką chcemy mieć płyn­ność ruchu. Potem wcho­dzimy do kata­logu z tymi jpg, popra­wiamy numerki (trzeba wsta­wić do niektó­rych 0 jak jet na końcu tylko 1 cyfra, zwykle jest kilka takich na minute filmu) Jak już ładnie są i po kolei to otwie­ramy pierw­szy w Irfa­nView, naci­skamy B (prze­twa­rza­nie wsadowe), usta­wiamy w opcjach specjal­nych skalo­wa­nie (z opcją „użyj funk­cji zmień rozmiar), oraz plik wyjściowy jako GIF, kata­log doce­lowy i gotowe. potem zazna­czamy wszystki gify i prze­cią­gamy do progra­miku Unfreez 2.1, usta­wiamy 12ms (jak była co 3 klatka) lub 8ms jak co druga i gotowe. Przy­kła­dowy filmik frag­ment ze Shreka zrobi­łem dosłow­nie w dzie­sięć minut:
    http://img134.imageshack.us/img134/1738/shrek2.gif

  • 8 lutego 2016 - 16:50 | Permalink

    Dobre porady. dzięki

  • Dodaj komentarz

    Twój adres e-mail nie zostanie opublikowany.

    Możesz użyć następujących tagów oraz atrybutów HTML-a: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <p> <pre lang="" line="" escaped=""> <q cite=""> <strike> <strong>