Transmitindo mídia para dispositivos usando Reproduzir em (HTML)
[ Este artigo destina-se aos desenvolvedores do Windows 8.x e do Windows Phone 8.x que escrevem aplicativos do Windows Runtime. Se você estiver desenvolvendo para o Windows 10, consulte documentação mais recente ]
Reproduzir em permite que usuários transfiram áudio, vídeo ou imagens facilmente do seu computador para dispositivos em rede.
Introdução
Você pode usar Reproduzir em para permitir que os usuários transmitam áudio, vídeo ou imagens com facilidade de seus computadores para dispositivos eu suas redes domésticas. Por exemplo, um usuário que está assistindo a um vídeo em seu aplicativo pode transmiti-lo para a sua TV para todos na sala assistirem também.
A opção Reproduzir em transfere áudio, vídeo ou imagens para um receptor certificado para essa opção.
Reproduzir em faz parte do botão Dispositivos. Para aplicações que contêm áudio, vídeo ou imagens, o usuário abre o símbolo do evento Devices e visualiza os dispositivos da rede doméstica para os quais o conteúdo de mídia pode ser transmitido.
Usando Reproduzir em no seu aplicativo
Você pode usar Reproduzir em para transmitir o áudio ou vídeo do seu aplicativo, assim como imagens, implementando o contrato do botão Reproduzir em. Para implementar o contrato do botão Reproduzir em no seu aplicativo, registre o evento sourceRequested. Para registrar o evento sourceRequested, obtenha uma referência do PlayToManager atual chamando o método getForCurrentView. Em seguida, você pode chamar addEventHandler no PlayToManager para associar o seu manipulador de eventos ao evento sourceRequested. No seu manipulador de eventos, passe o elemento de mídia do seu aplicativo para o método setSource do objeto PlayToSourceRequestedEventArgs passado para o manipulador de eventos, conforme mostra o exemplo a seguir.
// Play To Contract
private Windows.Media.PlayTo.PlayToManager ptm =
Windows.Media.PlayTo.PlayToManager.GetForCurrentView();
protected override void OnNavigatedTo(NavigationEventArgs e)
{
ptm.SourceRequested += sourceRequestHandler;
}
private void sourceRequestHandler(
Windows.Media.PlayTo.PlayToManager sender,
Windows.Media.PlayTo.PlayToSourceRequestedEventArgs e)
{
try
{
e.SourceRequest.SetSource(mediaElement.PlayToSource);
}
catch (Exception ex)
{
messageBlock.Text += "Exception encountered: " + ex.Message + "\n";
}
}
// Play To Contract
var ptm = Windows.Media.PlayTo.PlayToManager.getForCurrentView();
ptm.addEventListener("sourcerequested", sourceRequestHandler, false);
function sourceRequestHandler(e) {
try {
e.sourceRequest.setSource(mediaElement.msPlayToSource);
} catch (ex) {
id("messageDiv").innerHTML += "Exception encountered: " + ex.message + "<br/>";
}
}
' Play To Contract
Private ptm As Windows.Media.PlayTo.PlayToManager =
Windows.Media.PlayTo.PlayToManager.GetForCurrentView()
Protected Overrides Sub OnNavigatedTo(e As Navigation.NavigationEventArgs)
AddHandler ptm.SourceRequested, AddressOf sourceRequestHandler
End Sub
Private Sub sourceRequestHandler(
sender As Windows.Media.PlayTo.PlayToManager,
e As Windows.Media.PlayTo.PlayToSourceRequestedEventArgs)
Try
e.SourceRequest.SetSource(mediaElement.PlayToSource)
Catch ex As Exception
messageBlock.Text &= "Exception encountered: " & ex.Message & vbCrLf
End Try
End Sub
Quando o usuário seleciona um destino para Reproduzir em do símbolo do evento Devices, Reproduzir em ergue o evento sourceRequested. Então, Reproduzir em transmite o elemento de mídia passado ao método setSource para o dispositivo de destino selecionado pelo usuário.
Se Reproduzir em estiver transmitindo mídia do seu aplicativo para um dispositivo de destino, Reproduzir em continuará transmitindo a mídia do seu aplicativo para o dispositivo de destino mesmo que o seu aplicativo seja movido para o tela de fundo enquanto outro aplicativo está ativo. Para saber mais, veja Iniciando, retomando e executando multitarefas.
Comportamento padrão de Reproduzir em
Por padrão, Reproduzir em está habilitado para todos os elementos de áudio e vídeo da página de um aplicativo. Você pode desabilitar esse comportamento padrão no seu aplicativo, ou você pode identificar quais elementos de áudio ou vídeo não estão disponíveis para o comportamento padrão de Reproduzir em.
Para desabilitar o comportamento padrão de Reproduzir em no seu aplicativo, defina a propriedade defaultSourceSelection do objeto PlayToManager como false.
var ptm = Windows.Media.PlayTo.PlayToManager.getForCurrentView();
ptm.defaultSourceSelection = false;
Para desabilitar o comportamento padrão de Reproduzir em para um elemento específico de áudio ou vídeo, inclua a propriedade x-ms-playToDisabled na marcação do elemento.
<video src="http://sample.microsoft.com/video.mp4" x-ms-playToDisabled />
Você também pode desabilitar o comportamento padrão de Reproduzir em para um elemento em JavaScript definindo a propriedade msPlayToDisabled como true.
Se você possui mais de um elemento de áudio ou vídeo em uma página e quer identificar o primeiro elemento para transmissão via Reproduzir em, você pode incluir a propriedade x-ms-playToPrimary na marcação do elemento.
<video src="http://sample.microsoft.com/showvideo.mp4" x-ms-playToPrimary />
Você também pode identificar o primeiro elemento para transmissão via Reproduzir em JavaScript definindo a propriedade msPlayToPrimary como true.
Diretrizes para o uso de Reproduzir em em um aplicativo
Caso o seu aplicativo permita que os usuários visualizem vídeos ou imagens, ou mesmo que escutem áudio, certifique-se de incluir a funcionalidade de Reproduzir em no seu aplicativo para também permitir que os usuários transmitam a mídia para um dispositivo remoto.
Não esqueça de ativar o botão Dispositivos no aplicativo sempre que houver conteúdo de áudio, vídeo ou imagem disponível para o usuário.
Verifique se os usuários podem continuar navegando em seu aplicativo depois de iniciarem a transmissão de mídia para um dispositivo remoto usando Reproduzir em. Para manter a transmissão de mídia, o elemento de mídia do seu aplicativo deve permanecer dentro do escopo.
Como Reproduzir em faz parte da interface do usuário do Windows, não exija que os usuários naveguem para determinada página ou tela do seu aplicativo para usar Reproduzir em.
Tópicos relacionados
Guia de início rápido: usando Reproduzir em nos aplicativos
Guia de início rápido: transmitindo uma apresentação de slides usando Reproduzir em
Exemplos