Protocole RTMP / RTMPS

RTMP (Real-Time Messaging Protocol) est disponible dans Perfect Streamer à la fois en réception (input) et en émission (output), sur la base de FFmpeg avformat. Les scénarios typiques sont la publication d’une chaîne de télévision vers des plateformes externes (YouTube, Facebook et tout récepteur RTMP) et la réception d’un flux depuis un serveur RTMP. La variante sécurisée RTMPS (RTMP sur TLS) est prise en charge dans les deux sens ; dans ce cas, Perfect Streamer agit comme client TLS.

RTMP est un protocole single-program ; les modes input et output RTMP ne sont donc disponibles que pour les flux SPTS.

RTMP input (réception)

Perfect Streamer se connecte en tant que client RTMP à la source rtmp:// ou rtmps:// indiquée et récupère le flux (mode pull). Les flux élémentaires reçus (vidéo H.264 ou HEVC, audio AAC) sont remultiplexés dans le MPEG-TS intégré et injectés dans le pipeline du flux. Il n’existe pas de mode d’attente d’une publication entrante (listen / push) — la réception est toujours initiée par Perfect Streamer lui-même.

Paramètres de RTMP input :

  • URL — l’adresse complète de la session RTMP, par exemple rtmp://origin.example/live/streamkey. Les schémas rtmp et rtmps sont autorisés.

  • Bind Interface — l’interface locale ou l’adresse IP à partir de laquelle la connexion sortante est établie. Par défaut, elle est déterminée par le routage du système d’exploitation.

  • Timeout — délai d’expiration de connexion et de lecture, de 1 à 120 secondes. Valeur par défaut : 10.

  • TLS Verify — pour rtmps, vérifier le certificat du serveur. Désactivé par défaut.

  • Trace — journal détaillé pour le diagnostic de la connexion.

RTMP output (publication)

Perfect Streamer publie un flux SPTS vers un récepteur RTMP externe : il se connecte en tant que client RTMP à l’adresse de publication de la plateforme et envoie le flux (mode publish). RTMP est un format single-program : une seule vidéo (H.264 ou HEVC) et au plus une piste audio AAC sont publiées. Si la source comporte plusieurs pistes, une piste vidéo et une piste audio sont sélectionnées ; les pistes superflues et incompatibles (par exemple un audio non-AAC) ne sont pas transmises. Une source multipiste peut être réduite au préalable à l’aide des filtres PID Accept / PID Reject (voir « Filtrage et modification du MPEG-TS »).

La vidéo HEVC est publiée via Enhanced RTMP — activé par l’option Allow HEVC. Si la plateforme réceptrice ne prend pas en charge HEVC, désactivez l’option : seul H.264 est alors publié.

Avant le début de la publication, le flux est analysé. En l’absence de vidéo compatible, la publication n’a pas lieu. Le résultat de l’analyse est disponible dans les statistiques du flux : un indicateur de possibilité de publication, les codecs vidéo et audio sélectionnés, la liste des pistes abandonnées et l’état de la connexion.

Paramètres de RTMP output :

  • URL — l’adresse de publication de la plateforme, par exemple rtmp://a.rtmp.youtube.com/live2/<stream-key>. Les schémas rtmp et rtmps sont autorisés.

  • Bind Interface — l’interface locale ou l’adresse IP de la connexion sortante. Par défaut — le routage du système d’exploitation.

  • Timeout — délai d’expiration de connexion et d’émission, de 1 à 120 secondes. Valeur par défaut : 10.

  • Allow HEVC — autoriser la publication de la vidéo HEVC via Enhanced RTMP. Activé par défaut ; lorsqu’il est désactivé, seul H.264 est transmis.

  • TLS Verify — pour rtmps, vérifier le certificat du serveur. Désactivé par défaut.

  • Trace — journal détaillé pour le diagnostic de la publication.

Exemples d’adresses de publication :

  • YouTube — rtmp://a.rtmp.youtube.com/live2/<stream-key>

  • Facebook — rtmps://live-api-s.facebook.com:443/rtmp/<stream-key>