Zuletzt aktualisiert: 10. August

<span aria-hidden="true" id="what-is-transcoding"></span> <span aria-hidden="true" id="was-ist-transcoding"></span>

# Was ist Transcoding?

![Joseph Grabski](/assets/images/teammates/joseph2.png?dpl=dpl_57Yv8CaL8TB1QConNpNYtbZm6CfA)

**Joseph Grabski**

Content-Leiter · Rochester, Vereinigtes Königreich · Bio anzeigen

[](https://x.com/joe%5Fgrabski)[](https://github.com/Missing-Tech)

**Transcoding konvertiert eine vorhandene Mediendatei von einem Codec, Format, einer Bitrate oder Auflösung in eine andere.** Es ist der Schritt, der aus einem unvorhersehbaren Upload Medien macht, die auf den Geräten, Browsern und unter den Netzwerkbedingungen, die Ihr Produkt unterstützt, zuverlässig wiedergegeben werden können.

Dieser Guide erklärt, wann Transcoding notwendig ist, wie es sich von verwandten Vorgängen unterscheidet, und wie Sie einen verwalteten Transcoding-Workflow aufbauen, ohne selbst eine FFmpeg-Infrastruktur betreiben zu müssen.

![Ein Banner mit einem simulierten Terminal, in dessen Konsole der Text „Was ist Transcoding?“ eingegeben wurde.](/_next/static/immutable/media/opengraph-image.0_82rggf6m6or.png)

<span aria-hidden="true" id="what-is-transcoding-1"></span> <span aria-hidden="true" id="was-ist-transcoding-1"></span>

## Was ist Transcoding?

Transcoding decodiert einen vorhandenen Medien-Stream und codiert ihn erneut mit einer anderen Ausgabekonfiguration. Die Ausgabe kann Container, Codec, Auflösung, Bitrate, Bildrate, Audio-Layout oder mehrere dieser Eigenschaften gleichzeitig ändern.

Das folgende Diagramm zeigt den gängigen Ablauf: Die komprimierte Eingabe wird in eine Zwischendarstellung decodiert, etwa PCM für Audio oder YUV für Video, und anschließend in das Zielformat codiert. Wiederholtes verlustbehaftetes Transcoding kann zu \_Generationsverlust\_führen. Bewahren Sie deshalb die Quelle mit der höchsten Qualität auf und leiten Sie Auslieferungsformate daraus ab, statt frühere Ausgaben wiederholt zu konvertieren.

![Ein Flussdiagramm, das zeigt, wie eine Eingabedatei in einen Transcoder fließt, wo das Quellformat in ein Zwischenformat decodiert und anschließend in das Zielformat codiert wird.](/_next/static/immutable/media/2023-07-transcoding-diagram.25m1byih56xom.png)

<span aria-hidden="true" id="when-do-you-need-transcoding"></span>

## Wann benötigen Sie Transcoding?

Typische Transcoding-Jobs lösen eines oder mehrere dieser Probleme:

* **Wiedergabekompatibilität:** Normalisieren Sie Uploads auf Codecs und Container, die von Ihren Zielbrowsern, mobilen Apps, Fernsehgeräten oder Bearbeitungswerkzeugen unterstützt werden.
* **Adaptives Streaming:** Erstellen Sie mehrere Varianten für HLS oder DASH, sodass ein Player die Qualität an die verfügbare Bandbreite anpassen kann.
* **Reduzierung der Dateigröße:** Verringern Sie Auflösung oder Bitrate, oder wechseln Sie zu einem effizienteren Codec, um Speicher- und Auslieferungskosten zu senken.
* **Konsistente Produktausgabe:** Normalisieren Sie Bildrate, Abmessungen, Lautheit, Kanäle und Metadaten, selbst wenn Nutzer Dateien von vielen unterschiedlichen Geräten hochladen.
* **Erstellung von Derivaten:** Erzeugen Sie aus einer Quelle Vorschauen, mobile Varianten, reine Audioausgaben oder Archivmaster.

<span aria-hidden="true" id="transcoding-vs-encoding-vs-transmuxing"></span>

## Transcoding vs. Encoding vs. Transmuxing

Diese Begriffe beschreiben verwandte, aber unterschiedliche Vorgänge:

|Vorgang|Was sich ändert|Decodieren und neu codieren?|Beispiel|
|-|-|-|-|
|Encoding|Rohe oder unkomprimierte Medien werden zu komprimierten Medien|Ja|Kameraframes zu H.264|
|Transcoding|Vorhandene komprimierte Medien erhalten eine neue Auslieferungskonfiguration|Ja|HEVC 4K zu H.264 1080p|
|Transmuxing|Der Container ändert sich, während die codierten Streams unverändert bleiben|Nein|H.264 von MOV zu MP4|

Transmuxing ist schneller und vermeidet Generationsverlust, funktioniert jedoch nur, wenn die vorhandenen Streams bereits für das Ziel geeignet sind. Muss sich Codec, Auflösung, Bitrate oder eine andere Stream-Eigenschaft ändern, benötigen Sie Transcoding.

<span aria-hidden="true" id="how-can-i-transcode-videos-with-transloadit"></span> <span aria-hidden="true" id="wie-kann-ich-videos-mit-transloadit-transkodieren"></span> <span aria-hidden="true" id="wie-kann-ich-videos-mit-transloadit-transcodieren"></span>

## Wie kann ich Videos mit Transloadit transkodieren?

Sie können eine hausinterne Transcoding-Pipeline mit [FFmpeg⁠](https://ffmpeg.org/) aufbauen, doch Produktionssysteme benötigen zusätzlich Upload-Verarbeitung, Queues, Retries, Skalierung, Monitoring, Speicherintegration und Auslieferung. Transloadit stellt diese Bestandteile als eine verwaltete Datei-Verarbeitungs-API bereit.

Der [Video Encode Robot](/de/docs/robots/video-encode.md) wendet Voreinstellungen oder individuelle FFmpeg-Parameter an, während der [Video Adaptive Robot](/de/docs/robots/video-adaptive.md) adaptive HLS- oder MPEG-DASH-Pakete erstellt. Für reine Audio-Workflows eignet sich der[Audio Encode Robot](/de/docs/robots/audio-encode.md).

Wie wäre es mit einem Beispiel? Das Template unten zeigt, wie Sie jedes hochgeladene Video mit [Uppy⁠](https://uppy.io/) browserkompatibel machen.

```
<!-- This pulls Uppy from our CDN -->
<!-- For smaller self-hosted bundles, install Uppy and plugins manually: -->
<!-- npm i --save @uppy/core @uppy/dashboard @uppy/remote-sources @uppy/transloadit ... -->
<link
  href="https://releases.transloadit.com/uppy/v3.10.0/uppy.min.css"
  rel="stylesheet"
/>
<button id="browse">Select Files</button>
<script type="module">
  import {
    Uppy,
    Dashboard,
    ImageEditor,
    RemoteSources,
    Transloadit,
  } from 'https://releases.transloadit.com/uppy/v3.10.0/uppy.min.mjs'
  const uppy = new Uppy()
    .use(Transloadit, {
      waitForEncoding: true,
      alwaysRunAssembly: true,
      assemblyOptions: {
        params: {
          // It's often better store encoding instructions in your account
          // and use a `template_id` instead of adding these steps inline
          steps: {
            ':original': {
              robot: '/upload/handle',
            },
            browser720_webm_encoded: {
              use: ':original',
              robot: '/video/encode',
              result: true,
              ffmpeg_stack: 'v7',
              height: 720,
              preset: 'webm',
              turbo: false,
              width: 1280,
            },
            browser720_h264_encoded: {
              use: ':original',
              robot: '/video/encode',
              result: true,
              ffmpeg_stack: 'v7',
              height: 720,
              preset: 'ipad-high',
              turbo: false,
              width: 1280,
            },
            thumbed: {
              use: 'browser720_h264_encoded',
              robot: '/video/thumbs',
              result: true,
              count: 1,
              ffmpeg_stack: 'v7',
              format: 'jpg',
              height: 720,
              resize_strategy: 'fit',
              width: 1280,
            },
            exported: {
              use: ['browser720_webm_encoded', 'browser720_h264_encoded', 'thumbed', ':original'],
              robot: '/s3/store',
              credentials: 'demo_s3_credentials',
              url_prefix: 'https://demos.transloadit.com/',
            },
          },
        },
      },
    })
    .use(Dashboard, { trigger: '#browse' })
    .use(ImageEditor, { target: Dashboard })
    .use(RemoteSources, {
      companionUrl: 'https://api2.transloadit.com/companion',
    })
    .on('complete', ({ transloadit }) => {
      // Due to `waitForEncoding:true` this is fired after encoding is done.
      // Alternatively, set `waitForEncoding` to `false` and provide a `notify_url`
      console.log(transloadit) // Array of Assembly Statuses
      for (const assembly of transloadit) {
        console.log(assembly.results) // Array of all encoding results
      }
    })
    .on('error', (error) => {
      console.error(error)
    })
</script>

```

[Dokumentation lesen](/de/docs/sdks/uppy.md)

Sie können auch verwandte Workflows ausprobieren, ohne Integrationscode zu schreiben:

[![Audio-Encoding](/assets/images/services/audio-encoding.svg?dpl=dpl_57Yv8CaL8TB1QConNpNYtbZm6CfA)Audio-EncodingHochwertiges FLAC-Encoding EN (English)](/demos/audio-encoding/encode-into-flac.md)

[![Bildverarbeitung](/assets/images/services/image-processing.svg?dpl=dpl_57Yv8CaL8TB1QConNpNYtbZm6CfA)BildverarbeitungBilddateien ohne Qualitätsverlust um bis zu 80 % verkleinern EN (English)](/demos/image-processing/reduce-image-file-sizes.md)

[![Video-Encoding](/assets/images/services/video-encoding.svg?dpl=dpl_57Yv8CaL8TB1QConNpNYtbZm6CfA)Video-EncodingEine Werbeanzeige zu einem bestimmten Zeitpunkt in ein Video einfügen EN (English)](/demos/video-encoding/insert-ad-into-video-at-specific-time.md)

<span aria-hidden="true" id="build-your-first-transcoding-workflow"></span> <span aria-hidden="true" id="erstellen-sie-ihren-ersten-transcoding-workflow"></span>

## Erstellen Sie Ihren ersten Transcoding-Workflow

Starten Sie mit der obigen browserkompatiblen Demo und passen Sie deren Voreinstellung an die gewünschte Ausgabe Ihres Produkts an. Sie können das entstehendeTemplate über die API ausführen, es mit Uppy für Browser-Uploads verbinden oder einen Export-Robot hinzufügen, um Ergebnisse direkt an Ihren Storage-Anbieter zu liefern.

Wenn Sie Hilfe bei der Wahl von Codecs, Varianten oder Streaming-Formaten benötigen,[sprechen Sie mit unserem Team](mailto:support@transloadit.com).

[#assembly](/de/blog/tags/assembly.md)[#walkthrough](/de/blog/tags/walkthrough.md)[#workflow](/de/blog/tags/workflow.md)

### 👩‍💻 Werden Sie Teil einer Community mit 20k+ Entwicklern

Abonnieren Sie unseren [monatlichen Newsletter EN (English)](/newsletters.md) und erhalten Sie direkte Links zu 3 exklusiven Tech-Beiträgen und 2 Produkt-Updates. Nicht mehr und nicht weniger.

Ihre E-Mail:

Zugang erhalten

## Datei-Uploads und Encoding leicht gemacht.

Transloadit vereinfacht das Dateihandling für Entwickler; Marken wie Coursera und The New York Times vertrauen auf die Plattform. Wir stehen für eine zuverlässige API, erstklassigen Support und ein starkes Engagement für Open Source; Projekte wie [Uppy⁠](https://uppy.io) und [tus⁠](https://tus.io) setzen Standards in der Dateiverarbeitung.

[Registrieren](/c/)[Demo buchen](https://survey.typeform.com/to/kRg47Xi5)

Keine Kreditkarte erforderlich

Jederzeit kündbar
