FFmpeg – Tutorial zur Konfiguration von Videostreaming

FFmpeg als Encoder für Videostreaming verwenden

Folgen Sie dieser Anleitung, um FFmpeg als Live-Video-Encoder zu konfigurieren und direkt über RTMP an Ihren Primcast-Videoserver zu streamen. Die gesamte Konfiguration erfolgt über die Kommandozeile.

Befehlszeilenanleitung RTMP-Streaming 24/7-Live-Support

Schritt-für-Schritt-Anleitung

Jeder Schritt erklärt einen Teil des FFmpeg-Befehls. Alle in UPPERCASE angezeigten Werte müssen durch die korrekten Daten Ihres Primcast-Kontos ersetzt werden.

1

Der vollständige FFmpeg-Befehl

Dies ist der vollständige Beispielbefehl. Kopieren Sie ihn und ersetzen Sie die Platzhalter durch Ihre Kontodaten. In den folgenden Abschnitten werden die einzelnen Optionen erläutert.

 ffmpeg -i 'DATEI oder LINK' \ -crf 30 -preset ultrafast \ -acodec aac -strict experimental -ar 44100 -ac 2 -b:a 96k \ -vcodec libx264 -r 25 -b:v 300k \ -f flv \ 'rtmp://BENUTZERNAME:PASSWORT@STREAMING-ADRESSE:1935/ANWENDUNGSNAME/livestream' 
2

Konfigurieren Sie Ihre Eingabequelle ( -i )

Der Parameter -i teilt FFmpeg mit, woher der Eingabestream stammen soll. Dies kann eine Datei, ein Aufnahmegerät oder ein anderer Stream sein:

  • Gerät: -i video="screen-capture-recorder":audio="Stereo Mix (IDT High Definition)"
  • Datei: -i '/home/user/sample.mp4'
  • Stream: -i 'udp://127.0.0.0:1000/'
3

Videoqualitäts- und Kodierungsflags

Diese Flags steuern, wie das Video codiert wird:

  • -crf 30 – Legt den Constant Rate Factor (CRF) fest. Sorgt für eine relativ gleichbleibende Videoqualität bei variierender Bitrate in komplexen Szenen. Ein Wert von 30 ermöglicht etwas niedrigere Qualität und Bitrate.
  • -preset ultrafast - Bietet die schnellstmögliche Codierungsgeschwindigkeit.
  • -vcodec libx264 - Legt den Videocodec auf H.264 fest.
  • -r 25 - Legt die Bildrate auf 25 fps fest.
  • -b:v 300k - Legt die Videobitrate auf 300 kbps fest.
4

Audio-Codierungsflags

Diese Flags steuern, wie das Audio codiert wird:

  • -acodec aac - Stellt den Audio-Codec auf AAC (interner AAC-Encoder) ein.
  • -strict experimental - Ermöglicht die Verwendung experimenteller Codecs. Erforderlich, da der interne AAC-Encoder experimentell ist.
  • -ar 44100 - Legt die Audio-Abtastrate auf 44.100 Hz fest.
  • -ac 2 - Gibt zwei Audiokanäle (Stereo) an.
  • -b:a 96k - Legt die Audio-Bitrate auf 96 kbps fest.
5

Ausgabeformat und RTMP-Ziel

-f flv verpackt den Ausgabestream in einen FLV-Container, was für RTMP erforderlich ist.

Das letzte Argument ist die RTMP-Ziel-URL. Ersetzen Sie jeden Platzhalter durch Ihre Kontodaten:

 rtmp://BENUTZERNAME:PASSWORT@STREAMING-ADRESSE:1935/ANWENDUNGSNAME/livestream
  • Ersetzen Sie USERNAME und PASSWORD durch die Zugangsdaten Ihres Primcast-Kontos.
  • Ersetzen Sie STREAMING_ADDRESS durch die Streaming-Adresse aus Ihrem Konto-Dashboard (z. B. test.primcast.com ).
  • Ersetzen Sie APPLICATION_NAME durch den Anwendungsnamen, der in Ihrem Dashboard angezeigt wird.

Sobald der Stream gestartet ist, können Sie die Ausgabe über den HLS-Link in einem Player wie VLC ansehen oder sie mithilfe des Links „Player generieren“ in Ihrem Dashboard einbetten.

Häufig gestellte Fragen

Häufig gestellte Fragen zur Verwendung von FFmpeg für Live-Video-Streaming mit Primcast.

Wo finde ich meine Streaming-Adresse, meinen Benutzernamen und mein Passwort?

Ihre Streaming-Adresse, Ihr Benutzername, Ihr Passwort und der Anwendungsname sind alle in Ihrem Primcast-Konto-Dashboard verfügbar. Sie finden diese Informationen auch in Ihrer Aktivierungs-E-Mail.

Kann ich von einer Datei anstatt von einer Live-Quelle streamen?

Ja. Verwenden Sie den Parameter -i '/path/to/file.mp4' um von einer lokalen Datei zu streamen. FFmpeg kodiert die Datei und sendet sie an Ihren RTMP-Server, als wäre es ein Live-Stream.

Welche Video- und Audio-Codecs benötigt Primcast?

Primcast-Videoserver akzeptieren H.264-Video ( libx264 ) und AAC-Audio ( aac ), die in einem FLV-Container über RTMP übertragen werden. Dies sind die Standardeinstellungen im Beispielbefehl.

Welche Bitrate sollte ich verwenden?

Das Beispiel verwendet 300 kbit/s für Video ( -b:v 300k ) und 96 kbit/s für Audio ( -b:a 96k ). Sie können die Videobitrate für eine bessere Qualität erhöhen, sofern Ihre Upload-Bandbreite dies zulässt. Die meisten Streams funktionieren optimal mit einer Videobitrate zwischen 500 kbit/s und 2500 kbit/s.

Wie kann ich meinen Stream ansehen, sobald er live ist?

Sobald FFmpeg streamt, können Sie die Übertragung über den HLS-Link in Ihrem Primcast-Dashboard mit einem Player wie VLC ansehen. Alternativ können Sie über den Link „Player generieren“ in Ihrem Konto einen einbettbaren Player erstellen.

Bereit für den Livegang?

Unsere Audio- und Video-Streaming-Dienste beinhalten unbegrenzte Verbindungen, unbegrenzte Bandbreite und einen Experten-Support rund um die Uhr, damit Sie immer auf Sendung bleiben.