Idioma: HTML | XAML

Guia de início rápido: usando Reproduzir em em aplicativos (HTML)

Applies to Windows only

Você pode usar o recurso Reproduzir em para permitir que os usuários executem facilmente o streaming de áudio, vídeo ou imagens, de seus computadores para dispositivos nas redes domésticas. Este tópico mostra como usar Reproduzir em no aplicativo da Windows Store para permitir que os usuários façam o streaming de mídia em um dispositivo de destino.

Objetivo: Use Reproduzir em para realizar streaming de mídia em um dispositivo de destino.

Pré-requisitos

Microsoft Visual Studio

Instruções

1. Criar um novo projeto e permitir o acesso a bibliotecas de mídia

  1. Abra o Visual Studio e selecione Novo Projeto no menu Arquivo. Na seção Javascript, selecione Aplicativo em Branco. Nomeie o aplicativo PlayToSample e clique em OK.
  2. Abra o arquivo package.appxmanifest e selecione a guia Recursos. Selecione os recursos Biblioteca de Músicas, Biblioteca de Imagens e Biblioteca de Vídeos para permitir que o aplicativo acesse as bibliotecas de mídia em um computador. Feche e salve o arquivo de manifesto.

2. Adicionar a interface do usuário HTML

  • Abra o arquivo Default.html e adicione o seguinte HTML à seção <body>.
    
      <div style="position:fixed;width:300px;height:30px;">
          <button id="videoButton">Video</button>
          <button id="audioButton">Audio</button>
          <button id="imageButton">Image</button>
      </div>
      <div id="displayDiv" style="position:fixed;top:40px;height:360px">
        <div id="videoDiv">
          <video id="vplayer" height="338" width="600" controls >
             Cannot play video.
          </video>
        </div>
        <div id="audioDiv">
          <audio id="aplayer" controls >Cannot play audio.</audio>
        </div>
        <div id="imageDiv">
          <img id="iplayer" height="338" width="600" alt="image">
        </div>
         <br/>
      </div>
       
      <div id="messageDiv" style="position:fixed;top:400px;height:auto"></div>
    
    
    

3. Adicionar código de inicialização

O código desta etapa cria os manipuladores de eventos de clique dos botões HTML. A função showDiv alterna entre os elementos de mídia HTML5 (<video>, <audio> ou <img>) visíveis e mantém uma referência ao elemento ativo. Essa referência é passada ao PlayToManager para realizar streaming da origem do elemento para o destino de Reproduzir em. Uma função de atalho (id) é incluída para permitir o acesso conveniente à função getElementById.

  • Abra a pasta js. Abra o arquivo Default.js e adicione o código a seguir no lugar da função WinJS.Application.onmainwindowactivated padrão.
    
    app.onactivated = function (eventObject) {
        if (eventObject.detail.kind === Windows.ApplicationModel.Activation.ActivationKind.launch) {
            id("videoButton").addEventListener("click", videoButtonClick, false);
            id("audioButton").addEventListener("click", audioButtonClick, false);
            id("imageButton").addEventListener("click", imageButtonClick, false);
    
            videoButtonClick();
    
            WinJS.UI.processAll();
        }
    };
    
    function id(tagName) {
        return document.getElementById(tagName);
    }
    
    // Save a reference to the current media element for PlayTo.
    var mediaElement;
    
    function showDiv(divName) {
        id("audioDiv").style.display = "none";
        id("aplayer").src = null;
        id("imageDiv").style.display = "none";
        id("videoDiv").style.display = "none";
        id("vplayer").src = null;
    
        id(divName).style.display = "block";
    
        switch (divName) {
            case "audioDiv":
                mediaElement = id("aplayer");
                break;
            case "videoDiv":
                mediaElement = id("vplayer");
                break;
            case "imageDiv":
                mediaElement = id("iplayer");
                break;
        }
    }
    
    function videoButtonClick() {
        showDiv("videoDiv");
        getVideoFile(0);
    }
    
    function audioButtonClick() {
        showDiv("audioDiv");
        getAudioFile(0);
    }
    
    function imageButtonClick() {
        showDiv("imageDiv");
        getImageFile(0);
    }
    
    
    

4. Adicionar código para obter a origem de mídia das bibliotecas de mídia locais

O código desta etapa é chamado durante os eventos de clique dos botões HTML. Cada função pega o primeiro item encontrado na biblioteca de mídia selecionada e o reproduz ou o exibe no elemento de mídia HTML5 relacionado. Por exemplo, quando você clica no botão Vídeo do aplicativo, a função getVideoFile obtém o primeiro vídeo dos Vídeos, o define como origem da marca <video> e o reproduz.

  • No arquivo Default.js file, adicione o seguinte código após o código da etapa anterior.
    
    function getVideoFile(fileIndex) {
        try {
            var videosLibrary = Windows.Storage.KnownFolders.videosLibrary;
            videosLibrary.getFilesAsync().then(function (resultLibrary) {
                if (resultLibrary.length > 0) {
                    id("messageDiv").innerHTML +=
                        "Play video: " + resultLibrary[fileIndex].name + "<br/>";
                    id("vplayer").src = URL.createObjectURL(resultLibrary[fileIndex]);
                    id("vplayer").play();
                }
            });
        } catch (ex) {
            id("messageDiv").innerHTML +=
                "Exception encountered: " + ex.message + "<br/>";
        }
    }
    
    function getAudioFile(fileIndex) {
        try {
            var musicLibrary = Windows.Storage.KnownFolders.musicLibrary;
            musicLibrary.getFilesAsync().then(function (resultLibrary) {
                if (resultLibrary.length > 0) {
                    id("messageDiv").innerHTML +=
                        "Play audio: " + resultLibrary[fileIndex].name + "<br/>";
                    id("aplayer").src = URL.createObjectURL(resultLibrary[fileIndex]);
                    id("aplayer").play();
                }
            });
        } catch (ex) {
            id("messageDiv").innerHTML +=
                "Exception encountered: " + ex.message + "<br/>";
        }
    }
    
    function getImageFile(fileIndex) {
        try {
            var picturesLibrary = Windows.Storage.KnownFolders.picturesLibrary;
            picturesLibrary.getFilesAsync().then(function (resultLibrary) {
                if (resultLibrary.length > 0) {
                    id("messageDiv").innerHTML +=
                        "Show image: " + resultLibrary[fileIndex].name + "<br/>";
                    id("iplayer").src = URL.createObjectURL(resultLibrary[fileIndex]);
                }
            });
        } catch (ex) {
            id("messageDiv").innerHTML +=
                "Exception encountered: " + ex.message + "<br/>";
        }
    }
    
    
    

5. Adicionar o código Reproduzir em

O código desta etapa é tudo o que você precisa para habilitar Reproduzir em no aplicativo. Ele pega uma referência ao PlayToManager para o aplicativo atual e associa o manipulador do evento sourcerequested. No manipulador de evento sourcerequested, transfira a propriedade msPlayToSource do elemento de mídia HTML5 ao método setSource do PlayToManager. Em seguida, o PlayToManager faz streaming da mídia para o destino de Reproduzir em selecionado pelo usuário.

  • No arquivo Default.js file, adicione o seguinte código após o código da etapa anterior.
    
    var ptm = Windows.Media.PlayTo.PlayToManager.getForCurrentView();
    ptm.addEventListener("sourcerequested", sourceRequestHandler, false);
    
    function sourceRequestHandler(e) {
        try {
            var sr = e.sourceRequest;
            var controller;
    
            try {
                controller = mediaElement.msPlayToSource;
            } catch (ex) {
                id("messageDiv").innerHTML +=
                    "msPlaytoSource failed: " + ex.message + "<br/>";
            }
    
            sr.setSource(controller);
        } catch (ex) {
    
            id("messageDiv").innerHTML +=
                "Exception encountered: " + ex.message + "<br/>";
        }
    }
    
    
    

6. Criar um destino de Reproduzir em (opcional)

Para executar o aplicativo, você precisará de um dispositivo de destino para o qual Reproduzir em possa transmitir mídia. Caso você não possua um receptor Reproduzir em certificado, poderá usar o Windows Media Player como dispositivo de destino. Para isso, seu computador deve estar conectado a uma rede privada.

  1. Inicie o Windows Media Player.
  2. Expanda o menu Transmissão e habilite a opção Permitir controle remoto do meu Player.... Deixe o Windows Media Player aberto, pois ele deve estar em execução para ser disponibilizado como destino de Reproduzir em.
  3. Abra o painel de controle Dispositivos e Impressoras. Clique em Adicionar dispositivos e impressoras. No assistente Adicionar dispositivos e impressoras, na janela Escolha um dispositivo ou impressora para adicionar a este PC, localize o Renderizador de mídia digital para o seu PC. Este é o Windows Media Player de seu PC. Selecione-o e clique em Avançar. Quando o assistente for concluído, você verá a instância do Windows Media Player na lista de Dispositivos Multimídia.

7. Executar o aplicativo

  • No Visual Studio, pressione F5 (depurar) para executar o aplicativo. Você pode selecionar qualquer botão de mídia para reproduzir ou visualizar o primeiro item de mídia em bibliotecas de mídia diferentes. Enquanto uma mídia estiver em reprodução, abra o botão Dispositivos e selecione o destino de Reproduzir em para fazer o streaming da mídia para o dispositivo de destino.

Resumo

Neste guia de início rápido, você adicionou o recurso Reproduzir em a um aplicativo que reproduziu conteúdo de vídeo e áudio e exibiu imagens. O recurso Reproduzir em permite que os usuários transmitam o conteúdo do aplicativo para um receptor Reproduzir em de sua rede.

Tópicos relacionados

Streaming de mídia para dispositivos usando o botão Reproduzir em
Amostras
Amostra Reproduzir em
Amostra Reproduzir em receptor
Amostra do Servidor de mídia

 

 

Mostrar:
© 2014 Microsoft