Zum Inhalt springen

Welche MP4 du aus einem Tweet wählen solltest

X veröffentlicht dasselbe Video in mehreren MP4-Versionen. Sie haben oft dieselbe Auflösung und unterscheiden sich in der Bitrate, deshalb ist die oberste Zeile der Liste nicht immer die, die du willst.

Füg einen Tweet-Link ein, und du bekommst die Video-Versionen, wie X sie auflistet, die höchste Auflösung zuerst. Diese Reihenfolge ist ein Ausgangspunkt, kein Urteil: Auflösung ist nur die Bildgröße, und zwei Dateien in derselben Bildgröße können sich enorm darin unterscheiden, wie viel Datenmenge hinter jeder Sekunde Bild steckt.

Was der Resolver liest

X verlangt dafür keine Anmeldung. Der Resolver fragt den öffentlichen Syndication-Endpunkt von X (cdn.syndication.twimg.com/tweet-result) nach dem Tweet, mit demselben signierten Token-Schema, das die eingebettete Timeline nutzt. Die Antwort trägt den Text des Tweets, seinen Autor und ein videos-Array mit jeder MP4-Version, die X dafür vorhält.

Nur Videos und GIFs werden behalten. Auf X wird ein animiertes GIF als MP4-Datei ausgeliefert, ein GIF-Tweet lädt also als Video ohne Ton herunter — genau das, was die Plattform gespeichert hat. Tweets, bei denen das einzige Video eine Live-Übertragung ist, oder bei denen X gar keine gemuxte MP4 zurückgibt, antworten mit no_video.

Wie die Kennzeichnungen entstehen

Der letzte Punkt zählt. Die Versionen von X sind keine sanfte Leiter: Ein Tweet kann eine Datei mit 1280 Pixeln bei niedriger Bitrate und eine mit 720 Pixeln bei viel höherer tragen. Die breitere Datei ist auf dem Bildschirm größer; die kleinere kann in Bewegung besser aussehen, weil mehr Bits pro Pixel ausgegeben werden.

Ein durchgerechneter Vergleich

ZeileBildWofür sie taugt
1280×720 bei niedriger BitrateBreites Bild, dünne Daten pro PixelBildschirme, auf denen du das volle Bild brauchst und weiche Bewegung akzeptierst.
720×720 bei hoher BitrateQuadratisches Bild, schwere Daten pro PixelSauberere Bewegung und saubereres Detail, aber ein kleineres Bild.
480×270 (der Mobile-Schnitt)Kleines BildDie einzige Version, die manche älteren Tweets tragen; akzeptiere die Größe oder lass sie aus.

Eine praktische Regel: Nimm die breiteste Zeile, es sei denn, sie wirkt sichtbar matschig im Vergleich zur nächsten darunter. Im Zweifel lade zwei herunter und vergleiche die Dateigrößen — eine Datei, die doppelt so schwer ist bei halber Bildgröße, gibt ihre Bits für Bewegung und Detail aus.

Warum der Download eine Navigation ist, kein Fortschrittsbalken

Die Videodateien liegen auf video.twimg.com, das für diese Art von Anfrage keine CORS-Header sendet. Die Seite kann die Bytes also nicht per Skript lesen, deshalb öffnet die Download-Schaltfläche direkt den CDN-Link und dein Browser speichert die Datei. Das Gute ist, dass nichts des Videos diese Seite passiert; das Schlechte ist, dass es keinen Prozentzähler gibt.

Was nicht heruntergeladen werden kann

Geschützte Konten, gelöschte Tweets und altersbeschränkte Tweets geben einen Fehler zurück, weil X selbst sie vor anonymen Lesern verbirgt. Der Resolver meldet sich nie an und umgeht das nie. video.twimg.com-URLs lassen sich auch nicht allein einfügen — der Resolver startet von einem Tweet-Link, da nur die Tweet-Nutzlast die Versionen nennt.

Die Kurzfassung

Fragen

Warum sieht die oberste Zeile nicht am besten aus?

Weil die Liste nach Bildbreite sortiert ist und ein breiteres Bild nicht zwangsläufig eine schwerere Datei ist. Trägt eine kleinere Zeile mehr Bits pro Pixel, kann sie in Bewegung sauberer aussehen. Vergleiche die Dateigrößen, bevor du annimmst, die oberste Zeile gewinne.

Kann ich ein Video von einem geschützten X-Konto herunterladen?

Nein. X gibt geschützte Tweets nicht an anonyme Leser preis, und dieses Tool meldet sich nicht an und umgeht das nicht. Nur öffentliche Tweets lassen sich auflösen.

Warum gibt es keinen Fortschrittsbalken für X-Downloads?

`video.twimg.com` sendet keine CORS-Header, die Seite kann die Video-Bytes also nicht lesen. Die Schaltfläche navigiert zum CDN-Link und dein Browser lädt die Datei selbst.

Tools in diesem Artikel

Alle Artikel