Atributo media
no SegmentTemplate
O atributo media
nas propriedades SegmentTemplate
define o URL em que os dispositivos de reprodução enviam solicitações de segmento. Por padrão, esse URL usa uma variável $Number$
para identificar o segmento específico que é solicitado. Quando um dispositivo de reprodução solicita o segmento, ele substitui a variável pelo identificador numérico do segmento. Para o primeiro segmento na representação, substitua esse identificador pelo valor do startNumber
das propriedades SegmentTemplate
. Cada segmento adicional é incrementado em um.
No entanto, alguns jogadores navegam melhor pelos segmentos quando estes são identificados pelo timestamp indicando quando a reprodução está disponível. Para viabilizar esse caso de uso, o MediaPackage usa a variável $Time$
em vez de $Number$
no URL do atributo media
. Quando um dispositivo de reprodução solicita o segmento, ele substitui a variável pelo horário de início da disponibilidade do segmento. Esse horário de início é identificado no valor t
das propriedades do segmento (S
) no objeto SegmentTimeline
. Para obter um exemplo, consulte Como funciona.
Funcionamento da variável $Time$
Habilite a variável $Time$
por meio da configuração do Segment template format (Formato do modelo de segmento) no endpoint DASH, conforme descrito em Como criar um endpoint DASH. O AWS Elemental MediaPackage executa as seguintes ações:
-
Quando o MediaPackage gera o manifesto DASH, ele usa a variável
$Time$
no valormedia
do objetoSegmentTemplate
, conforme exibido no exemplo a seguir:<SegmentTemplate timescale="30" media="index_video_1_0_
$Time$
.mp4?m=1122792372" initialization="index_video_1_0_init.mp4?m=1122792372" startNumber="2937928"> -
Quando um dispositivo de reprodução solicita segmentos, ele usa o URL definido no atributo
media
e substitui a variável pelo horário de início da disponibilidade do segmento que é solicitado.Importante
O valor que substitui a variável deve ser um valor
t
exato de um segmento. Se a solicitação usar um carimbo de data/hora arbitrário, o MediaPackage não buscará o segmento mais próximo.Veja a seguir o exemplo de um modelo de segmento para uma representação. Ele usa a variável
$Time$
.<SegmentTemplate timescale="30000" media="155_video_1_2_$Time$.mp4?m=1545421124" initialization="155_video_1_2_init.mp4?m=1545421124" startNumber="710"> <SegmentTimeline> <S t="255197799" d="360360" r="8"/> <S t="258441039" d="334334"/> </SegmentTimeline> </SegmentTemplate>
A URL de solicitação para o primeiro segmento é
155_video_1_2_
. Com uma duração de 360.360, a próxima solicitação de segmento será255197799
.mp4155_video_1_2_
, e assim por diante até o nono segmento.255558159
.mp4A solicitação do segmento final é
155_video_1_2_
.258441039
.mp4