Esta página contém um resumo das práticas recomendadas para a API Video Stitcher. Se estiver a começar a usar a API Video Stitcher, consulte o início rápido para streams em direto ou o início rápido para recursos de VOD.
Recursos de VOD de condição
Configure os codificadores de origem e os transcodificadores para emitirem manifestos que suportem pausas publicitárias entre períodos DASH e segmentos HLS. A API Video Stitcher não divide períodos nem segmentos para unir pausas para anúncios. Por isso, as pausas para anúncios só são unidas nos limites dos períodos e dos segmentos.
Para etiquetas de anúncios que devolvem respostas VMAP, cada pausa para anúncios especificada no VMAP deve corresponder a um período ou a um limite de segmento. Caso contrário, as pausas publicitárias são unidas no limite mais próximo.
Evite o desalinhamento das pausas para anúncios para HLS
Para a união de VOD, deve pré-condicionar o manifesto do vídeo de origem para pausas para anúncios de inserção intercalar e configurar a etiqueta de anúncio VMAP (Video Multiple Ad Playlist) para devolver pausas para anúncios de inserção intercalar nas posições de deslocamento pré-condicionadas. A API Video Stitcher usa o resultado da saída transcodificada e insere anúncios o mais próximo possível do local especificado. Use entradas pré-condicionadas para pausas para anúncios de inserção intercalar para tornar o comportamento de união de anúncios consistente e preciso.
Por exemplo, a seguinte playlist de vídeos mostra uma oportunidade de posicionamento de anúncios aos 7 segundos:
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-TARGETDURATION:4
#EXTINF:2.0
../video/180_250000/hls/segment_0.ts
#EXTINF:2.0
../video/180_250000/hls/segment_1.ts
#EXTINF:2.0
../video/180_250000/hls/segment_2.ts
#EXTINF:1.0
../video/180_250000/hls/segment_3.ts
#EXT-X-PLACEMENT-OPPORTUNITY
#EXTINF:2.0
../video/180_250000/hls/segment_4.ts
A seguinte playlist de áudio mostra uma oportunidade de posicionamento de anúncios aos sete segundos:
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-TARGETDURATION:4
#EXTINF:1.99
../audio/1_stereo_128000/hls/segment_0.ts
#EXTINF:1.99
../audio/1_stereo_128000/hls/segment_1.ts
#EXTINF:1.99
../audio/1_stereo_128000/hls/segment_2.ts
#EXTINF:1.03
../audio/1_stereo_128000/hls/segment_3.ts
#EXT-X-PLACEMENT-OPPORTUNITY
#EXTINF:1.99
../audio/1_stereo_128000/hls/segment_4.ts
A seguinte configuração de VMAP especifica que um intervalo de anúncios ocorre aos sete segundos. As playlists de vídeo e áudio contêm pausas para anúncios exatamente aos 7 segundos:
<vmap:VMAP xmlns:vmap="http://www.iab.net/videosuite/vmap" version="1.0">
<vmap:AdBreak timeOffset="00:00:07.000" breakType="linear" breakId="midroll‑1">
<vmap:AdSource id="midroll-1‑ad‑1" allowMultipleAds="false" followRedirects="true">
<vmap:AdTagURI templateType="vast3">
<![CDATA[
https://securepubads.g.doubleclick.net/gampad/ads?...
]]>
</vmap:AdTagURI>
</vmap:AdSource>
</vmap:AdBreak>
</vmap:VMAP>
Defina EXT-X-PROGRAM-DATE-TIME para HLS
Para garantir que as indicações de tempo dos segmentos estão sincronizadas em todas as renderizações HLS, recomendamos que defina EXT-X-PROGRAM-DATE-TIME
para cada renderização HLS.
Isto ajuda os jogadores a fazerem a transição sem problemas quando mudam as renderizações durante a
reprodução.
Use manifestos DASH de vários períodos para recursos em direto e VOD
Configure os codificadores e os transcodificadores de origem para produzirem manifestos DASH com vários períodos em vez de um único período. Por motivos semelhantes ao condicionamento de VOD, a API Video Stitcher não divide os períodos para unir pausas para anúncios. Por isso, um manifesto DASH com vários períodos tem mais oportunidades de unir pausas para anúncios nas durações esperadas.
Encapsule legendas em ISOBMFF
As legendas dos manifestos DASH devem ser encapsuladas no formato de ficheiro multimédia de base ISO (ISOBMFF), como MP4, para compatibilidade com a maioria dos leitores multimédia.
Use taxas de bits constantes
Para garantir uma experiência de reprodução estável para streams em direto, configure o codificador ou o transcodificador de origem para usar taxas de bits constantes quando gerar manifestos de streams. Isto permite que a API Video Stitcher una anúncios de forma mais consistente para corresponder aos perfis de codificação especificados nos manifestos.
Use marcadores de anúncios suportados
Consulte a documentação dos marcadores de anúncios para compreender que marcadores de anúncios são suportados e como os codificadores de origem ou os transcodificadores devem emitir marcadores de anúncios para garantir que as pausas para anúncios são unidas com êxito.
Valide a reprodução de origem
Para garantir uma experiência de reprodução estável para streams em direto e VOD, considere usar leitores de cliente amplamente disponíveis para verificar se as streams de origem são reproduzíveis antes da união com a API Video Stitcher.
HLS:
DASH:
Faça a gestão das chaves de RFC
Se o conteúdo multimédia de origem estiver protegido pela assinatura de URLs, tem de registar as chaves da RFC na API Video Stitcher. Isto permite à API:
- Obtenha os manifestos de vídeo de origem para a união
- Assinar os segmentos de vídeo de origem para que os leitores possam obter os segmentos de vídeo para reprodução
Veja informações sobre como gerir chaves de RFC.
Configure a RFC de multimédia
Se quiser configurar a RFC de multimédia para distribuir os recursos multimédia, siga o início rápido da RFC de multimédia.
Configure rotas separadas com TTLs adequados para os seus manifestos e segmentos de multimédia. Para ver detalhes e exemplos, consulte o guia de encaminhamento avançado do Media CDN.
Se alguma das suas rotas usar origens privadas do Cloud Storage, consulte o artigo Usar contentores privados do Cloud Storage.
Em particular, defina o modo de cache destas rotas como FORCE_CACHE_ALL
.
Para obter instruções sobre a configuração do HTTPS, consulte o artigo Configure certificados SSL (TLS).
Pedidos assinados da RFC de multimédia
Para usar a RFC com pedidos assinados ativados, consulte o artigo Use pedidos assinados e, em seguida, faça o seguinte:
Crie um par de chaves assimétricas. Para obter informações sobre como criar uma chave privada compatível com a API Video Stitcher, consulte o artigo Criar uma chave privada para a RFC do Media CDN .
Registe a chave privada da RFC de multimédia com a API Video Stitcher.
Limite de duração para sessões em direto de longa duração
Um recurso LiveSession não expira, a menos que tenham decorrido 5 minutos sem pedidos de playlists. No entanto, é aplicada uma duração máxima de 180 dias a todos os URIs de reprodução. Para continuar a reprodução após 180 dias, tem de criar uma nova sessão em direto. Para garantir a fiabilidade, deve criar uma nova sessão em direto, pelo menos, a cada 30 dias.