Spécifie un flux. Un flux est la représentation d'un flux publié au sein d'une session. Lorsqu'un client appelle la méthode Méthode `Session.publish()`, un nouveau flux est créé. Les propriétés de l'objet `Stream` fournissent des informations sur ce flux.

Lorsqu'un flux est ajouté à une session, l'objet Session déclenche un streamCreatedEvent. Lorsqu'un flux est détruit, l'objet Session déclenche un streamDestroyed événement. L'objet StreamEvent, qui définit ces objets d'événement, dispose d'un stream propriété, qui est un tableau d'objets Stream. Pour plus de détails et un exemple de code, voir Événement de flux.

Lorsqu'une connexion à une session est établie, l'objet Session déclenche un sessionConnected événement, défini par l'objet `SessionConnectEvent`. L' objet `SessionConnectEvent` dispose d'un streams propriété, qui est un tableau d'objets Stream correspondant aux flux présents dans la session à ce moment-là. Pour plus de détails et un exemple de code, voir SessionConnectEvent.

Propriétés

Nom Type Description
connection Connexion L'objet Connection correspondant à la connexion qui publie le flux. Vous pouvez le comparer à l'objet connection propriété de l'objet Session permettant de vérifier si le flux est publié par la page Web locale.
creationTime Numbers L'horodatage de la création du flux. Cette valeur est exprimée en millisecondes. Vous pouvez convertir cette valeur en un objet Date en appelant new Date(creationTime)creationTime est le creationTime de l'objet Stream.
frameRate Numbers Fréquence d'images cible de l'éditeur pour la capture. Initialement dérivée du frameRate propriété transmise à OT.initPublisher(). Cette propriété n'est définie que si l'éditeur spécifie explicitement une fréquence d'images ; dans le cas contraire, elle n'est pas définie. Cette valeur est mise à jour lorsque l'éditeur appelle Publisher.setPreferredFrameRate(). Remarque : Cette valeur correspond à la fréquence d'images cible actuelle de l'éditeur, et non à la fréquence d'images effectivement encodée ou reçue par un abonné. La fréquence d'images encodée peut être inférieure en raison de contraintes de bande passante ou de puissance de calcul, et la fréquence d'images reçue peut varier davantage en fonction des conditions du réseau. Pour obtenir la fréquence d'images décodée réelle pour un abonné, utilisez la video.decodedFrameRate propriété renvoyée par Subscriber.getStats().
hasCaptions Booléen Indique si le flux comporte des sous-titres. Cette propriété peut changer si l'éditeur active ou désactive les sous-titres (en appelant la méthode Publisher.publishCaptions() méthode). Lorsque cela se produit, le Session envoie un streamPropertyChanged événement (voir StreamPropertyChangedEvent).
hasAudio Booléen Indique si le flux contient du son. Cette propriété peut changer si l'éditeur active ou désactive le son (en appelant Publisher.publishAudio()). Lorsque cela se produit, le Session envoie un streamPropertyChanged événement (voir StreamPropertyChangedEvent).
hasVideo Booléen Si le flux contient de la vidéo. Cette propriété peut changer si l'éditeur active ou désactive la vidéo (en appelant Publisher.publishVideo()). Lorsque cela se produit, le Session envoie un streamPropertyChanged événement (voir StreamPropertyChangedEvent).
initials Chaîne Les initiales du flux. Les éditeurs peuvent définir les initiales à afficher lorsque la vidéo est désactivée. (Voir la initials de la propriété properties passé dans le paramètre OT.initPublisher() méthode.)
name Chaîne Nom du flux. Les éditeurs peuvent indiquer un nom lors de la publication d'un flux (à l'aide de la balise publish() méthode de l'objet Session de l'éditeur).
streamId Chaîne L'identifiant unique du flux.
videoDimensions Objet Cet objet possède deux propriétés : width et height (ces deux Numbers). Ils correspondent à la résolution cible de capture de l'éditeur telle qu'elle a été signalée en dernier lieu à la session. Cette valeur est diffusée à tous les participants via la couche de signalisation et peut être consultée aussi bien par les clients éditeurs que par les clients abonnés. Elle est initialement définie à partir du resolution propriété transmise à OT.initPublisher(). Elle est mise à jour lors de l'exécution lorsque le fichier local de l'éditeur <video> L'élément détecte un changement de dimension (par exemple, après un appel à Publisher.setPreferredResolution(), le redimensionnement d'une fenêtre de partage d'écran ou la rotation d'un appareil mobile). Remarque : Ces valeurs correspondent à la résolution cible de capture de l'éditeur, et non à la résolution effectivement encodée ou reçue par un abonné. L'éditeur peut encoder à une résolution inférieure en raison de contraintes de bande passante ou de puissance de calcul, et les abonnés utilisant la vidéo adaptative peuvent recevoir une couche à une résolution encore plus faible. Pour obtenir la résolution réelle décodée sur le client abonné, utilisez Subscriber.videoWidth() et Subscriber.videoHeight(). Lorsque cette propriété change, le Session envoie un streamPropertyChanged événement (voir StreamPropertyChangedEvent).
videoType Chaîne Le type de vidéo — soit "camera", "screen"ou "custom". A "screen" La vidéo utilise le partage d'écran de l'éditeur comme source vidéo ; pour les autres vidéos, cette propriété est définie sur "camera". A "custom" La vidéo utilise un élément VideoTrack comme source vidéo sur la plateforme de publication. (Voir la videoSource de la propriété options passé dans le paramètre OT.initPublisher() méthode.) Le videoType est undefined lorsqu'un flux est uniquement vocal (voir la rubrique Guide vocal). Cette propriété peut changer si un flux diffusé depuis un appareil mobile passe d'un type de vidéo « caméra » à un type de vidéo « partage d'écran ». Lorsque le type de vidéo change, le Session envoie un streamPropertyChanged événement (voir StreamPropertyChangedEvent).