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)où 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). |