Perguntas comuns sobre a Azure Media Services

Este artigo responde a perguntas comumente sobre a Azure Media Services.

Desenvolvimento com SDKs

Onde posso encontrar a API e os SDKs dos Serviços de Comunicação Social?

Devo usar os SDKs do cliente ou escrever diretamente para a API REST?

Não recomendamos que tente envolver a API REST para serviços de mídia diretamente no seu próprio código de biblioteca. Fazê-lo corretamente para fins de produção exigiria que implementasse toda a lógica de Azure Resource Manager e compreendesse como gerir operações de longo prazo em apis Resource Manager. Os SDKs clientes para vários idiomas - por exemplo, .NET, Java, TypeScript, Python e Ruby - tratam isto automaticamente, para reduzir as chances de problemas com a lógica de retrip ou chamadas API falhadas.

Onde posso encontrar amostras dos Serviços de Comunicação Social?

Consulte o artigo Amostras de Media Services v3 para uma listagem de amostras.

Como é que a colocação de paging em grandes conjuntos de resultados (como uma lista de ativos) funciona na API?

Quando estiver a usar a paginação, deve sempre utilizar o próximo link para enumerar a coleção e não depender de um determinado tamanho da página. Para mais detalhes e exemplos, consulte entidades de filtragem, encomenda e paging.

Contas

Como devo proceder para usar uma identidade gerida para encriptar dados para os Serviços de Media?

Para obter informações sobre a utilização do CLI Azure para emparelhar os Serviços de Comunicação social com o Azure Key Vault para encriptar os seus dados, consulte a chave 'Usar uma Key Vault para encriptar dados num tutorial de conta media.

Como devo proceder para usar uma identidade gerida para dar acesso aos Serviços de Comunicação Social a uma conta de armazenamento restrita?

Se pretender que os Serviços de Comunicação social acedam a uma conta de armazenamento quando a conta de armazenamento estiver configurada para bloquear pedidos de endereços IP desconhecidos, siga os passos no armazenamento access com uma identidade gerida pelos Serviços de Comunicação.

Qual é o processo de movimentação de uma conta de Serviços de Comunicação entre subscrições?

Segurança

Quais as funções da Azure que podem realizar ações sobre recursos dos Media Services?

Os Serviços de Comunicação Social suportam o controlo de acesso baseado em funções finas (RBAC)?

Os Serviços de Mídia definem as seguintes funções incorporadas:

  • Administrador de Conta de Serviços de Mídia
  • Operador de Mídia de Media
  • Administrador de Política de Serviços de Mídia
  • Administrador de pontos finais de serviços de mídia
  • Administrador de Eventos Ao Vivo dos Serviços de Media

Estas funções são detalhadas no controlo de acesso baseado em funções Azure (Azure RBAC) para contas de Serviços de Mídia.

Estas funções podem ser usadas para dar acesso a uma conta dos Serviços de Comunicação Social. Para permitir todo o acesso a uma conta de Serviços de Comunicação, pode utilizar-se a função "Proprietário" ou "Contribuinte". Os Serviços de Comunicação Social têm uma API mais antiga na via de depreciação que não suporta o controlo de acesso de grãos finos. Os clientes que necessitem de um controlo de acesso fino não devem selecionar "Ativar as APIs clássicas" ao criar uma conta de Serviços de Comunicação Social utilizando o portal (ou utilizar a versão API 2020-05-01 se estiverem a utilizar a API para criar contas).

Os seguintes Azure Policy incorporados podem ser usados para bloquear a criação de contas que suportam a antiga API: Azure Media Services contas que permitem o acesso ao legado v2 API deve ser bloqueado - Microsoft Azure

Ativos, upload e armazenamento

O que é um ativo dos Serviços de Comunicação Social?

Um ativo dos Serviços de Comunicação Social é um recipiente de conta Azure Storage que é usado para cada ficheiro de vídeo que envia. Tem um identificador único que é usado com transformações e outras operações. Ver Ativos nos Serviços de Media Azure v3.

Como devo proceder para criar um ativo dos Serviços de Comunicação Social?

Sempre que pretende fazer o upload de um ficheiro de mídia e fazer algo com ele, como codificar ou transmitir, cria um ativo para armazenar o ficheiro de mídia e ficheiros associados. Os ativos são automaticamente criados para si se utilizar o portal do Azure. Se não estiver a utilizar o portal para fazer o upload de ficheiros, tem de criar primeiro um ativo.

Encoding

Que formatos de codificação estão disponíveis com os Media Services?

Os formatos comuns de codificação estão disponíveis com o Media Services Standard Encoder. Para obter uma lista de todos os formatos, consulte os formatos Standard Encoder e os codecs.

Como devo proceder para criar um emprego nos Serviços de Comunicação Social?

Pode criar um trabalho no portal do Azure utilizando o Azure CLI, REST ou qualquer um dos SDKs. Consulte as amostras dos Serviços de Comunicação Social para o idioma que prefere.

Posso usar os Serviços de Comunicação para criar uma escada de bitrate gerada automaticamente?

Os Serviços de Comunicação Social suportam codificação consciente do conteúdo?

Sim. Os Media Services podem realizar uma análise de dois passes num vídeo. Em seguida, pode recomendar o melhor conjunto de bitrate adaptativo, resoluções e configurações de codificação com base no conteúdo do vídeo.

Posso utilizar um ficheiro MP4 codificado externamente ou existente nos Serviços de Comunicação Social?

Sim. Para mais detalhes e links para uma aplicação de amostra que mostra como carregar um ficheiro MP4 de bitrate único que está pré-codificado e gerar o manifesto do servidor (.ism) e o manifesto do cliente (.ismc), consulte a resposta à pergunta "Posso transmitir ficheiros MP4 existentes que estão pré-codificados ou codificados noutra solução?" na secção sobre embalagem e entrega. Esta resposta também descreve o impacto do desempenho na origem.

Os Serviços de Comunicação Social podem ser utilizados para codificação de conteúdos de ficheiros de forma muito curta?

Nós não recomendamos isto. Conteúdo muito curto que tem menos de um minuto ou dois de duração não é ideal para streaming de bitrate adaptativo. Se pretender transmitir ficheiros de forma muito curta, recomendamos que pré-codificar o conteúdo num formato que seja facilmente transmitido utilizando um único bitrate.

Como a maioria dos bitrates adaptáveis precisa de tempo para tamponar vários segmentos de vídeo, bem como tempo para analisar a largura de banda da rede antes de "deslocar" para cima ou para baixo na escada de bitrate adaptativa, é muitas vezes inútil fornecer um monte de bitrates para conteúdos com menos de 30 segundos de duração. Quando o leitor trancar o seu algoritmo heurístico na bitrate certa para ser reproduzido com base nas condições da rede, o ficheiro será feito em streaming.

Além disso, alguns jogadores não têm capacidade para tamponar até três segmentos de vídeo. Cada segmento pode ter entre dois a seis segundos de duração. Para vídeos de formato muito curto, é provável que o leitor tampone e comece a reproduzir o primeiro bitrate selecionado do conjunto de bitrates adaptativos. Por esta razão, recomendamos a utilização de um ficheiro MP4 de bitrate único e o envio para um ativo se precisar de geração manifesta HLS ou DASH. Para obter detalhes sobre como fazê-lo, consulte a resposta à pergunta "Posso transmitir ficheiros MP4 existentes que estão pré-codificados ou codificados noutra solução?" na secção sobre embalagem e entrega.

É necessário entregar os ficheiros em formato HLS ou DASH apenas se quiser beneficiar das capacidades desses protocolos. Para streams de bitrate único, eles ainda podem oferecer muito - como procurar mais rápido, suporte de gestão de direitos digitais (DRM) e maior dificuldade de descarregar via URL (mas ainda possível!) do que um download progressivo MP4 em armazenamento de blob. O apoio à legenda para VTT e IMSC1 é outro benefício. Além disso, a capacidade de ligar tardiamente as representações áudio adicionais, ou dobras em línguas alternativas, faz desta uma escolha valiosa para algumas situações.

Como rodar um vídeo, subclip um vídeo, coser vídeos, criar miniaturas e sprites, etc?

Se procura formas de usar um codificador de Serviços de Comunicação para fazer coisas como rodar um vídeo, subclip um vídeo, costurar vídeos, criar miniaturas e sprites, temos uma tonelada de amostras de código na página De Amostras de Código . As línguas de amostra disponíveis incluem Node.JS, Python, .NET e Java.

Onde estão os exemplos da SDK?

Apenas a API REST inclui exemplos, por isso criámos cortes de código para cada SDK, bem como instruções passo a passo para trabalhar com os Media Services no portal do Azure.

Transmissão em direto

O que é um evento ao vivo dos Media Services?

Um evento ao vivo dos Media Services é o processo de ingerir feeds de vídeo ao vivo e transmiti-los através de um protocolo RTMPS ou Smooth Streaming. Para mais informações, consulte eventos ao vivo e saídas ao vivo nos Serviços de Media.

Como devo proceder para criar um evento ao vivo dos Media Services?

O primeiro passo é escolher um codificadora no local. Demos exemplos para criar um evento ao vivo com a Wirecast e a OBS. Se preferir começar com uma visão geral dos eventos ao vivo dos Media Services, consulte os tipos de eventos ao vivo.

Como devo proceder para transcrição ao vivo com um evento ao vivo dos Media Services?

O Azure Media Service entrega vídeo, áudio e texto em vários protocolos. Quando publica o seu live stream utilizando MPEG-DASH ou HLS/CMAF, em seguida, juntamente com vídeo e áudio, o serviço entrega o texto transcrito em TTML compatível com IMSC1.1. Para mais informações, consulte a transcrição ao vivo.

Como devo proceder para monitorizar a saúde do meu evento ao vivo?

Você pode monitorizar eventos ao vivo, subscrevendo Azure Event Grid eventos. Para mais informações, consulte o esquema do evento Grid. Pode:

  • Subscreva os eventos ligados ao nível do stream-level Microsoft.Media.LiveEventEncoderDis e monitorize que não há reconexões durante algum tempo para parar e apagar o seu evento ao vivo.
  • Subscrevaos eventos cardíacos ao nível da pista. Se todas as faixas tiverem uma bitrate de entrada a cair para 0 ou a última marca de tempo já não estiver a aumentar, pode desligar com segurança o evento ao vivo. Os eventos de batimentos cardíacos vêm a cada 20 segundos para cada pista, por isso pode ser um pouco verboso.

Posso reutilizar o mesmo URL de streaming no reinício de um evento ao vivo?

Não, não podes usar facilmente o mesmo URL de streaming se parares e iniciares um evento ao vivo. Cada vez que criar e publicar uma nova saída ao vivo (e ativo), um novo URL de streaming (GUID) será usado para o novo localizador. Desta forma, tem a certeza de que não haverá qualquer conflito de cache no ponto final de streaming e na rede de entrega de conteúdos (CDN). Pode preparar (e saber) os URLs de streaming com antecedência porque pode forçar um GUID específico para o localizador de streaming e, em seguida, decidir o nome manifesto a usar para a saída ao vivo.

Digamos que decida usar o GUID 1a7ed69e-a361-433d-8a56-29c61872744f para a saída ao vivo que vai criar amanhã. Quando o dia chegar, começa-se o evento ao vivo e cria-se uma saída ao vivo. Pode decidir usar a "conferência1" para o manifesto e forçar o GUID para o localizador.

O URL de streaming é previsível e é http://<youraccountname>-<azureregion>.streaming.media.azure.net/1a7ed69e-a361-433d-8a56-29c61872744f/conference1.ism/manifest.

Não é possível reutilizar a mesma saída ao vivo ou o mesmo ativo várias vezes. Pense na combinação da saída ao vivo e do ativo como uma gravação de fita. Depois de a produção ao vivo ter sido gravada para o ativo, não é possível reutilizá-la para outra gravação. Haverá conflito de bolhas ou substituições se fizer isso de novo. A menos que planeie limpar completamente as bolhas na conta de armazenamento e expurgar completamente o CDN, haverá problemas. É provável que ainda haja problemas porque os fragmentos já estão em cache a jusante na CDN ou em caches de dispositivos clientes (por exemplo, a cache do navegador).

Empacotamento e entrega

Fiz o upload, o codificado e publiquei um vídeo. Porque é que o vídeo não é reproduzo quando tento transmiti-lo?

Uma das razões mais comuns é que não tens o ponto final de streaming a partir do qual estás a tentar reproduzir o estado de execução.

O que é um ponto final de streaming dos Media Services?

Nos Serviços de Comunicação Social, um ponto final de streaming representa um serviço dinâmico (just-in-time) de embalagem e origem que pode entregar o seu conteúdo ao vivo e a pedido diretamente a uma aplicação de leitor de clientes, utilizando um dos protocolos comuns de streaming de meios de comunicação (HLS ou DASH). Além disso, o ponto final de streaming fornece encriptação dinâmica (just-in-time) para sistemas de DRM líderes da indústria. Para obter mais informações, consulte os pontos finais de streaming (origem) nos Serviços Azure Media.

O que é um localizador de streaming dos Media Services?

Para disponibilizar vídeos aos clientes para reprodução, cria um localizador de streaming e, em seguida, constrói URLs de streaming. Os localizadores de streaming também são usados para aplicar políticas de streaming que contenham regras para a forma como os ficheiros de mídia são consumidos.

Como devo proceder para criar um localizador de streaming de Serviços de Mídia?

Para construir um URL de streaming, cria-se primeiro um localizador de streaming. Em seguida, concatena o nome de anfitrião do ponto de streaming e o caminho do localizador de streaming.

O que é uma política de streaming?

As políticas de streaming permitem-lhe definir protocolos de streaming e opções de encriptação para os seus localizadores de streaming. O Media Services v3 fornece algumas políticas de streaming predefinidas. Para mais informações, consulte as políticas de streaming.

Como devo proceder para criar uma política de streaming de Serviços de Comunicação Social?

Para obter uma lista de políticas predefinidas que pode usar para começar, consulte as políticas de streaming.

Como devo proceder para transmitir conteúdo em formato HLS para dispositivos Apple?

Certifique-se de que tem (formato=m3u8-cmaf) no final do seu percurso (após a /parte manifesto do URL) para dizer ao servidor de origem de streaming para devolver o conteúdo HLS para consumo em dispositivos nativos Apple iOS. Para mais detalhes, consulte o conteúdo da Entrega.

Posso transmitir ficheiros MP4 existentes que estejam pré-codificados ou codificados noutra solução?

Sim, o servidor de origem dos Media Services (ponto final de streaming) suporta embalagens dinâmicas de ficheiros MP4 para formato de streaming HLS ou DASH. No entanto, o conteúdo deve ser codificado em formato DED-GOP fechado, com GOPs curtos na duração de dois a seis segundos. Recomendamos as seguintes definições: GOPs de dois segundos, quadro-chave distância máxima e mínima de dois segundos, codificação constante de bitrate (modo CBR). A maioria dos conteúdos neste formato codificados através de H.264 ou código de vídeo HEVC, juntamente com o formato áudio AAC, podem ser suportados. Podem também ser suportados formatos áudio adicionais pré-codificados, como o Dolby DD+.

A chave para fazê-lo funcionar é criar um ativo, carregar os ativos pré-codificados no contentor do ativo utilizando Armazenamento de Blobs do Azure SDKs clientes e, em seguida, gerar os ficheiros manifestos do servidor (.ism) e do cliente. Para mais informações, consulte o projeto de amostra .NET nos ficheiros MP4 existentes em Stream.

Tenha em mente que existem implicações de desempenho quando utiliza esta abordagem, porque o codificadora incorporado nos Serviços de Mídia também gera índices binários (ficheiros.mpi) que melhoram o tempo de acesso aos ficheiros MP4. Sem estes ficheiros, o servidor pode utilizar um pouco mais CPU em carga elevada. Para obter mais informações, consulte streaming de um ficheiro MP4 de bitrate único existente com HLS ou Dash.

Quando estiver a escalonar com esta abordagem, deve monitorizar a carga de CPU do ponto de streaming. Se está a planear ir para a produção com uma grande biblioteca de ficheiros MP4 pré-codificados fora dos Serviços de Media, arquive um bilhete de apoio para que a sua arquitetura seja revista e pergunte sobre formas de melhorar o desempenho do servidor de origem do conteúdo MP4 pré-codificado.

Os localizadores de streaming V2 continuarão a funcionar depois de fevereiro de 2024?

Os localizadores de streaming criados com v2 API continuarão a funcionar após o nosso V2 API ser desligado. Uma vez criados os dados do Localizador de Streaming na base de dados de backend dos Media Services, não existe dependência da API v2 REST para streaming. Não removeremos registos específicos v2 da base de dados quando a V2 for desligada em fevereiro de 2024.

Existem algumas propriedades de ativos e localizadores criados com v2 que não podem ser acedidos ou atualizados usando a nova V3 API. Por exemplo, o V2 expõe uma API de Ficheiros de Ativos que não tem uma característica equivalente na API v3. Muitas vezes isto não é um problema para a maioria dos nossos clientes, uma vez que não é uma funcionalidade muito utilizada e ainda pode transmitir localizadores antigos e eliminá-los quando já não são necessários.

Após a migração, deve evitar fazer chamadas para a API v2 para modificar localizadores ou ativos de streaming.

Proteção de conteúdo

Como devo proceder para entregar o meu conteúdo de mídia com encriptação dinâmica?

A encriptação dinâmica está a proteger os seus meios de comunicação a partir do momento em que deixa o computador durante todo o processo através do armazenamento, processamento e entrega. Com os Media Services, pode fornecer o seu conteúdo ao vivo e a pedido encriptado dinamicamente com o Advanced Encryption Standard (AES-128) ou qualquer um dos três principais sistemas DEDS: Microsoft PlayReady, Google Widevine e Apple FairPlay. Para obter mais informações, consulte Protect your content with Media Services dynamic encryption.

Devo utilizar a encriptação de chave clara AES-128 ou um sistema DRM?

Os clientes muitas vezes perguntam-se se devem usar encriptação AES ou um sistema DRM. A principal diferença entre os dois sistemas é que, com a encriptação AES, a chave de conteúdo é transmitida ao cliente através de TLS. A chave é encriptada em trânsito sem qualquer encriptação adicional ("a claro"). Como resultado, a chave que é usada para desencriptar o conteúdo é acessível ao leitor cliente e pode ser visualizada num traço de rede no cliente em texto simples. A encriptação clara da chave AES-128 é adequada para o uso de casos em que o espectador é uma parte de confiança (por exemplo, encriptar vídeos corporativos distribuídos dentro de uma empresa para serem visualizados por funcionários).

Sistemas DRM como PlayReady, Widevine e FairPlay fornecem um nível adicional de encriptação na chave que é usada para desencriptar o conteúdo, em comparação com uma chave clara AES-128. A chave de conteúdo é encriptada para uma chave protegida pelo tempo de execução drm, além de qualquer encriptação de nível de transporte que o TLS fornece. A desencriptação é tratada num ambiente seguro a nível do sistema operativo, onde é mais difícil para um utilizador malicioso atacar. Recomendamos que a DRM utilize casos em que o espectador possa não ser uma pessoa de confiança e que necessite do mais alto nível de segurança.

Como devo proceder para mostrar um vídeo apenas aos utilizadores que tenham uma permissão específica, sem utilizar Azure AD?

Não tem de utilizar nenhum fornecedor específico de fichas, como o Azure Ative Directory (Azure AD). Pode criar o seu próprio fornecedor JWT (o chamado Serviço DeKen Seguro, ou STS) utilizando encriptação de chave assimétrica. No seu STS personalizado, pode adicionar reclamações com base na sua lógica de negócio.

Certifique-se de que o emitente, o público e as reivindicações coincidem exatamente entre o que está no JWT e o ContentKeyPolicyRestriction valor usado em ContentKeyPolicy.

Para obter mais informações, consulte Protect your content utilizando encriptação dinâmica dos Media Services.

Como e onde consigo um token JWT antes de usá-lo para pedir uma licença ou chave?

Para a produção, você precisa ter Secure Token Service (isto é, um serviço web), que emite um token JWT após um pedido HTTPS. Para o teste, pode utilizar o código indicado no GetTokenAsync método definido no programa.cs.

Depois de um utilizador ser autenticado, o leitor faz um pedido ao STS para tal token e atribui-o como o valor do token. Pode utilizar a API do Azure Media Player.

Para um exemplo de funcionamento de STS com uma chave simétrica ou uma chave assimétrica, consulte a ferramenta JWT. Para um exemplo de um jogador baseado no Azure Media Player que utiliza um token JWT, consulte a ferramenta de teste de mídia Azure. (Expandir o link player_settings para ver a entrada simbólica.)

Como devo proceder para autorizar pedidos para transmitir vídeos com encriptação AES?

A abordagem correta é utilizar o Serviço Secure Token. Em STS, dependendo do perfil do utilizador, adicione diferentes reclamações (tais como "Utilizador Premium", "Utilizador Básico" ou "Utilizador de Teste Gratuito"). Com diferentes reivindicações num JWT, o utilizador pode ver diferentes conteúdos. Para diferentes conteúdos ou ativos, ContentKeyPolicyRestriction terá o valor correspondente RequiredClaims .

Utilize APIs de Serviços de Mídia Azure para configurar a entrega de licença/chave e encriptar os seus ativos (como mostrado nesta amostra).

Porque é que só o áudio reproduz e não o vídeo quando estou a usar o modo offline FairPlay?

Este comportamento parece ser por design da aplicação da amostra. Quando existe uma faixa de áudio alternativa (o que é o caso do HLS) durante o modo offline, tanto o iOS 10 como o iOS 11 estão por defeito na faixa de áudio alternativa. Para compensar este comportamento no modo offline FPS, retire a faixa de áudio alternativa do fluxo. Para isso nos Serviços de Media, adicione o filtro dinâmico manifesto apenas =falso. Por outras palavras, um URL HLS termina com .ism/manifest (formato=m3u8-aapl,audio-only=falso).

Porque é que o FairPlay reproduz áudio offline apenas sem modo de vídeo depois de eu adicionar áudio-only=falso?

Dependendo do design da chave de cache para a rede de entrega de conteúdos, o conteúdo pode ser em cache. Purgue a cache.

O que é a estrutura de ficheiros descarregado/offline em dispositivos iOS?

A estrutura de ficheiros descarregada num dispositivo iOS parece a seguinte imagem. As _keys lojas de pastas descarregaram licenças de FPS, com um ficheiro armazenado para cada anfitrião do serviço de licença. A pasta .movpkg armazena conteúdo sonoro e de vídeo.

A primeira pasta com um nome que termina com um traço seguido de um número contém conteúdo de vídeo. O valor numérico é o pico da largura de banda das representações em vídeo. A segunda pasta com um nome que termina com um traço seguido de 0 contém conteúdo sonoro. A terceira pasta chamada Data contém a lista principal do conteúdo FPS. Finalmente, boot.xml fornece uma descrição completa do conteúdo da pasta .movpkg .

Screenshot que mostra a estrutura de ficheiros offline para a aplicação de amostras fairPlay iOS.

Aqui está uma amostra boot.xml ficheiro:

<?xml version="1.0" encoding="UTF-8"?>
<HLSMoviePackage xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns="http://apple.com/IMG/Schemas/HLSMoviePackage" xsi:schemaLocation="http://apple.com/IMG/Schemas/HLSMoviePackage /System/Library/Schemas/HLSMoviePackage.xsd">
  <Version>1.0</Version>
  <HLSMoviePackageType>PersistedStore</HLSMoviePackageType>
  <Streams>
    <Stream ID="1-4DTFY3A3VDRCNZ53YZ3RJ2NPG2AJHNBD-0" Path="1-4DTFY3A3VDRCNZ53YZ3RJ2NPG2AJHNBD-0" NetworkURL="https://example.streaming.mediaservices.windows.net/e7c76dbb-8e38-44b3-be8c-5c78890c4bb4/MicrosoftElite01.ism/QualityLevels(127000)/Manifest(aac_eng_2_127,format=m3u8-aapl)">
      <Complete>YES</Complete>
    </Stream>
    <Stream ID="0-HC6H5GWC5IU62P4VHE7NWNGO2SZGPKUJ-310656" Path="0-HC6H5GWC5IU62P4VHE7NWNGO2SZGPKUJ-310656" NetworkURL="https://example.streaming.mediaservices.windows.net/e7c76dbb-8e38-44b3-be8c-5c78890c4bb4/MicrosoftElite01.ism/QualityLevels(161000)/Manifest(video,format=m3u8-aapl)">
      <Complete>YES</Complete>
    </Stream>
  </Streams>
  <MasterPlaylist>
    <NetworkURL>https://example.streaming.mediaservices.windows.net/e7c76dbb-8e38-44b3-be8c-5c78890c4bb4/MicrosoftElite01.ism/manifest(format=m3u8-aapl,audio-only=false)</NetworkURL>
  </MasterPlaylist>
  <DataItems Directory="Data">
    <DataItem>
      <ID>CB50F631-8227-477A-BCEC-365BBF12BCC0</ID>
      <Category>Playlist</Category>
      <Name>master.m3u8</Name>
      <DataPath>Playlist-master.m3u8-CB50F631-8227-477A-BCEC-365BBF12BCC0.data</DataPath>
      <Role>Master</Role>
    </DataItem>
  </DataItems>
</HLSMoviePackage>

Como posso entregar licenças persistentes (ativadas offline) para alguns clientes/utilizadores e licenças não persistentes (offline desativadas) para outros? Tenho de duplicar o conteúdo e usar chaves de conteúdo separadas?

Como o Media Services v3 permite que um ativo tenha múltiplas StreamingLocator instâncias, pode ter:

  • Um ContentKeyPolicy caso com license_type = "persistent", ContentKeyPolicyRestriction com uma reclamação "persistent"sobre , e o seu StreamingLocator exemplo.
  • Outro ContentKeyPolicy caso com license_type="nonpersistent", ContentKeyPolicyRestriction com uma reclamação sobre "nonpersistent", e o seu StreamingLocator exemplo.
  • Dois StreamingLocator casos que têm valores diferentes ContentKey .

Dependendo da lógica comercial da STS personalizada, são emitidas diferentes reclamações no token JWT. Com o token, apenas a licença correspondente pode ser obtida e apenas o URL correspondente pode ser reproduzido.

Qual é o mapeamento entre os níveis de segurança da Widevine e dos Media Services DRM?

A visão geral da arquitetura drm larga da Google define três níveis de segurança. No entanto, a documentação do Azure Media Services sobre o modelo de licença Widevine descreve cinco níveis de segurança (requisitos de robustez do cliente para reprodução).

O Google Widevine define ambos os conjuntos de níveis de segurança. A diferença está no nível de utilização: arquitetura ou API. Os cinco níveis de segurança são usados na API widevine. O serviço de licenças Azure Media Widevine deserializa o content_key_specs objeto, que contém security_level, e passa-o para o serviço de entrega global Widevine. A tabela a seguir mostra o mapeamento entre os dois conjuntos de níveis de segurança.

Níveis de segurança definidos na arquitetura Widevine Níveis de segurança utilizados na API de Widevine
Nível de Segurança 1: Todo o processamento de conteúdos, criptografia e controlo são realizados dentro do Ambiente de Execução Fidedigna (TEE). Em alguns modelos de implementação, o processamento de segurança pode ser realizado em diferentes chips. security_level=5: A criptografia, a descodão e todo o manuseamento dos meios de comunicação (comprimidos e não comprimidos) devem ser manuseados dentro de um TEE apoiado por hardware.

security_level=4: A criptografia e a descodição dos conteúdos devem ser efetuadas dentro de um TEE apoiado por hardware.
Nível de Segurança 2: A criptografia (mas não o processamento de vídeo) é realizada dentro do TEE. Os amortecedores desencriptados são devolvidos ao domínio da aplicação e processados através de hardware ou software de vídeo separados. No nível 2, no entanto, a informação criptográfica ainda é processada apenas dentro do TEE. security_level=3: O material chave e as operações criptográficas devem ser efetuadas dentro de um TEE apoiado por hardware.
Nível de Segurança 3: Não há TEE no dispositivo. Podem ser tomadas medidas adequadas para proteger as informações criptográficas e o conteúdo desencriptado no sistema operativo do anfitrião. Uma implementação de Nível 3 também pode incluir um motor criptográfico de hardware, mas que aumenta apenas o desempenho, não a segurança. security_level=2: São necessárias criptografia de software e um descodificador obfuscado.

security_level=1: É necessária criptografia de caixa branca baseada em software.

Monitorização

Como devo proceder para monitorizar os meus recursos dos Serviços de Comunicação Social?

Utilize o Azure Monitor para acompanhar o que se passa com os seus recursos dos Media Services. Para mais informações, consulte monitor Media Services. Como guiar são listados no final da página.

Como devo proceder para monitorizar o meu evento ao vivo dos Media Services?

Jogadores

Que jogadores de vídeo posso usar com os Media Services?

Os Serviços de Comunicação Social trabalham com muitos jogadores. Consulte a lista de jogadores de media compatíveis ou experimente as amostras de jogadores da 3ª parte.

Elevada disponibilidade

Os Serviços de Comunicação Social suportam uma elevada disponibilidade?

Para obter informações sobre serviços de mídia e alta disponibilidade, consulte Alta disponibilidade com Serviços de Mídia e Vídeo a Pedido (VOD).

Migrando de v2

Como devo proceder para migram dos Serviços de Comunicação v2 para os Serviços de Comunicação Social v3?

Criámos um guia abrangente para a migração de V2 para V3. Estamos interessados em conhecer a sua experiência e necessidades de migração, por isso sinta-se à vontade para fornecer feedback através da edição do GitHub ou bilhete de apoio.

Resolução de problemas

Como devo proceder para descobrir o que significa este código de erro?

Documentámos códigos de erro nas seguintes referências: Códigos de erro de ponto final de streaming, códigos de erro de evento ao vivo e códigos de erro de trabalho. Se não encontrar respostas, por favor, crie um bilhete de apoio.

Como devo proceder para redefinir as minhas credenciais de conta?

Estimativas de faturação e custos

Quanto custa o Media Services?

Quotas e limites

Que quotas e limites existem para os Serviços de Comunicação Social?

Conformidade e dados do cliente

Os Serviços de Comunicação Social armazenam quaisquer dados de clientes fora da região de serviço?

Os clientes anexam as suas próprias contas de armazenamento às suas contas Azure Media Services. Todos os dados do ativo são armazenados nestas contas de armazenamento associadas, e o cliente controla o tipo de localização e replicação deste armazenamento.

Os dados adicionais associados a uma conta de Serviços de Comunicação (incluindo chaves de encriptação de conteúdo, chaves de verificação de fichas, URLs de JobInputHttp e outros metadados de entidade) são armazenados no armazenamento da Microsoft na região selecionada para a conta de Media Services.

Devido aos requisitos de residência de dados no Brasil Sul e Sudeste Asiático, os dados adicionais da conta são armazenados de forma redundante e estão contidos numa única região. Para o Sudeste Asiático, todos os dados adicionais da conta são armazenados em Singapura. Para o Brasil Sul, os dados são armazenados no Brasil. Em regiões que não o Brasil Sul e Sudeste Asiático, dados adicionais de conta também podem ser armazenados em armazenamento da Microsoft na região emparelhada.

Os Serviços de Comunicação Social fornecem alta disponibilidade ou replicação de dados?

O Azure Media Services é um serviço regional e não fornece alta disponibilidade ou replicação de dados. Incentivamos os clientes que precisam destas funcionalidades para construir uma solução utilizando contas de Media Services em várias regiões. Uma amostra que mostra como construir uma solução para a alta disponibilidade com o vídeo dos Media Services a pedido está disponível como guia.