Video-Uploads auf Twitter vom Desktop ist Raketenwissenschaft – Lösung: FFmpeg und Safari

Gerade Stunden damit zugebracht, ein Video vom Browser auf Twitter hochzuladen. Mit Firefox war es generell unmöglich, mit TweetDeck ebenfalls, mit Safari ging’s dann. Aber nur, wenn das Video sich in den sehr engen technischen Vorgaben bewegt, die Twitter vorgibt.

Als Notiz an mich selbst (und für alle, die ein ähnliches Problem haben und mit MacOS arbeiten):

  1. Video aus dem Schnittprogramm exportieren (in meinem Fall eine Masterdatei in FullHD mit ProRes422 in einem MOV-Container verpackt)
  2. Terminalfenster öffnen und ffmpeg mit folgender Kommandozeile nutzen

ffmpeg -i quelldatei.mov -r 25 -vcodec libx264 -b:v 2M -vf 'scale=1280:trunc(ow/a/2)*2' -pix_fmt yuv420p -strict -2 -acodec aac zieldatei.mp4

FFmpeg generiert nun aus dem ProRes422-Master eine mit H.264 enkodierte Datei, die mit 25 Bildern pro Sekunde läuft, skaliert sie herunter auf 1280 x 720 Pixel, nutzt für den Sound AAC und verpackt alles zusammen mit einer angemessenen Rate von 2000 Kbit/s. Wichtig ist, dass aus der Quelldatei eine Zieldatei mit YUV-Farbraum, 4:2:0 Chroma-Subsampling und 8 Bit Farbtiefe generiert wird – alles andere lehnt Twitter (Stand heute) ab.

Wer FFmpeg nicht installiert hat, dem empfehle ich, sich zunächst Homebrew und anschließend FFmpeg nach dieser Anleitung zu installieren. Wer viel mit Videokodierung zu tun hat, sollte nicht auf dieses Schweizer Messer verzichten. Vor allem, wenn man gelegentlich auf Twitter hochlädt und nicht auf iOS/Android-Apps angewiesen sein will.