---
title: Protocole SRT
url: https://doc.pstreamer.tv/fr/manual/srt.html
lang: fr
product: Perfect Streamer
version: 1.13.3.445
---

# Protocole SRT

Protocole ouvert développé par Haivision. Basé sur UDT, il est largement répandu et offre de bonnes caractéristiques de compensation des pertes de paquets.

Cas d’usage :

- Peer entre instances de **Perfect Streamer**. **Sur l’émetteur** — configuré dans l’output, mode listen (par défaut). Dans ce mode, plusieurs récepteurs peuvent être connectés. Pour l’autorisation, les logins des récepteurs doivent être renseignés dans **Peer**. **Sur le récepteur** — configuré dans l’input. L’hôte et le port de l’émetteur sont indiqués, ainsi que le login et le mot de passe. Pour transmettre le login et le mot de passe, le streamer SRT utilise le streamid au format `login|password`.
- Peer entre **Perfect Streamer** et tout streamer SRT tiers. **Sur l’émetteur**, on peut configurer le mode client SRT en désactivant listen. Le streamid SRT, si nécessaire, est saisi dans le champ login. Pour le mode listen, l’autorisation par adresse IP est disponible — saisie dans le champ login dans **Peer**. **Sur le récepteur**, on peut activer le mode listen, définir le streamid SRT dans le champ login et indiquer également l’hôte depuis lequel la réception est autorisée.

Fonctionnement en mode Listener : réception et émission du flux d’une chaîne avec indication du port d’écoute.

Les ports en mode listen doivent être uniques.

Le chiffrement des flux (Crypto protection) est disponible, AES-128 est utilisé. Pour l’activer des deux côtés, saisir **Crypt Passphrase** comme clé partagée.

Si l’émetteur utilise le mode listen (par défaut), l’initiation de la connexion provient du récepteur, l’émetteur exige une authentification et les récepteurs sont enregistrés dans peer. Login et mot de passe sont obligatoires.

Les options du protocole SRT correspondent à la description : [API-socket-options.md](https://github.com/Haivision/srt/blob/master/docs/API/API-socket-options.md)

**Reorder (SRTO_LOSSMAXTTL)** — Valeur jusqu’à laquelle la tolérance de réordonnancement peut augmenter. La tolérance de réordonnancement est le nombre de paquets qui doivent suivre un « trou » détecté dans les numéros de séquence des paquets entrants avant qu’un rapport de perte ne soit envoyé (dans l’espoir que le trou soit dû à un réordonnancement des paquets plutôt qu’à une perte). La valeur de la tolérance de réordonnancement part de 0 et augmente lorsqu’un réordonnancement de paquets est détecté. Cela se produit lorsqu’un paquet « tardif » est reçu avec un numéro de séquence supérieur à celui du dernier paquet reçu, mais sans l’indicateur de retransmission. Lors d’une telle détection, la tolérance de réordonnancement est fixée à la valeur de l’intervalle entre le dernier numéro et le numéro de séquence de ce paquet, mais sans dépasser la valeur définie par le paramètre SRTO_LOSSMAXTTL. Par défaut, cette valeur est de 0, ce qui signifie que ce mécanisme est désactivé. [SRTO_LOSSMAXTTL](https://github.com/Haivision/srt/blob/master/docs/API/API-socket-options.md#SRTO_LOSSMAXTTL)

**Overhead (SRTO_OHEADBW, %)** — Surdébit pour la récupération de la bande passante au-delà du débit d’entrée (voir SRTO_INPUTBW), en pourcentage du débit d’entrée. Effectif uniquement si SRTO_MAXBW est à 0. Émetteur : configurable par l’utilisateur ; par défaut : 25 %.

*Recommandations :* le surdébit est destiné à fournir une bande passante supplémentaire au cas où un paquet aurait consommé une partie de la bande passante mais aurait été perdu et devrait être retransmis. La bande passante maximale effective doit donc être suffisamment supérieure au bitrate de votre flux pour laisser de la place aux retransmissions, mais limitée pour que les paquets retransmis n’entraînent pas de pic d’utilisation lors de la perte de gros groupes de paquets. Ne définissez pas une valeur trop basse et évitez 0 si SRTO_INPUTBW est à 0 (automatique). Sinon, votre flux sera rapidement interrompu à toute hausse des pertes. [SRTO_OHEADBW](https://github.com/Haivision/srt/blob/master/docs/API/API-socket-options.md#SRTO_OHEADBW)

**Max Band (SRTO_MAXBW, bps)** — Cette option n’est effective que lorsque SRTO_MAXBW est égal à 0 (relatif). Elle contrôle la bande passante maximale conjointement avec SRTO_OHEADBW selon la formule : MAXBW = INPUTBW * (100 + OHEADBW) / 100. Si cette option est à 0 (automatique), la valeur réelle de INPUTBW sera estimée à partir du débit du flux d’entrée (cas où l’application appelle la fonction srt_send*) pendant la transmission. La valeur minimale admissible de l’estimation est limitée par SRTO_MININPUTBW, c’est-à-dire INPUTBW = MAX(INPUTBW_ESTIMATE; MININPUTBW).

*Recommandations :* définissez ce paramètre sur le bitrate attendu de votre diffusion et conservez la valeur par défaut de 25 % pour SRTO_OHEADBW. [SRTO_INPUTBW](https://github.com/Haivision/srt/blob/master/docs/API/API-socket-options.md#srto_inputbw)

**Timeout (SRTO_CONNTIMEO, ms)** — Valeur du timeout de connexion en millisecondes. C’est la durée pendant laquelle l’objet en cours de connexion essaie de se connecter et attend une réponse du point distant avant de mettre fin à la connexion avec un code d’erreur. [SRTO_CONNTIMEO](https://github.com/Haivision/srt/blob/master/docs/API/API-socket-options.md#SRTO_CONNTIMEO)
