Peerjs: Compartilhamento de tela

Criado em 24 out. 2013  ·  12Comentários  ·  Fonte: peers/peerjs

Algum plano para adicionar compartilhamento de tela?

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

Comentários muito úteis

Para aqueles que procuram Compartilhamento de Tela, como dito acima, você precisa usar um MediaStream da mesma forma que faria para uma chamada.

A maneira de obter o MediaStream para compartilhamento de tela é:

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

Então simplesmente:

peer.call(remote_peer_key, screenStream);

Espero que economize 5 minutos;)

Todos 12 comentários

PeerJS recebe um fluxo arbitrário ao chamar peer.call . Para a tela
compartilhar, você só precisa obter um fluxo de compartilhamento de tela de getUserMedia
em vez de um fluxo de vídeo da webcam. PeerJS não diferencia quando você
ligue para outro par. Observe que o compartilhamento de tela requer que seu site esteja em HTTPS.

Portanto, já deve funcionar.

Eric

Na quinta-feira, 24 de outubro de 2013 às 8h52, kenianbei [email protected] escreveu:

Algum plano para adicionar compartilhamento de tela?

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

-
Responda a este e-mail diretamente ou visualize-o em Gi tHubhttps: //github.com/peers/peerjs/issues/96
.

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

Experimente e se você tiver problemas, reabra o problema e eu vou corrigi-lo

Na sexta-feira, 25 de outubro de 2013 às 10:41, Eric Zhang realmente. [email protected] escreveu:

PeerJS recebe um fluxo arbitrário ao chamar peer.call . Para a tela
compartilhar, você só precisa obter um fluxo de compartilhamento de tela de getUserMedia
em vez de um fluxo de vídeo da webcam. PeerJS não diferencia quando você
ligue para outro par. Observe que o compartilhamento de tela requer que seu site esteja em HTTPS.

Portanto, já deve funcionar.

Eric

Em quinta-feira, 24 de outubro de 2013 às 8h52, kenianbei [email protected] :

Algum plano para adicionar compartilhamento de tela?

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

-
Responda a este e-mail diretamente ou visualize-o em Gi tHubhttps: //github.com/peers/peerjs/issues/96
.

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

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

Eu não tinha feito minha pesquisa sobre como funciona o compartilhamento de tela, vou testá-lo. Obrigado por todo o seu trabalho ... vocês são demais!

Olá, você pode me ajudar a integrar o compartilhamento de tela no PeerJS.

Para aqueles que procuram Compartilhamento de Tela, como dito acima, você precisa usar um MediaStream da mesma forma que faria para uma chamada.

A maneira de obter o MediaStream para compartilhamento de tela é:

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

Então simplesmente:

peer.call(remote_peer_key, screenStream);

Espero que economize 5 minutos;)

Para aqueles que procuram Compartilhamento de Tela, como dito acima, você precisa usar um MediaStream da mesma forma que faria para uma chamada.

A maneira de obter o MediaStream para compartilhamento de tela é:

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

Então simplesmente:

peer.call(remote_peer_key, screenStream);

Espero que economize 5 minutos;)

você poderia fornecer o código-fonte para compartilhamento de tela em peerjs?
do que com antecedência

Desculpe, não tenho tempo para fornecer um exemplo mínimo de trabalho para compartilhamento de tela.
Mas se você pegar qualquer exemplo funcional de videochamada e substituir o stream conforme mostrado acima, ele funcionará.

@theevann talvez meu código o ajude

Estou usando no meu projeto e 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);
isso funcionou, mas quando o compartilhamento de tela é encerrado, o quadro do vídeo também não é removido do outro lado do usuário. como remover esse elemento de vídeo após o término do compartilhamento de tela

@ saini3911
Talvez ouça o evento "fechar" no stream e remova sua tag de vídeo então?
https://peerjs.com/docs.html#mediaconnection -on

eu uso isso, mas também remove a mídia original da face do usuário

Eu fiz meu projeto em expressjs e preerjs .. depois que outro usuário se conectar à sala, por que o fluxo de mídia não está conectado .. como eu, outro usuário tem que atualizar a guia 3-4 vez para obter o fluxo de mídia em peerjs, por quê?

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

l2aelba picture l2aelba  ·  3Comentários

furozen picture furozen  ·  9Comentários

RikdeVos picture RikdeVos  ·  6Comentários

UnsungHero97 picture UnsungHero97  ·  5Comentários

kidandcat picture kidandcat  ·  8Comentários