Videoverarbeitung und Videoerstellung

# Ein Video hochladen, codieren und auf YouTube veröffentlichen

Video-Upload empfangen, kontrollierte MP4-Variante erstellen und über einen überprüfbaren Workflow privat auf YouTube veröffentlichen.

Veröffentlicht am 1. September 2026

## Wichtigste Erkenntnisse

* Codieren Sie vor dem YouTube-Export eine geprüfte MP4-Ausgabe, statt den Kanal jede Quellvariante akzeptieren zu lassen.
* Starten Sie Exporte als privat, damit der Abschluss der Verarbeitung nicht mit redaktioneller Freigabe oder öffentlicher Veröffentlichung verwechselt wird.
* Bewahren Sie den OAuth-Zugriff in benannten Template-Zugangsdaten auf und halten Sie Transloadit-Kontogeheimnisse aus dem Browser-Code fern.

Ein direkter Upload zu YouTube ist praktisch, solange nicht jeder Browser, jeder mobile Client und jedes interne Tool eigene Validierungen, Encoding-Annahmen, Metadatenregeln und ein eigenes Wiederholungsverhalten implementiert. Ein dreistufiger Workflow schafft eine einzige kontrollierte Übergabe: Die Quelle wird akzeptiert, die Ausgabedatei normalisiert und anschließend unter einer expliziten Sichtbarkeitsrichtlinie auf einem Kanal veröffentlicht.

## In diesem Leitfaden

1. [Veröffentlichung als Zustandsübergang definieren](#upload-encode-publish-video-youtube-section-1)
2. [Das gesperrte YouTube-Template erstellen](#upload-encode-publish-video-youtube-section-2)
3. [Kanal-Zugangsdaten und Metadaten schützen](#upload-encode-publish-video-youtube-section-3)
4. [Abschluss ohne doppelte Veröffentlichung abgleichen](#upload-encode-publish-video-youtube-section-4)
5. [Den Zielvertrag testen](#upload-encode-publish-video-youtube-section-5)
6. [Quellenaufbewahrung von der Kanal-Auslieferung trennen](#upload-encode-publish-video-youtube-section-6)

## Worauf es besonders ankommt

* Validieren Sie Titel, Beschreibung und Schlagwörter in der Anwendung, bevor Sie sie als Template-Felder übergeben, und behandeln Sie Kategorie und Sichtbarkeit als feste Template-Werte statt als Client-Eingabe.
* Speichern Sie die Assembly-ID und die zurückgegebene Plattform-ID, damit Wiederholungsversuche nicht stillschweigend doppelte Videos erzeugen.
* Testen Sie Kanalberechtigungen und Kontingente mit dem tatsächlichen Zielkonto, bevor Sie unbeaufsichtigte Veröffentlichungen aktivieren.

## Veröffentlichung als Zustandsübergang definieren

Das Hochladen von Bytes, der Abschluss eines Encodings und die Veröffentlichung eines Videos sind drei unterschiedliche Ereignisse. Modellieren Sie sie getrennt. Die Anwendung sollte wissen, welcher Nutzer die Quelle geliefert hat, welche Metadaten genehmigt wurden, welche Workflow-Version ausgeführt wurde und ob eine Person oder eine Richtlinie den resultierenden Kanaldatensatz sichtbar machen darf. Ein abgeschlossener /youtube/store-Step beweist, dass YouTube den Export akzeptiert hat; er beweist nicht, dass der Inhalt öffentlich sein sollte.

Beginnen Sie mit der Sichtbarkeit „privat“. Gleichen Sie die zurückgegebene Zielidentität mit dem Anwendungsdatensatz ab, lassen Sie Redakteure Wiedergabe und Metadaten prüfen und führen Sie die öffentliche oder nicht gelistete Veröffentlichung erst durch eine ausdrücklich autorisierte Aktion durch. Diese Grenze verhindert, dass ein erfolgreicher technischer Workflow Moderation, Terminplanung oder Rechteprüfung umgeht.

### Übertragung abgeschlossen

Die Quelle hat die Assembly erreicht und steht nachgelagerten Steps zur Verfügung.

### Verarbeitung abgeschlossen

Die kontrollierte MP4-Datei liegt vor und hat die vom Template gewählten technischen Prüfungen bestanden.

### Veröffentlichung genehmigt

Die Anwendung hat das Ziel abgeglichen und dessen Zielgruppe autorisiert.

## Das gesperrte YouTube-Template erstellen

Der Basisgraph enthält genau einen Upload-Step, einen Encode-Step und einen YouTube-Export-Step. /upload/handle heißt :original und hat keinen use-Wert. /video/encode liest :original und erzeugt eine begrenzte MP4-Variante. /youtube/store liest ausschließlich diese Variante, sodass ein unbearbeiteter Kamera-Upload die Encoding-Richtlinie nicht umgehen kann.

Lassen Sie allow\_steps\_override auf false, wenn Browser- oder Mobile-Clients Assemblies aus dem Template erstellen. Liefern Sie ausschließlich geprüfte Metadatenfelder von einem vertrauenswürdigen Server. Der Vertrag von YouTube für Titel, Kategorie, Schlagwörter und Sichtbarkeit ist strenger als frei formatierte Anwendungseingaben. Validieren Sie die Felder daher vor dem Signieren oder Erstellen der Assembly, statt Richtlinienfehler erst nach einem aufwändigen Encoding zu entdecken.

Ein hochgeladenes Video codieren und privat zu YouTube exportieren

```
{
  "allow_steps_override": false,
  "auth": {
    "max_number_of_files": 1,
    "max_size": 2147483648
  },
  "steps": {
    ":original": {
      "robot": "/upload/handle"
    },
    "youtube_ready": {
      "use": ":original",
      "robot": "/video/encode",
      "preset": "web/mp4/1080p",
      "width": 1920,
      "height": 1080,
      "resize_strategy": "fit",
      "zoom": false
    },
    "youtube_private": {
      "use": "youtube_ready",
      "robot": "/youtube/store",
      "credentials": "youtube-channel",
      "title": "${fields.title}",
      "description": "${fields.description}",
      "category": "education",
      "keywords": "${fields.keywords}",
      "visibility": "private",
      "result": true
    }
  }
}
```

## Kanal-Zugangsdaten und Metadaten schützen

Erstellen Sie YouTube-Template-Zugangsdaten über den OAuth-Flow und verweisen Sie im Template nur auf deren Namen. Der Browser sollte weder das OAuth-Token noch das Auth Secret von Transloadit erhalten. Der Server sollte das feste Template auswählen, den Zielkanal autorisieren und festlegen, welche Nutzer Veröffentlichungsmetadaten liefern dürfen.

Fügen Sie der öffentlichen Beschreibung kein beliebiges HTML, keine Geheimnisse und keine internen Datensatzinformationen ein. Wenden Sie ein Titellimit von 80 Zeichen an, ordnen Sie Kategorien der unterstützten Liste zu, begrenzen Sie Länge und Anzahl der Schlagwörter in der Anwendung, und wählen Sie die Sichtbarkeit anhand einer Anwendungsrichtlinie statt eines ungeprüften Client-Werts.

## Abschluss ohne doppelte Veröffentlichung abgleichen

Video-Encoding und ein Upload auf eine externe Plattform können länger dauern als eine interaktive Anfrage. Speichern Sie einen lokalen Veröffentlichungsvorgang, bevor Sie die Assembly erstellen, hinterlegen Sie die Assembly-ID, sobald sie existiert, und schließen Sie den Datensatz über einen signaturgeprüften Webhook ab oder indem Sie später den Assembly Status abfragen. Bewahren Sie die zurückgegebene YouTube-Identität beim Vorgang auf, statt die Ergebnis-URL als einzigen Nachweis zu behandeln.

Ein Timeout ist kein Beweis dafür, dass der Export fehlgeschlagen ist. Prüfen Sie vor einem erneuten Versuch den gespeicherten Vorgang und den Assembly Status. Ein stabiler Idempotenzschlüssel auf Basis von Quellversion, Kanal, Workflow-Version und beabsichtigtem Veröffentlichungsereignis verhindert, dass eine verlorene Antwort ein zweites, unbemerktes privates Video erzeugt.

## Den Zielvertrag testen

Verwenden Sie den echten Zielkanal für eine private Testdatei. Prüfen Sie die codierten Abmessungen, Audio, Dauer, das Verhalten bei Titelkürzung, Kategorie, Schlagwörter und Sichtbarkeit. Testen Sie eine abgelaufene OAuth-Autorisierung, einen Nutzer ohne Kanalberechtigung, einen Titel über dem Anwendungslimit, eine nicht unterstützte Quelle und eine wiederholte Abschlussbenachrichtigung.

Überwachen Sie Fehler nach Phase: Aufnahme, Encoding oder YouTube-Export. Erfassen Sie Wartezeit in der Queue, Verarbeitungsdauer, Ausgabegröße, Exportdauer, Zielidentität und Endzustand. Bewahren Sie rohe Anbieterfehler in geschützten Diagnosedaten auf und zeigen Sie Redakteuren eine stabile Aktion wie Zugangsdaten neu verbinden, Metadaten korrigieren oder den bestehenden Vorgang erneut versuchen.

## Quellenaufbewahrung von der Kanal-Auslieferung trennen

YouTube ist ein Veröffentlichungsziel, nicht notwendigerweise das Quellarchiv der Anwendung. Entscheiden Sie, ob die hochgeladene Master-Datei, die codierte Auslieferungsdatei oder beide in einem von der Anwendung kontrollierten Speicher verbleiben müssen. Das Aufbewahren einer bekannten Quelle unterstützt späteres erneutes Encoding, Rechteprüfung, Anbieterwechsel und die Wiederherstellung nach versehentlicher Kanallöschung.

Wenden Sie eine Löschung erst an, wenn die Zielidentität abgeglichen ist und die Aufbewahrungsrichtlinie des Produkts dies zulässt. Ein privates YouTube-Video kann weiterhin entfernt, gesperrt oder vom Anwendungskonto getrennt werden. Machen Sie die Präsenz auf der Plattform daher nicht zum einzigen Nachweis für den Erfolg des Quell-Workflows.

## Wissenswerte technische Details

* /upload/handle muss :original heißen, darf use nicht definieren und darf in einer Reihe von Assembly Instructions nur einmal vorkommen.
* Das Schema /youtube/store erfordert Zugangsdaten, Titel, Beschreibung, Kategorie, Schlagwörter und Sichtbarkeit. Für den Sichtbarkeitswert gibt es keinen Standardwert; er muss public, private oder unlisted sein, sodass ein Weglassen die Validierung scheitern lässt. Setzen Sie ihn auf private, wenn die Veröffentlichung erst nach einer Prüfung erfolgen soll.
* Das Schema /youtube/store begrenzt Titel auf 80 Zeichen und schränkt die Kategorie auf ein festes Enum ein. YouTube dokumentiert ein Limit von 5.000 Zeichen für die Beschreibung, das die Anwendung durchsetzen muss, da das Robot-Schema Strings beliebiger Länge akzeptiert.
* YouTube-Schlagwörter werden als ein einziger, durch Kommas getrennter String übergeben, nicht als Array.
* Ein /youtube/store-Step kann über benannte use-Eingaben ein Video und ein individuelles Thumbnail erhalten, aber der dreistufige Basisablauf sendet nur das codierte Video.
* Template-Zugangsdaten enthalten die YouTube-OAuth-Autorisierung. Sie entscheiden nicht, welcher Anwendungsnutzer auf dem verbundenen Kanal veröffentlichen darf.

## Ein praxisnaher Ansatz

1. 1\
   Legen Sie die akzeptierte Quelle, die Ausgabevariante, die Metadatengrenzen und den Freigabestatus fest.
2. 2\
   Erstellen Sie YouTube-Template-Zugangsdaten und speichern Sie ein gesperrtes Upload-Encode-Export-Template.
3. 3\
   Reichen Sie eine private Testdatei ein und gleichen Sie das Assembly-Ergebnis mit einem Anwendungsdatensatz ab.
4. 4\
   Testen Sie doppelte Einreichungen, abgelaufenen OAuth-Zugriff, abgelehnte Metadaten und die manuelle Veröffentlichung.

Ein vierstufiger Medienworkflow

## Wann Transloadit hilfreich ist

Verwenden Sie /upload/handle für die eingehende Datei, /video/encode für eine begrenzte MP4-Variante und /youtube/store für den Kanal-Upload. Halten Sie das gespeicherte Template gesperrt, beziehen Sie den YouTube-OAuth-Zugriff über Template-Zugangsdaten, validieren Sie die Laufzeit-Metadaten in der Anwendung und beginnen Sie mit privater Sichtbarkeit.

## Architekturgrenze

Transloadit kann ein Video empfangen, codieren und zu YouTube hochladen, aber die Anwendung behält weiterhin die Uploader-Autorisierung, die redaktionelle Freigabe, die Metadatenrichtlinie, die Kanalverwaltung und die dauerhafte Verknüpfung zwischen ihrem Datensatz und dem resultierenden YouTube-Video.

## Häufig gestellte Fragen

### Kann der Workflow direkt öffentlich veröffentlichen?

Ja, /youtube/store unterstützt die öffentliche Sichtbarkeit, aber „privat“ ist sicherer, wenn die Veröffentlichung eine redaktionelle, rechtliche oder moderative Freigabe erfordert. Machen Sie die öffentliche Veröffentlichung zu einem separaten, autorisierten Übergang.

### Transkodiert YouTube die hochgeladene MP4-Datei noch?

Das Transloadit-Encoding steuert die begrenzte Ausgabedatei, die zu YouTube hochgeladen wird, während YouTube separat steuert, wie dieser Upload für die Wiedergabe auf seiner Plattform aufbereitet wird.

### Wo sollte das YouTube-OAuth-Token gespeichert werden?

In benannten Template-Zugangsdaten. Der Browser-Code sollte weder das OAuth-Token noch das Transloadit-Auth-Secret erhalten.

### Wie verhindern wir doppelte Videos nach einem Timeout?

Speichern Sie den Vorgang und die Assembly-ID dauerhaft, bevor Sie warten. Prüfen Sie diesen Zustand und den Assembly Status, bevor Sie für dieselbe Quelle, denselben Kanal und dasselbe Veröffentlichungsereignis eine weitere Assembly erstellen.

### Kann dieser Workflow ein benutzerdefiniertes Thumbnail hinzufügen?

Ja, /youtube/store kann benannte Video- und Bildeingaben verarbeiten, aber das fügt einen weiteren Verarbeitungszweig hinzu. Der grundlegende Leitfaden behandelt bewusst den dreistufigen, reinen Video-Workflow.

## Erstellen Sie den Workflow

Entwickeln Sie das Konzept mithilfe der Robot-Dokumentation und funktionsfähiger Demos zu einer getesteten Assembly weiter.

### Relevante Robots

* [/upload/handle](/de/docs/robots/upload-handle.md)
* [/video/encode](/de/docs/robots/video-encode.md)
* [/youtube/store EN (English)](/docs/robots/youtube-store.md)
* [Hochgeladene Dateien empfangen](/de/docs/robots/upload-handle.md)
* [YouTube-Variante erstellen](/de/docs/robots/video-encode.md)
* [Videos zu YouTube exportieren EN (English)](/docs/robots/youtube-store.md)
* [OAuth-Zugangsdaten schützen](/de/docs/topics/template-credentials.md)
* [Asynchronen Abschluss abgleichen](/de/docs/topics/webhooks.md)
* [API-Dokumentation lesen](/de/docs.md)
* [Funktionsfähige Demos entdecken EN (English)](/demos.md)
* [Kostenlosen Workspace erstellen](/c/signup/)

Videoverarbeitung und Videoerstellung

## Mit verwandten Leitfäden fortfahren

* [Anpassbare Medienverarbeitungs-Workflows mit Transloadit](/de/guides/customizable-media-processing-workflows.md)\
  Entwerfen Sie ein wiederverwendbares Template mit Validierung, Variablen, parallelen Derivaten, sicherem Speicher und beobachtbarem Abschluss.
* [Video- und Audio-Codecs mit Transloadit steuern](/de/guides/control-video-audio-codecs.md)\
  Video-/Audio-Voreinstellungen wählen, unterstützte FFmpeg-Optionen überschreiben, FFmpeg-Stack wählen und Codec-Ausgaben ohne eigene Encoding-Flotte testen.
* [Vimeo-Videos sicher importieren, codieren und erneut veröffentlichen](/de/guides/vimeo-import-encode-republish-workflow.md)\
  Eine bestehende Vimeo-Variante importieren, zu kontrolliertem MP4 normalisieren und ein neues privates Vimeo-Video zur Prüfung oder Migration exportieren.
