Peerjs: Compartir pantalla

Creado en 24 oct. 2013  ·  12Comentarios  ·  Fuente: peers/peerjs

¿Algún plan para agregar pantalla compartida?

Ejemplo: https://www.webrtc-experiment.com/Pluginfree-Screen-Sharing/

Comentario más útil

Para aquellos que buscan Compartir pantalla, como se dijo anteriormente, deben usar un MediaStream de la misma manera que lo harían para las llamadas.

La forma de obtener MediaStream para compartir pantalla es:

let screenStream = await navigator.mediaDevices.getDisplayMedia({
    video: true
});

Entonces simplemente:

peer.call(remote_peer_key, screenStream);

Espero que esto te ahorre 5 minutos;)

Todos 12 comentarios

PeerJS toma un flujo arbitrario al llamar a peer.call . A la pantalla
compartir, solo necesita obtener una transmisión para compartir pantalla de getUserMedia
en lugar de una transmisión de video de la cámara web. PeerJS no diferencia cuando usted
llamar a otro par. Tenga en cuenta que la pantalla compartida requiere que su sitio esté en HTTPS.

Entonces ya debería funcionar.

Eric

El jueves 24 de octubre de 2013 a las 8:52 a.m., kenianbei [email protected] escribió:

¿Algún plan para agregar pantalla compartida?

Ejemplo: https://www.webrtc-experiment.com/Pluginfree-Screen-Sharing/

-
Responda a este correo electrónico directamente o véalo en Gi
.

510-691-3951
http://ericzhang.com

Pruébelo y si tiene problemas, vuelva a abrir el problema y lo solucionaré.

El viernes 25 de octubre de 2013 a las 10:41 a. M., Eric Zhang realmente. [email protected] escribió:

PeerJS toma un flujo arbitrario al llamar a peer.call . A la pantalla
compartir, solo necesita obtener una transmisión para compartir pantalla de getUserMedia
en lugar de una transmisión de video de la cámara web. PeerJS no diferencia cuando usted
llamar a otro par. Tenga en cuenta que la pantalla compartida requiere que su sitio esté en HTTPS.

Entonces ya debería funcionar.

Eric

El jueves 24 de octubre de 2013 a las 8:52 a.m., kenianbei [email protected] escribió:

¿Algún plan para agregar pantalla compartida?

Ejemplo: https://www.webrtc-experiment.com/Pluginfree-Screen-Sharing/

-
Responda a este correo electrónico directamente o véalo en Gi
.

510-691-3951
http://ericzhang.com

510-691-3951
http://ericzhang.com

No había investigado cómo funciona el uso compartido de la pantalla, lo probaré. Gracias por todo su trabajo ... ¡ustedes son geniales!

Hola, ¿puedes ayudarme a integrar el uso compartido de pantalla en PeerJS?

Para aquellos que buscan Compartir pantalla, como se dijo anteriormente, deben usar un MediaStream de la misma manera que lo harían para las llamadas.

La forma de obtener MediaStream para compartir pantalla es:

let screenStream = await navigator.mediaDevices.getDisplayMedia({
    video: true
});

Entonces simplemente:

peer.call(remote_peer_key, screenStream);

Espero que esto te ahorre 5 minutos;)

Para aquellos que buscan Compartir pantalla, como se dijo anteriormente, deben usar un MediaStream de la misma manera que lo harían para las llamadas.

La forma de obtener MediaStream para compartir pantalla es:

let screenStream = await navigator.mediaDevices.getDisplayMedia({
    video: true
});

Entonces simplemente:

peer.call(remote_peer_key, screenStream);

Espero que esto te ahorre 5 minutos;)

¿Podría proporcionar el código fuente para compartir la pantalla en peerjs?
gracias por adelantado

Lo siento, no tengo tiempo para proporcionar un ejemplo de trabajo mínimo para compartir pantalla.
Pero si toma cualquier ejemplo funcional de videollamada y reemplaza la transmisión como se muestra arriba, funcionará.

@theevann tal vez mi código te ayude

Estoy usando en mi proyecto y está funcionando

constructor() {
    this.peer = new Peer();
    this.peer.on('open', (id) => {
      this.id = id;
    });
    this.peer.on('call', (call) => {
      call.answer();
      call.on('stream', (remoteStream) => {
        this.videoElementRef.nativeElement.srcObject = remoteStream;
      });
    });
  }

  public async buttonHandler(evento: Event, remotoId: string): Promise<void> {
    evento.preventDefault();
    const stream = await (navigator.mediaDevices as MyMediaDevices).getDisplayMedia(
      {
        video: { frameRate: 5, width: 1280, height: 720 },
      }
    );
    const call = this.peer.call(remotoId, stream);
  }

@venkpath peer.call (remote_peer_key, screenStream);
esto funcionó, pero cuando finaliza la pantalla compartida, también en el otro lado del usuario ese marco de video no se elimina ... cómo eliminar ese elemento de video después de que finaliza la pantalla compartida

@ saini3911
¿Quizás escuchar el evento "cerrar" en la transmisión y eliminar la etiqueta de video entonces?
https://peerjs.com/docs.html#mediaconnection -on

Lo uso para eliminar los medios originales de la cara del usuario también

Hice mi proyecto en expressjs y preerjs ... después de que otro usuario se conecte a la sala por qué el flujo de medios no se conecta ... al igual que yo, otro usuario tiene que actualizar su pestaña 3-4 veces para obtener el flujo de medios en peerjs ¿por qué?

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

afrokick picture afrokick  ·  5Comentarios

Kitanga picture Kitanga  ·  5Comentarios

l2aelba picture l2aelba  ·  3Comentarios

jameshfisher picture jameshfisher  ·  5Comentarios

veezo2007pk picture veezo2007pk  ·  7Comentarios