video

Scriptip: met ffmpeg video samenvoegen

Soms krijg ik de vraag of ik even wat filmpjes aan elkaar wil plakken. Ik ben geen echte kenner van studio-software, zoals Adobe Premiere etc. Het editen van filmpjes vind ik doorgaans te tijdrovend, want ik ben al blij als ik alles netjes in mapjes en backup krijg.

Waar ik echt een hekel aan heb is dat bij het ruwweg aan elkaar plakken van een paar filmpjes, alles opnieuw ‘gerenderd’ moet worden. Dus ik wil van 5 bestanden 1 maken, zonder dat beeldje voor beeldje opnieuw berekend wordt. Kan anders uren duren.

Het zwitsers zakmes voor video en geluid conversie en bewerking is ffmpeg. Mits de ‘command-line’ je niet intimideert althans. Na downloaden en installeren kun je de commando’s gebruiken. Het ‘joinen’ van video bestaat uit 2 stappen.

  1. De bestanden uitpakken naar data, aangezien mp4 een soort envelop om de data heen is.
  2. Deze tussenbestanden achter elkaar zetten in 1 bestand.

Het uitpakken is als volgt opgebouwd, uitleg mag je ook overslaan:

  • “ffmpeg” om het programma aan te roepen.
  • “-i” staat voor input. Type hier achter de bestandsnaam.
  • “-c copy”, c staat voor codec. Als er ‘copy’ achter staat bereken je niets opnieuw maar kopieert de data zonder conversie naar het nieuwe bestand.
  • “-bsf:v h264_mp4toannexb” zegt iets over de bitstream, de data van de film zelf .
  • “-f mpegts” gevolgd door een bestandsnaam. “-f” staat voor file (bestand) wat het moet opleveren.

Het aan elkaar knopen gaat zo:

  • “ffmpeg” om het programma aan te roepen.
  • “-i” staat voor input. Hier stoppen we nu alle tussenbestanden in 1x in.
  • “concat” staat voor concateneren, aan elkaar plakken. De bestanden krijgen een pipe | tussen de namen.
  • Nog wat code voor de audio.
  • Tot slot de bestandsnaam van het totale bestand, hier “output.mp4” genoemd.

Voor 5 filmpjes die “scene” heten met een nummer, wordt dat in Powershell:


ffmpeg -i scene01.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts scene01.ts
ffmpeg -i scene02.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts scene02.ts
ffmpeg -i scene03.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts scene03.ts
ffmpeg -i scene04.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts scene04.ts
ffmpeg -i scene05.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts scene05.ts
ffmpeg -i "concat:scene01.ts|scene02.ts|scene03.ts|scene04.ts|scene05.ts" -c copy -bsf:a aac_adtstoasc output.mp4

Tip: commando’s kun je makkelijk in Excel opbouwen door bovenstaande in kolommen naast elkaar te zetten. In de laatste kolom maak ik het totale commando door met A2&B2&C2&… etc alle tekst aan elkaar te rijgen. Je kunt dan makkelijker ‘spelen’ met de opties zonder handmatig alles te typen.

 

 

Video splitten en joinen met My MP4Box

My MP4Box

Voor mij is de primaire video-opnemer mijn telefoon. In de loop van de jaren nam de bestandsomvang steeds meer toe, omdat de moderne smartphones op een steeds hogere resolutie opnemen. Op zich niet erg, maar de tijd nodig voor verwerking nam heel erg toe. Ik merkte dat ik filmpjes alleen deelde als ze in ‘rauwe toestand’ acceptabel genoeg waren. Zodra er ook maar enige bewerking nodig was, dan kostte dit uren, aangezien mijn laptop voor het bewerken niet een wonderbaarlijke processor vermenigvuldiging onderging. Terwijl ik alleen maar op zoek was naar een tool die filmpjes kon knippen en ophakken en weer aan elkaar breien. Dus ging ik op zoek naar een tool die:

  • Een MP4 bestand kan opsplitsen, vanaf een bepaald moment, tot aan een bepaald tijdstip.
  • Meerdere Mp4 bestanden aan elkaar kan plakken tot één bestand.
  • Deze functionaliteit biedt zonder alles op te nieuw te ‘encoderen’ (het beeldje voor beeldje opnieuw berekenen van de video).
  • Juist niets grafisch ondersteunt. Dus geen storyboard, geen clips, geen tijdlijn waarin je film meespeelt of zo.

De toepassing ligt in filmpjes die net iets tè rauw zijn van zichzelf, maar ook niet een hele aftiteling behoeven en ook geen sjieke overgangen tussen scenes. Ik was daarom blij My Mp4Box te ontdekken waarmee ik de volgende workflow heb:

  • Mp4 transporteren naar laptop via USB.
  • In VLC bekijken welke delen ik wil behouden.
  • De start- en eindtijdstippen noteer ik even.
  • In MP4Box kies ik het tabblad ‘Split’.
  • Aanwijzen van het bestand en invoer van de tijdstippen.
  • Klik op de knop ‘Split’.
  • Samenvoegen werk ongeveer hetzelfde, maar dan op het tabblad ‘Join’.

Animoto: automagisch van je foto’s een film maken

Even een tooltje tussendoor. Jaarlijks zitten we een keer op zondagmiddag als het regent, nu dus, met de familie bij elkaar om vakantiefoto’s te bekijken. Dat zijn dan de foto’s van 7 vakanties… Nu komen andermans foto’s niet altijd over, dus die van mij ook niet. Het gevoel dat je op een bepaalde plek op vakantie had, wordt niet altijd door de foto opgeroepen. 😉

Dus om niet 100 foto’s als slideshow voorbij te zappen, heb ik Animoto geprobeerd. De bedoeling is dat je je fotoselectie upload, muziek kiest en dan produceert. Er moet dan vanzelf een ‘mooie’ video gemaakt worden. Zonder dat je als eindgebruiker allerlei ingewikkelde studio-capriolen moet uithalen.

Ervaringen:

  • De basis versie heeft als maximum filmpjes van 30 seconden, of je betaalt per video $3. Dat moet gebeuren voordat je nog maar één filmpje hebt gemaakt.
  • Betalen kan behalve met creditcard, ook met Paypal.
  • Je kiest een stijl en upload je foto’s. Interface is makkelijk.
  • Na een paar minuten krijg je een mailtje dat het ‘renderen‘ klaar is.
  • Vervolgens kun je het filmpje delen op Facebook/Twitter, exporteren naar Youtube, embedden op je blog of downloaden als MP4.
  • De basisversie doet niet aan hoge resolutie. 😦 Het filmpje is uiteindelijk 432×240. Toch laag als je het later bekijkt op een leuke HDTV.
  • Ik blijk de laatste foto en aftiteling te missen in de gedownloade versie.

En omdat embedding kan èn ik natuurlijk iedereen wil lastig vallen met mijn vakantie, bij deze:

Create your own video slideshow at animoto.com.

Via Scobleizer.