Google está empenhada em fazer avançar a equidade racial para as comunidades negras. Veja como.
Esta página foi traduzida pela API Cloud Translation.
Switch to English

captura e restrições de mídia

A parte media das tampas WebRTC como hardware de acesso capaz de capturar vídeo e áudio, como câmeras e microfones, bem como a forma como a mídia córregos trabalho. Abrange também a mídia de exibição, que é como um aplicativo pode fazer captura de tela.

dispositivos de mídia

Todas as câmeras e microfones que são suportadas pelo navegador são acessados e gerenciados através do navigator.mediaDevices objeto. Os aplicativos podem recuperar a lista atual de dispositivos conectados e também escutar alterações, uma vez que muitas câmeras e microhpones conectar através de USB e pode ser conectado e desconectado durante o ciclo de vida da aplicação. Uma vez que o estado de um dispositivo de mídia pode mudar a qualquer momento, recomenda-se que os aplicativos registrar para alterações de dispositivo, a fim de corretamente mudanças do punho.

Restrições

Ao acessar dispositivos de mídia, é uma boa prática para fornecer como restrições mais detalhado possível. Embora seja possível abrir a câmera padrão e um microfone com um simples restrição, pode proporcionar um fluxo de mídia que está longe de ser o mais ideal para a aplicação.

Os condicionalismos específicos são definidos em um MediaTrackConstraint objeto, uma para áudio e um para vídeo. Os atributos deste objecto são de tipo ConstraintLong , ConstraintBoolean , ConstraintDouble ou ConstraintDOMString . Estes podem ser quer um valor específico (por exemplo, um número, booleana ou cadeia), um intervalo ( LongRange ou DoubleRange com um valor mínimo e máximo) ou de um objecto com uma qualquer ideal ou exact definição. Para um valor específico, o navegador irá tentar escolher algo mais próximo possível. Para um intervalo, será usado o melhor valor nesse intervalo. Quando exact for especificado, somente fluxos de mídia que correspondem exatamente essa restrição será devolvido.

Perto

 // Camera with a resolution as close to 640x480 as possible
{
    "video": {
        "width": 640,
        "height": 480
    }
}
 

Alcance

 // Camera with a resolution in the range 640x480 to 1024x768
{
    "video": {
        "width": {
            "min": 640,
            "max": 1024
        },
        "height": {
            "min": 480,
            "max": 768
        }
    }
}
 

Exato

 // Camera with the exact resolution of 1024x768
{
    "video": {
        "width": {
            "exact": 1024
        },
        "height": {
            "exact": 768
        }
    }
}
 

Para determinar a configuração real de uma determinada faixa de um fluxo de mídia tem, podemos chamar MediaStreamTrack.getSettings() que retorna os MediaTrackSettings actualmente aplicadas.

Também é possível atualizar as restrições de uma faixa de um dispositivo de mídia abrimos, chamando applyConstraints() na pista. Isso permite que um re-configurar a aplicação de um dispositivo de mídia sem ter que fechar o fluxo existente.

mídia de exibição

Um aplicativo que quer ser capaz de realizar a captura de tela e gravação deve usar a tela API de mídia. A função getDisplayMedia() (que faz parte do navigator.mediaDevices é semelhante ao getUserMedia() e é utilizada para a finalidade de abrir o conteúdo do visor (ou uma porção dela, tal como uma janela). A devolvido MediaStream funciona o mesmo que ao utilizar getUserMedia() .

As restrições para getDisplayMedia() diferem das utilizadas para o vídeo regular ou entrada de áudio.

 {
    video: {
        cursor: 'always' | 'motion' | 'never',
        displaySurface: 'application' | 'browser' | 'monitor' | 'window'
    }
}
 

O snipet código acima mostra como as restrições especiais para gravação de tela funciona. Note-se que estes poderão não ser suportados por todos os navegadores que possuem suporte de mídia de exibição.

Riachos e trilhas

Um MediaStream representa um fluxo de conteúdos, que consiste em faixas ( MediaStreamTrack ) de áudio e vídeo. Você pode recuperar todas as faixas de MediaStream chamando MediaStream.getTracks() , que retorna uma matriz de MediaStreamTrack objetos.

MediaStreamTrack

A MediaStreamTrack tem um kind de propriedade que seja audio ou video , indicando o tipo de mídia que representa. Cada faixa pode ser cortado, alternando sua enabled propriedade. A pista tem uma propriedade booleana remote que indica se ele é proveniente de um RTCPeerConnection e vindo de um ponto remoto.