M3U8 trava após alguns segundos

0

Eu tenho um pequeno clipe experimental abaixo:

link

O problema que enfrento é que, após alguns segundos, o vídeo trava.

Gostaria que alguém me ajudasse

  1. Identifique o problema
  2. Qualquer correção
  3. Qualquer ferramenta para detectar ou corrigir isso
por Divya Bhargov 28.11.2013 / 11:46

2 respostas

2

Eu não tenho problemas. Este m3u8 está apontando para os últimos dois segundos do que foi uma transmissão ao vivo.

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-ALLOW-CACHE:NO
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:54675
#EXTINF:10.0,
http://d3fnzeq4kk32oq.cloudfront.net/802/chunk-20131128_0122_54675.ts
#EXTINF:2.188,
http://d3fnzeq4kk32oq.cloudfront.net/802/chunk-20131128_0123_54676.ts
#EXTINF:10.0,
http://d3fnzeq4kk32oq.cloudfront.net/802/chunk-20131128_0123_54677.ts
#EXT-X-ENDLIST

O HLS divide o vídeo em segmentos. Esta lista de reprodução começa no número de segmento 54675 e termina em 54677. #EXT-X-ENDLIST diz ao player para parar de jogar, pois estamos fora dos segmentos.

Enquanto esse fluxo estava ativo, o m3u8 estaria atualizando.

link

    
por 28.11.2013 / 19:58
2

O arquivo .m3u8 não é um videoclipe ; é um arquivo tipo de manifesto que é usado no streaming de vídeo HTTP. Ele especifica o URL dos segmentos de vídeo codificados em MPEG2-TS , que geralmente têm cerca de 10 minutos de duração.

  1. O servidor envia esse arquivo .m3u8 para o cliente
  2. Em seguida, o cliente extrai o URL para o segmento de vídeo .ts e, em seguida, exibe o segmento de vídeo.

Em condições normais de transmissão ao vivo, um novo arquivo .m3u8 é enviado do servidor para o cliente a cada 10 minutos, para que ele saiba a URL do próximo segmento de vídeo de 10 minutos. Quando não houver mais segmentos ou o evento de transmissão ao vivo tiver terminado, o servidor enviará um arquivo .m3u8 com a diretiva #EXT-X-ENDLIST , que informará ao cliente que não haverá mais segmentos, conforme szatmary explicado acima.

Assim, seu vídeo "trava" como você descreveu, pois não há mais segmentos disponíveis.

Para corrigir :

Não há correção necessária porque o servidor não forneceu mais segmentos.

Recursos :

A melhor ferramenta para detectar isso é um editor como o vi (vim) que permite ver as diretivas no arquivo .m3u8 para que você possa verificar a diretiva #EXT-X-ENDLIST . Ou use apenas cat ou tail para mostrar o conteúdo do arquivo .m3u8 .

O link para o rascunho da IETF no HTTP Live Streaming que o szatmary forneceu é muito informativo e explica todas as diretivas usadas no arquivo .m3u8 .

Desde que a Apple desenvolveu e definiu este protocolo, esta é a melhor fonte de informação: link

Recursos adicionais podem ser encontrados aqui: link

    
por 03.12.2013 / 16:38