YouTube: Your videos will process faster if you encode into a streamable file format.

When uploading long-form video to YouTube, I always get this warning message:

Your videos will process faster if you encode into a streamable file format.

From what I can gather from around the web, this means that YouTube will try to encode chunks from the video as it is still uploading. This also allows them to spread out this single encode job to multiple machines, optimizing load across their nodes and speeding up the process.

In order to do that, they need to know how the data inside the file is laid out. This information is stored in the moov atom of the video container. When locally encoding the file, this information only becomes available at the end of the encode and is therefore appended at the end of the file.

To move the moov atom to the front of the file, one may use the “Fast Start” option of the encoder. QuickTime and others do this in their GUI, ffmpeg users can use the -movflags faststart option, and one may use the qtfaststart script after encoding.

But: YouTube still gives me the warning with properly formatted files, there is no thumbnail during upload, and processing takes hours. Is there anything else I’m missing?

Update: I got a note from someone who should know, thanks!

Moving the moov atom to the front using qtfastart should do it.

There could be a youtube bug.

There could be an issue with [you] doing it wrong.

Stick h.264 + aac in an mpeg 2 transport stream or a mkv file, and try that?

So for now I consider YouTube’s MP4 ingest to be buggy. And indeed, using MKV files or MPEG2 Transport Streams containing H264 + AAC works much faster and yields no warning from YouTube during upload.

Here’s a sample ffmpeg command to losslessly copy streams from an existing MP4 file to MKV. There’s no re-encoding involved and therefore this file “conversion” runs at ~100.000 fps on my Mac.

ffmpeg -i video.mp4 -acodec copy -vcodec copy video.mkv

Fastspring für digitalen Vertrieb

Ich habe für den neuen englischen Lightroom-Workshop (wieder) nach einer Lösung gesucht, die den Vertrieb etwas erleichtert und bin auf Fastspring gestoßen.

Ich hatte die Lösung wohl schon einmal ins Auge gefasst, ich hatte noch einen fünf Jahre alten Account, wie mir der Support mitteilte. Mac User haben vielleicht das Frontend schon einmal beim Kauf von iStat Menus oder anderer Shareware gesehen. (Sagt man noch Shareware?)

Und soweit ich das nach der Einrichtung des Produkts und den ersten verkauften Workshops jetzt beurteilen kann, bin ich ziemlich begeistert von Fastspring:

  • Wahlfreiheit, den Shop selbst zu machen, und nur den Checkout zu nutzen, oder komplett alles von Fastspring machen zu lassen
  • Fastspring ist US-basierter Reseller und kümmert sich um die richtige Besteuerung aus US-Sicht. Für EU-Kunden wird die jeweils lokale MwSt. berechnet und abgeführt
  • Eigene Preis- und Rabattskripte in Javascript
  • Darüber z.B. auch Zahl-was-du-willst-Modus umsetzbar, mit Minimalpreis
  • Runde Preise für Fremdwährungen
  • Kreditkarte, Paypal und Banküberweisung als Zahlungsweg
  • Flexible Coupons
  • Fulfillment: Ein oder mehrere Downloads können an das Produkt angehängt werden.
  • Downloads können geupdated werden. Sofort. Kein Bergwerk.
  • Ebenso Lizenzcodes, die on demand erzeugt werden oder als Liste hochgeladen werden.
  • Webhooks sagen dem eigenen Server auf Wunsch bescheid
  • Fairer Preis: 8,9%, inklusive Zahlung und Download

Und vieles mehr – Fastspring macht da unter der Haube viel richtig, leider sieht die Website aus wie 1997 und so gar nicht nach Next-gen E-Commerce.